C Defect Report Support in Clang

C defect report implementation status

This page tracks which C defect reports are implemented within Clang.

The implementation status for defect reports against the C Standard are currently under investigation. Any defect report whose status in Clang is currently unknown will be marked in purple.

The LLVM bug tracker uses the "c", "c99", "c11", "c17", and "c23" labels to track known bugs with Clang's language conformance.

Number Status Issue title Available in Clang?
1 C89 Do functions return values by copying? Yes
2 NAD Subclause Semantics of # Unknown
3 NAD Subclause 6.1.8: Preprocessing numbers Unknown
4 NAD Are multiple definitions of unused identifiers with external linkage permitted? Yes
5 NAD May a conforming implementation define and recognize a pragma which would change the semantics of the language? Yes
6 C89 It is unclear how the strtoul function behaves when presented with a subject sequence that begins with a minus sign N/A
7 NAD Are declarations of the form struct-or-union identifier ; permitted after the identifier tag has already been declared? Yes
8 NAD Can a conforming C compiler to perform dead-store elimination? Yes
9 C89 Use of typedef names in parameter declarations No
10 NAD Is a typedef to an incomplete type legal? Yes
11 C89 Merging of declarations for linked identifier Yes
12 NAD Is it valid to take the address of a dereferenced void pointer? Yes
13 C89 Compatible and composite function types Yes
14 C89 Issues with setjmp and fscanf descriptions N/A
15 NAD What is the promoted type of a plain int bit-field? Yes
16 C89 What does static storage duration do when zero for the type is not all zero bits? Unknown
17 C89 39 unrelated questions about C89 Unknown
18 NAD How does fscanf behave in the presence of multibyte characters? N/A
19 NAD Definition of the term "printing character" and isgraph() N/A
20 NAD Is a compiler which allows the Relaxed Ref/Def linkage model to be considered a conforming compiler? Yes
21 C89 What is the result of: printf("%#.4o", 345);? N/A
22 C89 What is the result of: strtod("100ergs", &ptr);? N/A
23 NAD what is the result of strtod("0.0e99999", &ptr);? N/A
24 NAD In subclause The strtod function: What does '"C" locale' mean? N/A
25 NAD What is meant by 'representable floating-point value?' Yes
26 NAD Can a strictly conforming program contain a string literal with '$' or '@'? Yes
27 C89 Can there be characters in the character set that are not in the required source character set? Yes
28 NAD Do object access rules apply to dynamically allocated objects? Unknown
29 NAD Do two types have to have the same tag to be compatible? No
30 NAD Can 'sin(DBL_MAX)' result in 'errno' being set to 'EDOM'? N/A
31 NAD Can constant expressions overflow? Yes
32 NAD Must implementations diagnose extensions to the constant evaluation rules? No
33 NAD Conformance questions around 'shall' violations outside of constraints sections Yes
34 C89 External declarations in different scopes Yes
35 NAD Questions about definition of functions without a prototype
Partial Tags declared directly within an identifier list are incorrectly scoped to the prototype rather than to the function body.
36 NAD May floating-point constants be represented with more precision than implied by its type? Yes
37 NAD Questions about multibyte characters and Unicode Yes
38 NAD Questions about argument substitution during macro expansion Yes
39 NAD Questions about the "C" locale Yes
40 NAD 9 unrelated questions about C89
Partial Question 6 has full support, the rest of the questions are currently unknown.
41 NAD Do characters defined in 5.2.1 impact 7.3.1? N/A
42 NAD On the behavior of library functions and overlapping objects N/A
43 C89 On the definition of the NULL macro Yes
44 NAD On the result of the offsetof macro Yes
45 NAD Is the behavior of freopen defined when the file is invalid? N/A
46 NAD Use of typedef names in parameter declarations Yes
47 NAD Questions about declaration conformance Yes
48 NAD Clarifications on the abort() function N/A
49 C89 Can strxfrm() output more characters than were input? N/A
50 NAD Do wide string literals implicitly include <stddef.h>? Yes
51 NAD Question on pointer arithmetic Yes
52 C89 Editorial corrections Yes
53 C89 Accessing a pointer to a function with a prototype through a pointer to pointer to function without a prototype Yes
54 C89 Can the string handling functions have a length of 0? N/A
55 C89 Signal handler macros should have distinct values N/A
56 NAD Floating-point representation precision requirements Yes
57 NAD Is there an integral type for every pointer? Yes
58 NAD Is there a limit on the number of digits processed by scanf and strtdo? N/A
59 NAD Do types have to be completed? Yes
60 C89 Array initialization from a string literal Yes
61 NAD Whitespace in scanf format string N/A
62 NAD Can the rename function be defined to fail? N/A
63 Dup Floating-point representation precision requirements Duplicate of 56
64 NAD Null pointer constants Yes
65 C89 Questions on locales N/A
66 NAD Another question on locales N/A
67 NAD Integer and integral type confusion Yes
68 NAD 'char' and signed vs unsigned integer types Yes
69 NAD Questions about the representation of integer types Yes
70 NAD Interchangeability of function arguments Yes
71 C89 Enumerated types Yes
72 NAD Definition of object and pointer arithmetic Unknown
73 NAD Definition of object and array access Unknown
74 NAD Alignment and structure padding Unknown
75 NAD Alignment of allocated memory N/A
76 Open Pointers to the end of arrays Not resolved
77 NAD Stability of addresses Yes
78 NAD Uniqueness of addresses Unknown
79 NAD Constancy of system library function addresses N/A
80 C89 Merging of string constants Yes
81 NAD Left shift operator Yes
82 C89 Multiple varargs Unknown
83 C89 Use of library functions N/A
84 NAD Incomplete type in function declaration Yes
85 C89 Returning from main Yes
86 NAD Object-like macros in system headers Yes
87 NAD Order of evaluation Yes
88 NAD Compatibility of incomplete types Yes
89 C89 Multiple definitions of macros Yes
90 NAD Multibyte characters in formats N/A
91 NAD Multibyte encodings Yes
92 Dup Partial initialization of strings Duplicate of 60
93 C89 Reservation of identifiers Yes
94 NAD Are constraints on function return the same as assignment? Yes
95 NAD Is initialization as constrained as assignment? Yes
96 NAD Arrays of incomplete types Yes
97 Dup Use of offsetof with an incomplete type Duplicate of 40
98 NAD Pre/post increment/decrement of function or incomplete types Yes
99 NAD ANSI/ISO C Defect report #rfg6 Unknown
100 Dup Defect with the return statement Duplicate of 1
101 C89 Type qualifiers and "as if by assignment" Yes
102 NAD Tag redeclaration constraints Yes
103 NAD Formal parameters of incomplete type Yes
104 Dup Incomplete tag types in a parameter list Duplicate of 84
105 Dup Precedence of requirements on compatible types Duplicate of 17
106 NAD When can you dereference a void pointer? Yes
107 NAD Type requirements of the assert macro parameter N/A
108 NAD Can a macro identifier hide a keyword? Yes
109 NAD Are undefined values and undefined behavior the same? Yes
110 Dup Formal parameters having array-of-non-object types Duplicate of 47
111 NAD Conversion of pointer-to-qualified type values to type (void*) values Yes
112 NAD Null pointer constants and relational comparisons Yes
113 NAD Return expressions in functions declared to return qualified void Yes
114 NAD Initialization of multi-dimensional char array objects Yes
115 NAD Member declarators as declarators Yes
116 NAD Implicit unary & applied to register arrays Yes
117 NAD Abstract semantics, sequence points, and expression evaluation Yes
118 C89 Completion point for enumerated types Yes
119 NAD Initialization of multi-dimensional array objects Yes
120 NAD Semantics of assignment to (and initialization of) bit-fields Yes
121 NAD Conversions of pointer values to integral types Yes
122 Dup Conversion/widening of bit-fields Duplicate of 15
123 NAD 'Type categories' and qualified types Yes
124 C89 Casts to 'a void type' versus casts to 'the void type' Yes
125 NAD Using things declared as 'extern (qualified) void' Yes
126 NAD What does 'synonym' mean with respect to typedef names? Yes
127 Dup Composite type of an enumerated type and an integral type Duplicate of 13
128 NAD Editorial issue relating to tag declarations in type specifiers Yes
129 NAD Tags and name spaces Yes
130 NAD Guarantees when writing text to a stream N/A
131 C89 const member qualification and assignment Yes
132 Dup Can undefined behavior occur at translation time, or only at run time? Duplicate of 109
133 NAD Undefined behavior not previously listed in subclause G2 Yes
134 NAD What is an 'error number' for strerror? N/A
135 NAD Can the size argument to 'fwrite' be zero? N/A
136 NAD 'mktime' and time gaps N/A
137 NAD 'printf' and negative floating point values N/A
138 C89 Is there an allocated storage duration? Yes
139 C89 Compatibility of complete and incomplete types Yes
140 NAD Behavior of 'setvbuf' N/A
141 NAD What is the meaning of EOF? N/A
142 C89 Reservation of macro names Yes
143 C89 'fopen' modes N/A
144 C89 Preprocessing of preprocessing directives Yes
145 C89 Constant expressions Unknown
146 C89 Nugatory constraint Yes
147 C89 Sequence points in library functions Yes
148 NAD Defining library functions Yes
149 C89 The term "variable" Yes
150 C89 Initialization of a char array from a string literal Yes
151 C89 Behavior of 'printf' and flags N/A
152 NAD Can you 'longjmp' out of a signal handler? N/A
153 Dup Can 'f()' be considered a call to a function-like macro with one empty argument? Duplicate of 3
154 NAD Consistency of implementation-defined values Yes
155 C89 Zero-sized allocations N/A
156 C89 Closed streams N/A
157 C89 Legitimacy of type synonyms Yes
158 C89 Null pointer conversions Yes
159 C89 Consistency of the C Standard Defects exist in the way the Standard refers to itself Yes
160 Open Reservation of identifiers Not resolved
161 NAD Details of reserved symbols Yes
162 C89 'gmtime' and 'localtime' N/A
163 C89 Undeclared identifiers Yes
164 NAD Bad declarations Yes
165 C89 Tags and incomplete types Not resolved
166 Open Meaning of lvalue Not resolved
167 Open Consistency of the C Standard (Defect Report UK 015) Not resolved
168 Open Consistency of the C Standard (Defect Report UK 016) Not resolved
169 NAD Trigraphs Yes
170 C89 Operators and punctuators Not resolved
171 Open Ranges of integral types Not resolved
172 Open Relational and equality operators Not resolved
173 Open Line numbers Not resolved
174 Open Implicit conversions Not resolved
175 Open Correction to Technical Corrigendum 1 Not resolved
176 Open Diagnostics for #error Not resolved
177 Open Preprocessing directives Not resolved
178 Open Conformance with array members and allocations Not resolved
201 NAD Integer types longer than long Yes
202 C99 Change return type of certain <fenv.h> functions N/A
203 C99 C locale conflict with ISO/IEC 9945-2 N/A
204 C99 size_t and ptrdiff_t as a long long type Yes
205 NAD New keyword __at_least Yes
206 NAD Default argument conversion of float _Complex Yes
207 C99 Handling of imaginary types
Partial Clang detects use of the _Imaginary keyword but does not otherwise support the type yet.
208 C99 Ambiguity in initialization Yes
209 C99 Problem implementing INTN_C macros
Partial Clang provides these definitions in a freestanding compilation, but the type of the value produced by UINT8_C and UINT16_C is not the type after integer promotion per C99 7.18.4p3.
210 C99 'fprintf' %a and %A conversions recommended practice N/A
211 C99 Accuracy of decimal string to/from "binary" (non-decimal) floating-point conversions Yes
212 NAD Binding of multibyte conversion state objects N/A
213 C99 Lacuna in 'mbrtowc' N/A
214 NAD 'atexit' function registration N/A
215 C99 Equality operators Yes
216 C99 Source character encodings Yes
217 NAD 'asctime' limits N/A
218 C99 Signs of non-numeric floating point values Yes
219 NAD Effective types Yes
220 C99 Definition of "decimal integer" N/A
221 NAD Lacuna in pointer arithmetic Yes
222 C99 Partially initialized structures Yes
223 C99 'FP_FAST_FMAF' and 'FP_FAST_FMAL' should be integer constant N/A
224 C99 fpclassify return is not defined N/A
225 C99 strtod, strtof and strtold expected form of the subject sequence N/A
226 NAD strftime references N/A
227 NAD strftime %U, %V, and %W conversion specifiers N/A
228 C99 wmemcmp declaration in Annex B N/A
229 C99 localeconv() *_sep_by_space table entries issues N/A
230 C99 Enumerated type rank Yes
231 NAD Semantics of text-line and non-directive No
232 C99 Typo in Annex I N/A
233 C99 %g, %G precision specification N/A
234 C99 Miscellaneous Typos Yes
235 C99 "C" locale collating behaviour not defined N/A
236 NAD The interpretation of type based aliasing rule when applied to union objects or allocated objects Unknown
237 NAD Declarations using [static] No
238 C99 Decriptions of fma() overflow and underflow errors are missing N/A
239 C99 Annex F nexttoward description is inconsistent with and F.9.8.3 N/A
240 C99 lrint, llrint, lround, llround, and ilogb descriptions are not consistent for unrepresentable results N/A
241 C99 Make the base standard and Annex F consistent for pow(0, <0) N/A
242 C99 Make the base standard and Annex F consistent for logb(0) N/A
243 C99 Make the base standard and Annex F consistent for fmod(), remainder(), and remquo() for a zero divisor N/A
244 C99 tgamma(zero or negative integer) should be considered a pole error N/A
245 C99 Missing paragraph numbers Yes
246 NAD Completion of declarators Yes
247 C99 Are values a form of behaviour? Yes
248 C99 Limits are required for optional types Yes
249 Dup Lacuna applying C89:TC1 to C99 Duplicate of 9
250 C99 Non-directives within macro arguments Yes
251 C99 Are struct fred and union fred the same type? Yes
252 NAD Incomplete argument types when calling non-prototyped functions Yes
253 NAD "overriding" in designated initializers Yes
254 NAD mbtowc and partial characters N/A
255 NAD Non-prototyped function calls and argument mismatches Yes
256 NAD Multiple inclusion of headers N/A
257 NAD Common initial sequences and related issues with unions Unknown
258 NAD Ordering of "defined" and macro replacement Yes
259 NAD Macro invocations with no arguments Yes
260 NAD Indeterminate values and identical representations Unknown
261 NAD Constant expressions Yes
262 C99 Maximum size of bit fields Yes
263 C99 All-zero bits representations Yes
264 NAD Graphic characters N/A
265 C99 Preprocessor arithmetic Yes
266 NAD Overflow of sizeof Yes
267 C99 Typos in,,, Yes
268 C99 Jumps into iteration statements Yes
269 C99 Lacunae in exact-width integer types N/A
270 C99 wint_t is not the promoted version of wchar_t N/A
271 NAD Lacuna in iswctype and towctrans N/A
272 C99 Type category Yes
273 C99 Meaning of __STDC_ISO_10646__
Yes The compiler portion of this DR is implemented in Clang, but the __STDC_ISO_10646__ macro is not defined by Clang; the standard library behavior factors into whether this macro can or cannot be defined.
274 C99 Meaning of "character" in <string.h> functions N/A
275 C99 Bitwise-OR of nothing N/A
276 C99 Orientation of perror N/A
277 NAD Declarations within iteration statements No
278 C99 Lacuna in character encodings Yes
279 C99 Wide character code values for members of the basic character set Yes
280 NAD struct tm, member tm_isdst, and mktime() in <time.h> N/A
281 C99 CLOCKS_PER_SEC should not be a constant expression N/A
282 C99 Flexible array members & struct padding Yes
283 C99 Accessing a non-current union member ("type punning") Unknown
284 NAD Does <math.h> define INT_MIN and INT_MAX? N/A
285 C99 Conversion of an imaginary type to _Bool
Partial Clang detects use of the _Imaginary keyword but does not otherwise support the type yet.
286 C99 Correctly rounded and rounding direction/mode N/A
287 Dup Floating-point status flags and sequence points Duplicate of 87
288 NAD Deficiency on multibyte conversions N/A
289 C99 Function prototype with [restrict] Yes
290 C99 FLT_EVAL_METHOD and extra precision and/or range No
291 C99 Corrections to requirements on inexact floating-point exceptions Unknown
292 C99 Use of the word variable Yes
293 C99 Typo in Standard - double complex instead of complex in an example Yes
294 NAD Technical question on C99 restrict keyword Unknown
295 C99 Incomplete types for function parameters Yes
296 C99 Is exp(INFINITY) overflow? A range error? A divide-by-zero exception? INFINITY without any errors? N/A
297 C99 May FE_* floating-point exception flags have bits in common? N/A
298 C99 Validity of constant in unsigned long long range
Partial Clang defines the behavior in this situation by automatically using long long or unsigned long long as the underlying type of the constant; however, Clang fails to diagnose the extension in C89 mode with such constants.
299 C99 Is cabs() a type-generic macro? N/A
300 NAD Translation-time expresssion evaluation Yes
301 NAD Meaning of FE_* macros in <fenv.h> Yes
302 C99 6.10.2p5: Adding underscore to portable include file name character set Yes
303 C99 6.10p2: Breaking up the very long sentence describing preprocessing directive Yes
304 C99 Clarifying illegal tokens in #if directives Yes
305 C99 6.10.1p3: Clarifying handling of keywords in #if directives Yes
306 C99 6.10.3p9: Clarifying that rescanning applies to object-like macros Yes
307 C99 6.10.3p10: Clarifiying arguments vs. parameters Yes
308 C99 Clarify that source files et al. need not be "files" Yes
309 C99 Clarifying trigraph substitution Yes
310 C99 Add non-corner case example of trigraphs Yes
311 C99 Definition of variably modified types Yes
312 C99 Meaning of "known constant size" Yes
313 NAD Incomplete arrays of VLAs Yes
314 NAD Cross-translation-unit tagged type compatibility Unknown
315 C99 Implementation-defined bit-field types Yes
316 NAD Unprototyped function types Yes
317 NAD Function definitions with empty parentheses Yes
318 C99 (double)0.1f with FLT_EVAL_METHOD being 2 Unknown
319 NAD printf("%a", 1.0) and trailing zeros N/A
320 C99 Scope of variably modified type Yes
321 C99 Wide character code values for members of the basic character set Yes
322 C99 Problem with TC2 Change #67 (Add perror to the list defining byte input/output functions) N/A
323 C99 Potential problems with TC2 #34, #35, and #36 N/A
324 C99 Tokenization obscurities Yes
325 NAD strerror() N/A
326 C99 asctime() N/A
327 C99 Italicize definition of variable length array type, add forward references Yes
328 C99 String literals in compound literal initialization
Partial Clang properly implements the use of string literals in a compound literal initializer, but fails to diagnose use of a variably-modified type at file scope. DR339 (about variably-modified types) is marked as a duplicate of DR328.
329 C99 Math functions and directed rounding N/A
330 C99 Externally visible exceptional conditions N/A
331 NAD permit FE_DIVBYZERO when errno says EDOM N/A
332 C99 gets is generally unsafe N/A
333 C99 Missing Predefined Macro Name Yes
334 Open Missing semantics of comparison macros Not resolved
335 NAD _Bool bit-fields Yes
336 C99 What does TMP_MAX actually indicate? N/A
337 C99 stdio.h macro definition problems N/A
338 C99 C99 seems to exclude indeterminate value from being an uninitialized register Yes
339 Dup Variably modified compound literal Duplicate of 328
340 C99 Composite types for variable-length arrays Yes
341 C99 [*] in abstract declarators Yes
342 Dup VLAs and conditional expressions Duplicate of 340
343 C99 Initializing qualified wchar_t arrays Yes
344 C99 Casts in preprocessor conditional expressions Yes
345 C99 Where does parameter scope start? Yes
400 C11 realloc with size zero problems Unknown
401 C11 "happens before" can not be cyclic Yes
402 C11 Memory model coherence is not aligned with C++11 Yes
403 C11 malloc() and free() in the memory model N/A
404 C11 Joke fragment remains in a footnote Yes
405 C11 The mutex specification N/A
406 C11 Visible sequences of side effects are redundant Yes
407 C11 Memory ordering of atomics Unknown
408 NAD Should locks provide intra-thread synchronization N/A
409 C11 f(inf) is inf being a range error N/A
410 C11 ilogb inconsistent with lrint, lround N/A
411 C11 Predefined macro values Yes
412 C11 #elif Yes
413 NAD Initialization Yes
414 C11 Typos in 6.27 Threads <threads.h> N/A
415 C11 Missing divide by zero entry in Annex J Yes
416 C11 tss_t destruction unspecified N/A
417 C11 Annex J not updated with necessary aligned_alloc entries Yes
418 NAD Possible defect report: fmod(0.,NaN) and fmod(NaN,infinity) N/A
419 C11 Generic Functions Yes
420 NAD Sytax error in specification of for-statement Yes
421 NAD Initialization of atomic_flag N/A
422 NAD Initialization of atomic types N/A
423 C11 Defect Report relative to n1570: underspecification for qualified rvalues
Partial Clang properly handles dropping qualifiers from cast operations, but does not yet handle dropping qualifiers from the function return type.
424 Dup Underspecification of tss_t Duplicate of 416
425 NAD No specification for the access to variables with temporary lifetime Yes
426 C11 G.5.1: -yv and -x/v are ambiguous N/A
427 NAD Function Parameter and Return Value Assignments Unknown
428 C11 Runtime-constraint issue with sprintf family of routines in Annex K N/A
429 C11 Should gets_s discard next input line when (s == NULL) ? N/A
430 C11 getenv_s, maxsize should be allowed to be zero N/A
431 C11 atomic_compare_exchange: What does it mean to say two structs compare equal? Unknown
432 C11 Possible defect report: Is 0.0 required to be a representable value? Yes
433 C11 Issue with constraints for wide character function arguments involving RSIZE_MAX N/A
434 C11 Possible defect report: Missing constraint w.r.t. Atomic Yes
435 NAD Possible defect report: Missing constraint w.r.t. Imaginary Yes
436 C11 Request for interpretation of C11 6.8.5#6 Yes
437 C11 clock overflow problems N/A
438 C11 ungetc / ungetwc and file position after discarding push back problems N/A
439 C11 Issues with the definition of "full expression" Unknown
440 NAD Floating-point issues in C11 from PDTS 18661-1 UK review, Issue 1 Unknown
441 C11 Floating-point issues in C11 from PDTS 18661-1 UK review, Issue 2 N/A
442 NAD Floating-point issues in C11 from PDTS 18661-1 UK review, Issue 3 Unknown
443 NAD Floating-point issues in C11 from PDTS 18661-1 UK review, Issue 4 Unknown
444 C11 Issues with alignment in C11, part 1
Partial Clang rejects use of an alignment specifier in a compound literal expression.
445 C11 Issues with alignment in C11, part 2 Unknown
446 NAD Use byte instead of character for memcmp, memcpy N/A
447 C11 Boolean from complex Yes
448 C11 What are the semantics of a # non-directive? Yes
449 NAD What is the value of TSS_DTOR_ITERATIONS for implementations with no maximum? N/A
450 C11 tmpnam_s clears s[0] when maxsize > RSIZE_MAX N/A
451 NAD Instability of uninitialized automatic variables Unknown
452 C11 Effective Type in Loop Invariant Unknown
453 C11 Atomic flag type and operations N/A
454 NAD ATOMIC_VAR_INIT (issues 3 and 4) Yes
455 NAD ATOMIC_VAR_INIT issue 5 Yes
456 Dup Compile time definition of UINTN_C(value) Duplicate of 209
457 C11 The ctime_s function in Annex K defined incorrectly N/A
458 C11 ATOMIC_XXX_LOCK_FREE macros not constant expressions N/A
459 C11 atomic_load missing const qualifier Yes
460 C11 aligned_alloc underspecified N/A
461 NAD Problems with references to objects in signal handlers N/A
462 C11 Clarifying objects accessed in signal handlers N/A
463 NAD Left-shifting into the sign bit Yes
464 C11 Clarifying the Behavior of the #line Directive Yes
465 C11 Fixing an inconsistency in atomic_is_lock_free Unknown
466 NAD Scope of a for loop control declaration Yes
467 C11 Maximum representable finite description vs math Unknown
468 C11 strncpy_s clobbers buffer past null N/A
469 NAD Lock ownership vs. thread termination N/A
470 C11 mtx_trylock should be allowed to fail spuriously N/A
471 C11 Complex math functions cacosh and ctanh N/A
472 C11 Introduction to complex arithmetic in 7.3.1p3 wrong due to CMPLX N/A
473 C11 "A range error occurs if x is too large." is misleading N/A
474 NAD NOTE 1 Clarification for atomic_compare_exchange N/A
475 C11 Misleading Atomic library references to atomic types Yes
476 C11 volatile semantics for lvalues Unknown
477 C11 nan should take a string argument N/A
478 NAD Valid uses of the main function Yes
479 Dup Unclear specification of mtx_trylock on non-recursive muteness Duplicate of 269
480 C11 cnd_wait and cnd_timewait should allow spurious wake-ups N/A
481 C11 Controlling expression of _Generic primary expression Clang 3.8
482 NAD Macro invocation split over many files Unknown
483 NAD __LINE__ and __FILE__ in macro replacement list Yes
484 NAD invalid characters in strcoll() N/A
485 C11 Problem with the specification of ATOMIC_VAR_INIT Yes
486 NAD Inconsistent specification for arithmetic on atomic objects Unknown
487 C11 timespec vs. tm N/A
488 C11 c16rtomb() on wide characters encoded as multiple char16_t N/A
489 NAD Integer Constant Expression
Partial Clang inconsistently diagnoses folding a constan expression into an ICE as an extension.
490 NAD Unwritten Assumptions About if-then Yes
491 C11 Concern with Keywords that Match Reserved Identifiers
Partial Clang issues a reserved identifier diagnostic when the identifier leads with an underscore followed by a capital letter or double underscores, even if the identifier is used for a macro definition.
492 NAD Named Child struct-union with no Member Clang 3.6
493 Dup Mutex Initialization Underspecified Duplicate of 469
494 C11 Part 1: Alignment specifier expression evaluation Yes
495 C11 Part 2: Atomic specifier expression evaluation Not resolved
496 NAD offsetof questions Yes
497 C11 "white-space character" defined in two places N/A
498 C11 mblen, mbtowc, and wctomb thread-safety N/A
499 C17 Anonymous structure in union behavior Yes
500 C17 Ambiguous specification for FLT_EVAL_METHOD Unknown
501 C17 Can DECIMAL_DIG be larger than necessary? N/A
502 NAD Flexible array member in an anonymous struct Yes
503 NAD Hexadecimal floating-point and strtod N/A