Re: Is this a bug in libc6?
Hi,
>>"Kai" == Kai Henningsen <kaih@khms.westfalen.de> writes:
Kai> Bullshit.
Bullshit? And this is supposed to be a technical discussion?
Can you not engage in civilized discourse without resorting to
invective? Do you realize that is generally the case with a weak
argument?
Kai> The documentation requirement is for implementation-defined
Kai> behaviour. For undefined behaviour, "the standard imposes no
Kai> requirements". No requirements are no requirements. There is no
Kai> requirement that such an action is documented.
Have you actually read the standard? I even quoted parts of
IEEE 1.6 for you. I shall do so again.
----------------------------------------------------------------------
1.6 Definitions of terms
o Undefined Behaviour -- behaviour, upon the use of a nonportable or
erroneous program construct, of erroneous data, or of inderminately
valued objects, for which the standard imposes no
requirements. Permissible undefined behaviour ranges from ignoring
the situation completely with unpredictable results, to behaving
during translation or program execution in a documented manner
charecteristic of the environment (with or without the issuance of a
diagnostic message), to terminating a translation or execution (with
the issuance of a diagnostic message).
If a "shall" or "shall not" requirements that appears outside
of a constraint is violated, the behaviour is undefined. Undefined
behaviour is otherwise indicated in this standard by the words
"undefined behaviour" or by the omission of any explicit definition
of behavior. There is no difference in emphasis among these three;
they all describe "behaviour that is undefined."
o Unspecified behaviour -- behaviour, for a correct program construct
and correct data, for which the standard explicitly imposes no
requirements.
______________________________________________________________________
See where it says "Permissible undefined behaviour"? Ignoring
the second fclose completely (which may have unpredictable results),
"behaving during translation or program execution in a documented
manner charecteristic of the environment", or terminating (in which
case an error message is required: anything else is a violation of
the standard. Period.
All under "Permissible undefined behaviour".
And yet you use invective and state things in direct
contradiction of the standard.
Kai> Undefined is *un*defined.
Oh, despite what the standard says, if you say it is
undefined, it is undefined. Wonderful.
Kai> The only interesting question here is if fclose(fp); fclose(fp);
Kai> is indeed undefined. (Note that fp=fopen("not.there", "r");
Kai> fanything(fp); is undefined simply because fp is NULL.) I suspect
Kai> it is, because after the first fclose(fp); it has "indeterminate
Kai> value".
Quite so.
manoj
--
"If the conjecture `You would rather I had not disturbed you by
sending you this.' is correct, you may add it to the list of
uncomfortable truths." Edsgar Dijkstra
Manoj Srivastava <srivasta@acm.org> <http://www.datasync.com/%7Esrivasta/>
Key C7261095 fingerprint = CB D9 F4 12 68 07 E4 05 CC 2D 27 12 1D F5 E8 6E
--
To UNSUBSCRIBE, email to debian-devel-request@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmaster@lists.debian.org
Reply to: