osd@hou2d.UUCP (Orlando Sotomayor-Diaz) (05/15/86)
From: Orlando Sotomayor-Diaz (The Moderator) <cbosgd!std-c> mod.std.c Digest Thu, 15 May 86 Volume 16 : Issue 19 Today's Topics: MORE C standard differences Apr85-Feb86, part 9 of 9 ---------------------------------------------------------------------- Date: From: ihnp4!utzoo!lsuc!msb Subject: MORE C standard differences Apr85-Feb86, part 9 of 9 To: utzoo!ihnp4!hou2d!osd # {E.5.2 --> E.6.2} Undefined behavior N--> * An attempt is made to modify a string literal (#C.1.1.4). # {E.5.2 --> E.6.2} Undefined behavior <--O * The value of a constant is not representable (#C.1.3). # {E.5.2 --> E.6.2} Undefined behavior N--> * For a function call with no function prototype declarator in N--> scope, the number of arguments or their types after the default N--> argument conversions do not match those of the formal parame- N--> ters (#C.3.2.2). N--> * A function that accepts a variable number of arguments is N--> called, but no prototype declarator wth the ellipsis notation N--> is in scope (#C.3.2.2). ... N--> * A function that accepts a variable number of arguments is de- N--> fined without the ellipsis notation (#C.7.1). N--> * A function prototype is in scope when a function is defined, N--> but a semantically equivalent prototype is not in scope every- N--> where the function is called (#C.7.1). # {E.5.2 --> E.6.2} Undefined behavior N--> * The result of the preprocessing concatenation operator ## is N--> not a valid token (#C.8.3). # {E.5.2 --> E.6.2} Undefined behavior * * A {--> library} function argument has an invalid value, unless * the behavior is specified explicitly (#{D.1.1 --> D.1.3}). # {E.5.2 --> E.6.2} Undefined behavior * * The value of {a register variable --> an object of automatic storage class that does not have volatile type} has been changed bwteen a setjmp and longjmp call (#D.6.2.1). # {E.5.2 --> E.6.2} Undefined behavior N--> * The type of the actual next argument in a variable argument N--> list disagrees with the type specified by the va_arg macro N--> (#D.8.1.2). N--> * A return occurs from a function with a variable argument list N--> initialized by the va_start macro before the va_end function is N--> invoked (#D.8.1.3). # {E.5.2 --> E.6.2} Undefined behavior N--> * A single conversion by the fprintf function produces more than N--> 509 characters of output (#D.9.6.1). ... N--> * A single conversion by the fscanf function consumes more than N--> 509 characters of input (#D.9.6.2). # {E.5.2 --> E.6.2} Undefined behavior N--> * The ungetc function is called twice on the same stream without N--> an intervening read, fflush, fseek, or rewind operation on that N--> stream (#D.9.7.11). # {E.5.2 --> E.6.2} Undefined behavior <--O * When called by the exit function, a function registered by the <--O onexit function fails to return the value returned by the onex- <--O it function at the time of registration (#D.10.4.2). # {E.5.2 --> E.6.2} Undefined behavior * * The result of {the abs --> an integer arithmetic} function {--> * (abs, idiv, or ldiv)} cannot be represented (#{D.5.6.1 --> D.10.6}). # {E.5.3.3 --> E.6.3.3} Characters N--> * The {correspondence --> mapping} of characters in the source N--> character set {--> in character constants} to characters in the N--> execution character set {--> (#C.1.3.4)}. # {E.5.3.5 --> E.6.3.5} Floating point. <--O * The direction of truncation when a negative floating-point <--O number is converted to an integer (#C.2.1.3). # {E.5.3.5 --> E.6.3.5} Floating point. <--O * Whether the presence in an expression of a float operand but no <--O double operand requires the operands to be converted to double. # {E.5.3.11 --> E.6.3.11} Preprocessing {control lines --> direc- tives} N--> * Whether white space between tokens in a macro argument used to N--> create a string literal is retained in the string or replaced N--> by a single space character (#C.8.3). # {E.5.3.12 --> E.6.3.12} Library functions N--> * The null pointer constant to which the macro NULL expands N--> (#D.1.1). # {E.5.3.12 --> E.6.3.12} Library functions N--> * The effect if the program redefines a reserved external iden- N--> tifier (#D.1.2). # {E.5.3.12 --> E.6.3.12} Library functions * * The sets of characters tested for by the {--> isalnum, isal- * pha,} iscntrl, {--> islower}, isprint, {--> and isupper} func- tion (#D.3.1). # {E.5.3.12 --> E.6.3.12} Library functions N--> * The values returned by the mathematics functions on domain er- N--> rors (#D.5). # {E.5.3.12 --> E.6.3.12} Library functions N--> * Whether a text line containing only a single space character N--> plus a terminating new-line character is converted on input to N--> a line consisting only of the terminating new-line character N--> (#D.9.2). N--> * The characteristics of file buffering (#D.9.3). N--> * Whether a zero-length file actually exists (#D.9.3). # {E.5.3.12 --> E.6.3.12} Library functions N--> * The contents of the error message strings returned by the N--> strerror function (#D.11.6.2). # {E.5.3.12 --> E.6.3.12} Library functions <--O * The era for the time function (#D.12.3). # {E.5.4 --> E.6.4} Common extensions N--> The inclusion of any extension that may cause a strictly conform- N--> ing program to become invalid renders an implementation noncon- N--> forming. Examples of such extensions are new keywords, prede- N--> fined macro names, or library functions with names that do not N--> begin with an underscore. # {--> E.6.4.1 Environment arguments} N--> In a hosted environment, the main function receives a third argu- N--> ment, char *envp[], that points to a null-terminated array of N--> pointers to char, each of which points to a string that provides N--> information about the environment for this execution of the pro- N--> cess (#B.1.2.2). Remark: With this inserted subsection, the other subsections of this section are renumbered. # {E.5.4.4 --> E.6.4.5} Writable string literals <--O String literals are arrays of char, not arrays of const char <--O (#C.1.4). N--> String literals are modifiable. Identical string literals shall N--> be distinct (#C.1.4). ------------------------------ End of mod.std.c Digest - Thu, 15 May 86 13:32:54 EDT ****************************** USENET -> posting only through cbosgd!std-c. ARPA -> ... through cbosgd!std-c@BERKELEY.ARPA (NOT to INFO-C) In all cases, you may also reply to the author(s) above.