On Oct 26, 2005, at 9:28 AM, Joe Buck wrote:
This is a case of unspecified behavior.
?
That's what we have standards for: so that compilers work the same way
for standard-conformant code.
But in this case, we are talking about the behavior when the
compiler is
given code with *unspecified* behavior. I believe that people
should not
be writing such code.
? No. Please read the C++ standard again:
1.4.13 unspecified behavior
[defns.unspecified]
behavior, for a well-formed program construct and correct data,
that
depends on the implementation. The implementation is not
required to
document which behavior occurs. [Note: usually, the range of
possible
behaviors is delineated by the Standard. ]
1 Physical source file characters are mapped, in an
implementation-
defined manner
Now, before you claim that people should not write code that relies
upon implementation defined behavior, realize that the sentence above
makes all possible programs reliant upon implementation defined
behavior.