Xref: utzoo comp.lang.c:11405 comp.sys.ibm.pc:17313 Path: utzoo!attcan!uunet!lll-winken!lll-lcc!ames!ucsd!rutgers!iuvax!bobmon From: bobmon@iuvax.cs.indiana.edu (RAMontante) Newsgroups: comp.lang.c,comp.sys.ibm.pc Subject: Re: Bug list for Microsoft C Message-ID: <10807@iuvax.cs.indiana.edu> Date: 19 Jul 88 15:44:06 GMT References: <4516@pasteur.Berkeley.Edu> <372@scolex> Reply-To: bobmon@iuvax.UUCP (RAMontante) Organization: Computer Science Dept., Indiana University Lines: 30 seanf@sco.COM (Sean Fagan) writes: +iverson@cory.Berkeley.EDU.UUCP (Tim Iverson) writes: +>int i=1, j=33; +> +>main() { +> printf("%x\n", 1<<33); +> printf("%x\n", 1>>33); +> printf("%x\n", i< printf("%x\n", i>>j); +>} +>What results do you get? (This might even be interesting on non 86 machines; +>oh boy, I just checked a non 86, and it failed too.) + +Under Xenix '386, I get: 2, 0, 2, 0; using the '286 compiler, I get 0, 0, 2, +0. So, anybody, what does ANSI say (in plain English)? I tried reading the +draft to see what it should be, and I couldn't make head nor tail of it... +Somebody said, earlier, that both K&R and ANSI say the results are +implementation defined, but, from what I could stand of the draft, it didn't +seem to say that. And Turbo C v1.5 gave me 0 0 0 0 Something of a letdown, that. So what ARE the right numbers, and what is the right answer? -- -- bob,mon (bobmon@iuvax.cs.indiana.edu) -- "In this position, the skier is flying in a complete stall..."