forked from Barro/compiler-warnings
-
Notifications
You must be signed in to change notification settings - Fork 5
/
Copy pathwarnings-messages-3.8.txt
2468 lines (2468 loc) · 149 KB
/
warnings-messages-3.8.txt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
# enabled by default:
# -W (partial)
# -Wextra (partial)
# -Wignored-qualifiers (partial)
# 'A' qualifier on function type B has no effect
# 'A' qualifier on reference type B has no effect
# ARC <unused|__unsafe_unretained|__strong|__weak|__autoreleasing> lifetime qualifier on return type is ignored
# -Winitializer-overrides
# initializer overrides prior initialization of this subobject
# subobject initialization overrides initialization of other fields within its enclosing subobject
# -W#pragma-messages
# The text of this diagnostic is not controlled by Clang
# -W#warnings
# The text of this diagnostic is not controlled by Clang
# -Wabsolute-value
# absolute value function A given an argument of type B but has parameter of type C which may cause truncation of value
# taking the absolute value of <pointer|function|array> type B is suspicious
# taking the absolute value of unsigned type A has no effect
# using <integer|floating point|complex> absolute value function A when argument is of <integer|floating point|complex> type
# -Wabstract-final-class
# abstract class is marked '<final|sealed>'
# -Waddress
# -Wpointer-bool-conversion
# address of[ function| array] 'B' will always evaluate to 'true'
# nonnull <function call|parameter> 'B' will evaluate to 'true' on first encounter
# -Wstring-compare
# result of comparison against <a string literal|@encode> is unspecified (use strncmp instead)
# -Wtautological-pointer-compare
# comparison of <address of|function|array> 'B' [not ]equal to a null pointer is always <true|false>
# comparison of nonnull <function call|parameter> 'B' [not ]equal to a null pointer is '<true|false>' on first encounter
# -Waddress-of-array-temporary
# pointer is initialized by a temporary array, which will be destroyed at the end of the full-expression
# -Waddress-of-temporary
# taking the address of a temporary object of type A
# -Wambiguous-ellipsis
# '...' in this location creates a C-style varargs function[, not a function parameter pack]
# -Wambiguous-macro
# ambiguous expansion of macro A
# -Wambiguous-member-template
# lookup of A in member access expression is ambiguous; using member of B
# -Wanalyzer-incompatible-plugin
# checker plugin 'A' is not compatible with this version of the analyzer
# -Wanonymous-pack-parens
# ISO C++11 requires a parenthesized pack declaration to have a name
# -Warc
# -Warc-non-pod-memaccess
# <destination for|source of> this B call is a pointer to ownership-qualified type C
# -Warc-retain-cycles
# capturing A strongly in this block is likely to lead to a retain cycle
# -Warc-unsafe-retained-assign
# assigning <array literal|dictionary literal|numeric literal|boxed expression|<should not happen>|block literal> to a weak <property|variable>; object will be released after assignment
# assigning retained object to <weak|unsafe_unretained> <property|variable>; object will be released after assignment
# assigning retained object to unsafe property; object will be released after assignment
# -Warc-bridge-casts-disallowed-in-nonarc
# 'A' casts have no effect when not using ARC
# -Warc-performSelector-leaks
# performSelector may cause a leak because its selector is unknown
# -Warray-bounds
# 'static' has no effect on zero-length arrays
# array argument is too small; contains A elements, callee requires at least B
# array index A is before the beginning of the array
# array index A is past the end of the array (which contains B element(s))
# -Wasm
# -Wasm-operand-widths
# value size does not match register size specified by the constraint and modifier
# -Wassume
# the argument to A has side effects that will be discarded
# -Wat-protocol
# @protocol is using a forward protocol declaration of A
# -Watomic-memory-ordering
# memory order argument to atomic operation is invalid
# -Watomic-property-with-user-defined-accessor
# writable atomic property A cannot pair a synthesized <getter|setter> with a user defined <getter|setter>
# -Wattribute-packed-for-bitfield
# 'packed' attribute was ignored on bit-fields with single-byte alignment in older versions of GCC and Clang
# -Wattributes
# -Wignored-attributes
# 'A' attribute cannot be specified on a definition
# 'A' only applies to <function|pointer|Objective-C object or block pointer> types; type here is C
# 'deprecated' attribute on anonymous namespace ignored
# 'gnu_inline' attribute requires function to be marked 'inline', attribute ignored
# 'internal_linkage' attribute on a non-static local variable is ignored
# 'nonnull' attribute applied to function with no pointer arguments
# 'nonnull' attribute when used on parameters takes no arguments
# 'sentinel' attribute only supported for variadic <functions|blocks>
# 'sentinel' attribute requires named arguments
# <alignment|size> of field B (C bits) does not match the <alignment|size> of the first field in transparent union; transparent_union attribute ignored
# A attribute argument not supported: B
# A attribute can only be applied to instance variables or properties
# A attribute ignored
# A attribute ignored on inline function
# A attribute ignored when parsing type
# A attribute only applies to <Objective-C object|pointer|pointer-to-CF-pointer> parameters
# A attribute only applies to <functions|methods|properties> that return <an Objective-C object|a pointer|a non-retainable pointer>
# A attribute only applies to <functions|unions|variables and functions|functions and methods|parameters|functions, methods and blocks|functions, methods, and classes|functions, methods, and parameters|classes|enums|variables|methods|variables, functions and labels|fields and global variables|structs|variables and typedefs|thread-local variables|variables and fields|variables, data members and tag types|types and namespaces|Objective-C interfaces|methods and properties|struct or union|struct, union or class|types|Objective-C instance methods|init methods of interface or class extension declarations|variables, functions and classes|Objective-C protocols|functions and global variables|structs, unions, and typedefs|structs and typedefs|interface or protocol declarations|kernel functions|non-K&R-style functions>
# A attribute only applies to a pointer or reference (B is invalid)
# A attribute only applies to return values that are pointers
# A attribute only applies to return values that are pointers or references
# A attribute only applies to[ constant] pointer arguments
# A calling convention ignored on constructor/destructor
# A calling convention ignored on variadic function
# A only applies to variables with static storage duration and functions
# A redeclared inline; B attribute ignored
# Ignoring unsupported 'A' in the target attribute string
# MIPS 'interrupt' attribute only applies to functions that have <no parameters|a 'void' return type>
# Objective-C GC does not allow weak variables on the stack
# __declspec attribute A is not supported
# __weak attribute cannot be specified on a field declaration
# __weak attribute cannot be specified on an automatic variable when ARC is not enabled
# alias will always resolve to A even if weak definition of alias B is overridden
# alias will not be in section 'A' but in the same section as the aliasee
# attribute A after definition is ignored
# attribute A cannot be applied to <functions|Objective-C method> without return value
# attribute A ignored, because it cannot be applied to a type
# attribute A ignored, because it is not attached to a declaration
# attribute A is already applied
# attribute A is already applied with different parameters
# attribute A is ignored, place it after "<class|struct|interface|union|enum>" to apply attribute to type declaration
# attribute declaration must precede definition
# calling convention A ignored for this target
# first field of a transparent union cannot have <floating point|vector> type B; transparent_union attribute ignored
# inheritance model ignored on <primary template|partial specialization>
# qualifiers after comma in declarator list are ignored
# transparent union definition must contain at least one field; transparent_union attribute ignored
# transparent_union attribute can only be applied to a union definition; attribute ignored
# unknown attribute 'A'
# unknown visibility A
# -Wunknown-attributes
# unknown attribute A ignored
# -Wauto-disable-vptr-sanitizer
# implicitly disabling vptr sanitizer because rtti wasn't enabled
# -Wauto-storage-class
# 'auto' storage class specifier is not permitted in C++11, and will not be supported in future releases
# -Wauto-var-id
# 'auto' deduced as 'id' in declaration of A
# -Wavailability
# 'unavailable' availability overrides all other availability information
# [overriding ]method <introduced after|deprecated before|obsoleted before> <the protocol method it implements|overridden method> on B (C vs. D)
# [overriding ]method cannot be unavailable on A when <the protocol method it implements|its overridden method> is available
# availability does not match previous declaration
# feature cannot be <introduced|deprecated|obsoleted> in B version C before it was <introduced|deprecated|obsoleted> in version E; attribute ignored
# unknown platform A in availability macro
# use same version number separators '_' or '.'; as in 'major[.minor[.subminor]]'
# -Wbackend-plugin
# The text of this diagnostic is not controlled by Clang
# -Wbackslash-newline-escape
# backslash and newline separated by space
# -Wbad-array-new-length
# array is too large (A elements)
# array size is negative
# -Wbitfield-width
# width of anonymous bit-field (A bits) exceeds width of its type; value will be truncated to B bit(s)
# width of bit-field A (B bits) exceeds the width of its type; value will be truncated to C bit(s)
# -Wbool-conversions
# -Wbool-conversion
# initialization of pointer of type A to null from a constant boolean expression
# -Wpointer-bool-conversion
# address of[ function| array] 'B' will always evaluate to 'true'
# nonnull <function call|parameter> 'B' will evaluate to 'true' on first encounter
# -Wundefined-bool-conversion
# 'this' pointer cannot be null in well-defined C++ code; pointer may be assumed to always convert to true
# reference cannot be bound to dereferenced null pointer in well-defined C++ code; pointer may be assumed to always convert to true
# -Wbraced-scalar-init
# braces around scalar initializer
# -Wbridge-cast
# A bridges to B, not C
# A cannot bridge to B
# -Wbuiltin-macro-redefined
# redefining builtin macro
# undefining builtin macro
# -Wbuiltin-memcpy-chk-size
# A will always overflow destination buffer
# -Wbuiltin-requires-header
# declaration of built-in function 'B' requires inclusion of the header <A>
# -Wc++0x-compat (partial)
# -Wc++11-compat (partial)
# integer literal is too large to be represented in type 'long' and is subject to undefined behavior under C++98, interpreting as 'unsigned long'; this literal will <have type 'long long'|be ill-formed> in C++11 onwards
# integer literal is too large to be represented in type 'long', interpreting as 'unsigned long' per C++98; this literal will <have type 'long long'|be ill-formed> in C++11 onwards
# use of right-shift operator ('>>') in template argument will require parentheses in C++11
# -Wc++11-compat-deprecated-writable-strings
# conversion from string literal to A is deprecated
# -Wc++11-narrowing (partial)
# <case value|enumerator value|non-type template argument|array size> <cannot be narrowed from type C to D|evaluates to C, which cannot be narrowed to type D>
# constant expression evaluates to A which cannot be narrowed to type B
# non-constant-expression cannot be narrowed from type A to B in initializer list
# type A cannot be narrowed to B in initializer list
# -Wc++0x-extensions (partial)
# -Wc++11-extensions (partial)
# 'A' keyword is a C++11 extension
# 'auto' type specifier is a C++11 extension
# 'template' keyword outside of a template
# 'typename' occurs outside of a template
# <defaulted|deleted> function definitions are a C++11 extension
# alias declarations are a C++11 extension
# befriending enumeration type A is a C++11 extension
# default template arguments for a function template are a C++11 extension
# explicit conversion functions are a C++11 extension
# first declaration of <class template|class template partial|variable template|variable template partial|function template|member function|static data member|member class|member enumeration> specialization of B outside namespace C is a C++11 extension
# generalized initializer lists are a C++11 extension
# in-class initialization of non-static data member is a C++11 extension
# non-class friend type A is a C++11 extension
# non-type template argument referring to <function|object> B with internal linkage is a C++11 extension
# range-based for loop is a C++11 extension
# reference qualifiers on functions are a C++11 extension
# rvalue references are a C++11 extension
# scoped enumerations are a C++11 extension
# static data member A in union is a C++11 extension
# unelaborated friend declaration is a C++11 extension; specify '<struct|interface|union|class|enum>' to befriend B
# use of enumeration in a nested name specifier is a C++11 extension
# variadic templates are a C++11 extension
# -Wc++11-inline-namespace
# inline namespaces are a C++11 feature
# -Wc++0x-narrowing (partial)
# -Wc++11-narrowing (partial)
# <case value|enumerator value|non-type template argument|array size> <cannot be narrowed from type C to D|evaluates to C, which cannot be narrowed to type D>
# constant expression evaluates to A which cannot be narrowed to type B
# non-constant-expression cannot be narrowed from type A to B in initializer list
# type A cannot be narrowed to B in initializer list
# -Wc++1y-extensions (partial)
# -Wc++14-extensions (partial)
# 'decltype(auto)' type specifier is a C++14 extension
# initialized lambda captures are a C++14 extension
# multiple return statements in constexpr function is a C++14 extension
# type definition in a constexpr <function|constructor> is a C++14 extension
# use of the 'deprecated' attribute is a C++14 extension
# use of this statement in a constexpr <function|constructor> is a C++14 extension
# variable declaration in a constexpr <function|constructor> is a C++14 extension
# variable templates are a C++14 extension
# -Wc++1z-compat
# -Wdeprecated-increment-bool
# incrementing expression of type bool is deprecated and incompatible with C++1z
# -Wdeprecated-register
# 'register' storage class specifier is deprecated and incompatible with C++1z
# -Wc++1z-extensions
# nested namespace definition is a C++1z extension; define each namespace separately
# pack fold expression is a C++1z extension
# static_assert with no message is a C++1z extension
# template template parameter using 'typename' is a C++1z extension
# -Wc99-compat (partial)
# integer literal is too large to be represented in type 'long', interpreting as 'unsigned long' per C89; this literal will <have type 'long long'|be ill-formed> in C99 onwards
# -Wc99-extensions (partial)
# ISO C99 requires whitespace after the macro name
# -WCFString-literal
# input conversion stopped due to an input byte that does not belong to the input codeset UTF-8
# -WCL4 (partial)
# -Wall (partial)
# -Wmost (partial)
# -Wcast-of-sel-type
# cast of type A to B is deprecated; use sel_getName instead
# -Wcomment (partial)
# '/*' within block comment
# escaped newline between */ characters at block comment end
# -Wdelete-non-virtual-dtor (partial)
# delete called on A that is abstract but has non-virtual destructor
# -Wextern-c-compat
# [empty ]<struct|union> has size 0 in C, <size 1|non-zero size> in C++
# -Wformat
# '<*|.*>' specified field <width|precision> is missing a matching 'int' argument
# 'A' is not a valid object format flag
# <field width|precision> used with 'B' conversion specifier, resulting in undefined behavior
# <values of type|enum values with underlying type> 'A' should not be used as format arguments; add an explicit cast to B instead
# cannot mix positional and non-positional arguments in format string
# data argument position 'A' exceeds the number of data arguments (B)
# field <width|precision> should have type B, but argument has type C
# flag 'A' is ignored when flag 'B' is present
# flag 'A' results in undefined behavior with 'B' conversion specifier
# format specifies type A but the argument has <type|underlying type> B
# format string contains '\0' within the string body
# format string is not null-terminated
# format string missing
# format string should not be a wide string
# incomplete format specifier
# invalid position specified for <field width|field precision>
# length modifier 'A' results in undefined behavior or no effect with 'B' conversion specifier
# missing object format flag
# more '%' conversions than data arguments
# no closing ']' for '%[' in scanf format string
# object format flags cannot be used with 'A' conversion specifier
# position arguments in format strings start counting at 1 (not 0)
# zero field width in scanf format string is unused
# -Wformat-extra-args
# data argument not used by format string
# -Wformat-invalid-specifier
# invalid conversion specifier 'A'
# -Wformat-security
# format string is not a string literal (potentially insecure)
# -Wformat-zero-length
# format string is empty
# -Wnonnull
# null passed to a callee that requires a non-null argument
# null returned from <function|method> that requires a non-null return value
# -Wimplicit (partial)
# -Wimplicit-function-declaration (partial)
# implicit declaration of function A is invalid in C99
# implicitly declaring library function 'A' with type B
# use of unknown builtin A
# -Wimplicit-int
# type specifier missing, defaults to 'int'
# -Wmultichar
# multi-character character constant
# -Wobjc-designated-initializers
# convenience initializer missing a 'self' call to another initializer
# convenience initializer should not invoke an initializer on 'super'
# designated initializer invoked a non-designated initializer
# designated initializer missing a 'super' call to a designated initializer of the super class
# designated initializer should only invoke a designated initializer on 'super'
# method override for the designated initializer of the superclass A not found
# -Wobjc-missing-super-calls
# method possibly missing a [super A] call
# -Wprivate-extern
# use of __private_extern__ on a declaration may not produce external symbol private to the linkage unit and is deprecated
# -Wreturn-type
# <void function|void method|constructor|destructor> A should not return a value
# control may reach end of non-void function
# control may reach end of non-void lambda
# control reaches end of non-void function
# control reaches end of non-void lambda
# non-void <function|method> A should return a value
# -Wreturn-type-c-linkage
# A has C-linkage specified, but returns incomplete type B which could be incompatible with C
# A has C-linkage specified, but returns user-defined type B which is incompatible with C
# -Wself-assign (partial)
# -Wself-assign-field
# assigning <field|instance variable> to itself
# -Wsizeof-array-argument
# sizeof on array function parameter will return size of A instead of B
# -Wsizeof-array-decay
# sizeof on pointer operation will return size of A instead of B
# -Wstring-plus-int
# adding A to a string does not append to the string
# -Wtrigraphs
# ignored trigraph would end block comment
# trigraph converted to 'A' character
# trigraph ends block comment
# trigraph ignored
# -Wuninitialized (partial)
# base class A is uninitialized when used here to access B
# field A is uninitialized when used here
# reference A is not yet bound to a value when used here
# reference A is not yet bound to a value when used within its own initialization
# variable A is uninitialized when used within its own initialization
# -Wstatic-self-init
# static variable A is suspiciously used within its own initialization
# -Wunknown-pragmas (partial)
# #pragma warning expected 'A'
# #pragma warning expected 'push', 'pop', 'default', 'disable', 'error', 'once', 'suppress', 1, 2, 3, or 4
# #pragma warning expected a warning number
# #pragma warning(push, level) requires a level between 0 and 4
# angle-bracketed include <A> cannot be aliased to double-quoted include "B"
# double-quoted include "A" cannot be aliased to angle-bracketed include <B>
# expected 'ON' or 'OFF' or 'DEFAULT' in pragma
# expected end of directive in pragma
# pragma STDC FENV_ACCESS ON is not supported, ignoring pragma
# pragma diagnostic expected 'error', 'warning', 'ignored', 'fatal', 'push', or 'pop'
# pragma diagnostic expected option name (e.g. "-Wundef")
# pragma diagnostic pop could not pop, no matching push
# pragma include_alias expected 'A'
# pragma include_alias expected include filename
# unexpected token in pragma diagnostic
# unknown pragma in STDC namespace
# unknown warning group 'A', ignored
# -Wunused (partial)
# -Wunused-value
# container access result unused - container access should not be used for side effects
# expression result unused
# expression result unused; should this cast be to 'void'?
# ignoring return value of function declared with A attribute
# -Wunevaluated-expression
# expression with side effects has no effect in an unevaluated context
# -Wpotentially-evaluated-expression
# expression with side effects will be evaluated despite being used as an operand to 'typeid'
# -Wunused-comparison
# <[in]equality|relational> comparison result unused
# -Wunused-result
# ignoring return value of function declared with warn_unused_result attribute
# -Wparentheses
# A has lower precedence than B; B will be evaluated first
# operator '?:' has lower precedence than 'A'; 'A' will be evaluated first
# using the result of an assignment as a condition without parentheses
# -Wbitwise-op-parentheses
# 'A' within 'B'
# -Wdangling-else
# add explicit braces to avoid dangling else
# -Wlogical-not-parentheses
# logical not is only applied to the left hand side of this comparison
# -Wlogical-op-parentheses
# '&&' within '||'
# -Woverloaded-shift-op-parentheses
# overloaded operator <>>|<<> has higher precedence than comparison operator
# -Wparentheses-equality
# equality comparison with extraneous parentheses
# -Wshift-op-parentheses
# operator 'A' has lower precedence than 'B'; 'B' will be evaluated first
# -Wswitch
# <enumeration value B not handled in switch|enumeration values B and C not handled in switch|enumeration values B, C, and D not handled in switch|A enumeration values not handled in switch>
# case value not in enumerated type A
# overflow converting case value to switch condition type (A to B)
# -Wswitch-bool
# switch condition has boolean value
# -Wextra (partial)
# -Wignored-qualifiers (partial)
# 'A' qualifier on function type B has no effect
# 'A' qualifier on reference type B has no effect
# ARC <unused|__unsafe_unretained|__strong|__weak|__autoreleasing> lifetime qualifier on return type is ignored
# -Winitializer-overrides
# initializer overrides prior initialization of this subobject
# subobject initialization overrides initialization of other fields within its enclosing subobject
# -Wclass-varargs (partial)
# -Wnon-pod-varargs
# cannot pass <non-POD|non-trivial> object of type B to variadic <function|block|method|constructor>; expected type from format string was D
# cannot pass object of <non-POD|non-trivial> type B through variadic <function|block|method|constructor>; call will abort at runtime
# second argument to 'va_arg' is of ARC ownership-qualified type A
# second argument to 'va_arg' is of non-POD type A
# -Wcomments (partial)
# -Wcomment (partial)
# '/*' within block comment
# escaped newline between */ characters at block comment end
# -Wcompare-distinct-pointer-types
# comparison of distinct pointer types
# comparison of distinct pointer types (A and B) uses non-standard composite pointer type C
# -Wconditional-type-mismatch
# pointer/integer type mismatch in conditional expression
# -Wconfig-macros
# <definition|#undef> of configuration macro 'B' has no effect on the import of 'C'; pass '<-DB=...|-UB>' on the command line to configure the module
# -Wconstant-logical-operand
# use of logical 'A' with constant operand
# -Wconstexpr-not-const
# 'constexpr' non-static member function will not be implicitly 'const' in C++14; add 'const' to avoid a change in behavior
# -Wconversion-null
# -Wnull-conversion
# implicit conversion of <NULL|nullptr> constant to B
# -Wcoreturn-without-coawait
# 'co_return' used in a function that uses neither 'co_await' nor 'co_yield'
# -Wcuda-compat
# A attribute parameter B is negative and will be ignored
# argument to '#pragma unroll' should not be in parentheses in CUDA C/C++
# calling __host__ function A from __host__ __device__ function B can lead to runtime errors
# -Wdangling-field
# binding reference [subobject of ]member A to a temporary value
# binding reference member A to stack allocated parameter B
# initializing pointer member A with the stack address of parameter B
# -Wdangling-initializer-list
# array backing the initializer list will be destroyed at the end of <the full-expression|the constructor>
# -Wdealloc-in-category
# -dealloc is being overridden in a category
# -Wdebug-compression-unavailable
# cannot compress debug sections (zlib not installed)
# -Wdelegating-ctor-cycles
# constructor for A creates a delegation cycle
# -Wdelete-incomplete
# cannot delete expression with pointer-to-'void' type A
# deleting pointer to incomplete type A may cause undefined behavior
# -Wdeprecated (partial)
# -O4 is equivalent to -O3
# Use of 'long' with '__vector' is deprecated
# access declarations are deprecated; use using declarations instead
# argument 'A' is deprecated, use 'B' instead
# treating 'A' input as 'B' when in C++ mode, this behavior is deprecated
# -Wdeprecated-attributes
# specifying vector types with the 'mode' attribute is deprecated; use the 'vector_size' attribute instead
# -Wdeprecated-declarations
# A is deprecated
# A is deprecated: B
# A may be deprecated because the receiver type is unknown
# property access is using A method which is deprecated
# use of C-style parameters in Objective-C method declarations is deprecated
# -Wdeprecated-increment-bool
# incrementing expression of type bool is deprecated and incompatible with C++1z
# -Wdeprecated-register
# 'register' storage class specifier is deprecated and incompatible with C++1z
# -Wdeprecated-writable-strings
# -Wc++11-compat-deprecated-writable-strings
# conversion from string literal to A is deprecated
# -Wdeprecated-objc-isa-usage
# assignment to Objective-C's isa is deprecated in favor of object_setClass()
# direct access to Objective-C's isa is deprecated in favor of object_getClass()
# -Wdeprecated-objc-pointer-introspection
# bitmasking for introspection of Objective-C object pointers is strongly discouraged
# -Wdeprecated-objc-pointer-introspection-performSelector
# bitmasking for introspection of Objective-C object pointers is strongly discouraged
# -Wdistributed-object-modifiers
# conflicting distributed object modifiers on parameter type in implementation of A
# conflicting distributed object modifiers on return type in implementation of A
# -Wdivision-by-zero
# <remainder|division> by zero is undefined
# -Wdll-attribute-on-redeclaration
# redeclaration of A should not add B attribute
# -Wdllexport-explicit-instantiation-decl
# explicit instantiation declaration should not be 'dllexport'
# -Wdllimport-static-field-def
# definition of dllimport static field
# -Wduplicate-decl-specifier
# duplicate 'A' declaration specifier
# -Wdynamic-class-memaccess
# <destination for|source of|first operand of|second operand of> this B call is a pointer to [class containing a ]dynamic class D; vtable pointer will be <overwritten|copied|moved|compared>
# -Wempty-body
# for loop has empty body
# if statement has empty body
# range-based for loop has empty body
# switch statement has empty body
# while loop has empty body
# -Wencode-type
# encoding of A type is incomplete because B component has unknown encoding
# -Wendif-labels
# -Wextra-tokens
# extra tokens at end of #A directive
# extra tokens at the end of '#pragma omp A' are ignored
# -Wenum-compare
# comparison of two values with different enumeration types
# -Wenum-too-large
# enumeration values exceed range of largest integer
# incremented enumerator value A is not representable in the largest integer type
# -Wexceptions
# cannot refer to a non-static member from the handler of a <constructor|destructor> function try block
# exception of type A will be caught by earlier handler
# -Wexplicit-initialize-call
# explicit call to +initialize results in duplicate call to +initialize
# explicit call to [super initialize] should only be in implementation of +initialize
# -Wextern-initializer
# 'extern' variable has an initializer
# -Wextra-qualification
# extra qualification on member A
# -Wfallback
# falling back to A
# -Wflag-enum
# enumeration value A is out of range of flags in enumeration type B
# -Wformat=2 (partial)
# -Wformat-security
# format string is not a string literal (potentially insecure)
# -Wframe-larger-than=
# The text of this diagnostic is not controlled by Clang
# stack frame size of A bytes in B
# -Wfunction-def-in-objc-container
# function definition inside an Objective-C container is deprecated
# -Wgcc-compat
# 'A' is bound to current loop, GCC binds it to the enclosing loop
# 'break' is bound to loop, GCC binds it to switch
# GCC does not allow A attribute in this position on a function definition
# GCC does not allow an attribute in this position on a function declaration
# GCC does not allow the 'cleanup' attribute argument to be anything other than a simple identifier
# -Wgnu (partial)
# -Wgnu-alignof-expression
# A applied to an expression is a GNU extension
# -Wgnu-designator (partial)
# use of GNU 'missing =' extension in designator
# use of GNU old-style field designator extension
# -Wgnu-static-float-init
# in-class initializer for static data member of type A is a GNU extension
# -Wgnu-string-literal-operator-template
# string literal operator templates are a GNU extension
# -Wgnu-variable-sized-type-not-at-end
# field A with variable sized type B not at the end of a struct or class is a GNU extension
# -Wredeclared-class-member
# class member cannot be redeclared
# -Wgnu-array-member-paren-init
# parenthesized initialization of a member array is a GNU extension
# -Wheader-guard
# A is used as a header guard here, followed by #define of a different macro
# -Wimplicit-conversion-floating-point-to-bool
# implicit conversion turns floating-point number into bool: A to B
# -Wimplicit-exception-spec-mismatch
# function previously declared with an <explicit|implicit> exception specification redeclared with an <implicit|explicit> exception specification
# -Wimplicit-fallthrough (partial)
# fallthrough annotation does not directly precede switch label
# fallthrough annotation in unreachable code
# -Wimplicitly-unsigned-literal
# integer literal is too large to be represented in a signed integer type, interpreting as unsigned
# -Winaccessible-base
# direct base A is inaccessible due to ambiguity:B
# -Winclude-next-absolute-path
# #include_next with absolute path
# -Winclude-next-outside-header
# #include_next in primary source file
# -Wincompatible-library-redeclaration
# incompatible redeclaration of library function A
# -Wincompatible-ms-struct
# ms_struct may not produce Microsoft-compatible layouts for classes with base classes or virtual functions
# -Wincompatible-pointer-types
# incompatible pointer types <assigning to different types|passing to parameter of different type|returning from function with different return type|converting between types|initializing with expression of different type|sending to parameter of different type|casting between types>[; dereference with *|; take the address with &|; remove *|; remove &]
# -Wincompatible-pointer-types-discards-qualifiers
# <assigning to different types|passing to parameter of different type|returning from function with different return type|converting between types|initializing with expression of different type|sending to parameter of different type|casting between types> discards qualifiers
# <assigning to different types|passing to parameter of different type|returning from function with different return type|converting between types|initializing with expression of different type|sending to parameter of different type|casting between types> discards qualifiers in nested pointer types
# -Wincompatible-property-type
# property type A is incompatible with type B inherited from C
# -Wincomplete-implementation
# method definition for A not found
# -Wincomplete-module (partial)
# -Wincomplete-umbrella
# missing submodule 'A'
# umbrella header for module 'A' does not include header 'B'
# -Winconsistent-dllimport
# A redeclared without B attribute: previous B ignored
# -Winconsistent-missing-override
# A overrides a member function but is not marked 'override'
# -Wincrement-bool
# ISO C++1z does not allow incrementing expression of type bool
# -Wdeprecated-increment-bool
# incrementing expression of type bool is deprecated and incompatible with C++1z
# -WIndependentClass-attribute
# 'objc_independent_class' attribute may be put on Objective-C object pointer type only; attribute is ignored
# 'objc_independent_class' attribute may be put on a typedef only; attribute is ignored
# -Winherited-variadic-ctor
# inheriting constructor does not inherit ellipsis
# -Winline-asm
# The text of this diagnostic is not controlled by Clang
# -Winline-new-delete
# replacement function A cannot be declared 'inline'
# -Wint-conversions
# -Wint-conversion
# incompatible integer to pointer conversion <assigning to different types|passing to parameter of different type|returning from function with different return type|converting between types|initializing with expression of different type|sending to parameter of different type|casting between types>[; dereference with *|; take the address with &|; remove *|; remove &]
# incompatible pointer to integer conversion <assigning to different types|passing to parameter of different type|returning from function with different return type|converting between types|initializing with expression of different type|sending to parameter of different type|casting between types>[; dereference with *|; take the address with &|; remove *|; remove &]
# -Wint-to-pointer-cast
# cast to B from smaller integer type A
# -Wint-to-void-pointer-cast
# cast to B from smaller integer type A
# -Winteger-overflow
# overflow in expression; result is A with type B
# -Winvalid-command-line-argument
# optimization level 'A' is not supported; using 'BC' instead
# -Wignored-optimization-argument
# optimization flag 'A' is not supported
# -Winvalid-constexpr
# constexpr <function|constructor> never produces a constant expression
# -Winvalid-iboutlet
# <instance variable|property> with A attribute must be an object type (invalid B)
# IBOutletCollection properties should be copy/strong and not assign
# -Winvalid-initializer-from-system-header
# invalid constructor form class in system header, should not be explicit
# -Winvalid-noreturn
# function A declared 'noreturn' should not return
# function declared 'noreturn' should not return
# -Winvalid-offsetof
# offset of on non-POD type A
# offset of on non-standard-layout type A
# -Winvalid-or-nonexistent-directory (partial)
# environment variable SCE_PS4_SDK_DIR is set, but points to invalid or nonexistent directory 'A'
# -Winvalid-pp-token
# empty character constant
# missing terminating <'|'"'> character
# -Winvalid-source-encoding
# illegal character encoding in character literal
# illegal character encoding in string literal
# -Winvalid-token-paste
# pasting formed 'A', an invalid preprocessing token
# -Wjump-seh-finally
# jump out of __finally block has undefined behavior
# -Wkeyword-compat
# keyword 'A' will be made available as an identifier <here|for the remainder of the translation unit>
# -Wknr-promoted-parameter
# promoted type of K&R function parameter is not compatible with parameter type declared in a previous prototype
# -Wlarge-by-value-copy
# A is a large (B bytes) pass-by-value argument; pass it by reference instead ?
# return value of A is a large (B bytes) pass-by-value object; pass it by reference instead ?
# -Wliblto
# libLTO.dylib relative to clang installed dir not found; using 'ld' default search path instead
# -Wlocal-type-template-args (partial)
# template argument uses local type A
# -Wmacro-redefined
# A macro redefined
# -Wmain (partial)
# 'main' is not allowed to be declared _Noreturn
# 'main' is not allowed to be declared variadic
# 'main' should not be declared static
# only one parameter on 'main' declaration
# variable named 'main' with external linkage has undefined behavior
# -Wmain-return-type
# return type of 'main' is not 'int'
# -Wmalformed-warning-check
# __has_warning expected option name (e.g. "-Wundef")
# -Wmany-braces-around-scalar-init
# too many braces around scalar initializer
# -Wmemsize-comparison
# size argument in A call is a comparison
# -Wmicrosoft (partial)
# -Wmicrosoft-anon-tag (partial)
# anonymous <structs|unions> are a Microsoft extension
# -Wmicrosoft-cast
# implicit conversion between pointer-to-function and pointer-to-object is a Microsoft extension
# static_cast between pointer-to-function and pointer-to-object is a Microsoft extension
# -Wmicrosoft-const-init
# default initialization of an object of const type A[ without a user-provided default constructor] is a Microsoft extension
# -Wmicrosoft-default-arg-redefinition
# redefinition of default argument
# -Wmicrosoft-enum-value
# enumerator value is not representable in the underlying type A
# -Wmicrosoft-exception-spec (partial)
# A is missing exception specification 'B'
# exception specification in declaration does not match previous declaration
# exception specification in explicit instantiation does not match instantiated one
# exception specification of overriding function is more lax than base version
# -Wmicrosoft-explicit-constructor-call
# explicit constructor calls are a Microsoft extension
# -Wmicrosoft-extra-qualification
# extra qualification on member A
# -Wmicrosoft-goto
# jump from this goto statement to its label is a Microsoft extension
# -Wmicrosoft-include
# #include resolved using non-portable Microsoft search rules as: A
# -Wmicrosoft-mutable-reference
# 'mutable' on a reference type is a Microsoft extension
# -Wmicrosoft-pure-definition
# function definition with pure-specifier is a Microsoft extension
# -Wmicrosoft-sealed
# 'sealed' keyword is a Microsoft extension
# -Wmicrosoft-template
# <class template|class template partial|variable template|variable template partial|function template|member function|static data member|member class|member enumeration> specialization of B outside namespace enclosing C is a Microsoft extension
# duplicate explicit instantiation of A ignored as a Microsoft extension
# explicit specialization of A within class scope is a Microsoft extension
# non-type template argument containing a dereference operation is a Microsoft extension
# template argument for template type parameter must be a type; omitted 'typename' is a Microsoft extension
# use of identifier A found via unqualified lookup into dependent bases of class templates is a Microsoft extension
# use of undeclared identifier A; unqualified lookup into dependent bases of class template B is a Microsoft extension
# using the undeclared type A as a default template argument is a Microsoft extension
# -Wmicrosoft-union-member-reference
# union member A has reference type B, which is a Microsoft extension
# -Wmicrosoft-unqualified-friend
# unqualified friend declaration referring to type outside of the nearest enclosing namespace is a Microsoft extension; add a nested name specifier
# -Wmicrosoft-using-decl
# using declaration referring to inaccessible member 'A' (which refers to accessible member 'B') is a Microsoft compatibility extension
# -Wmicrosoft-void-pseudo-dtor
# pseudo-destructors on type void are a Microsoft extension
# -Wmicrosoft-exists
# dependent <__if_not_exists|__if_exists> declarations are ignored
# -Wmismatched-new-delete
# 'delete[[]]' applied to a pointer that was allocated with 'new[[]]'; did you mean 'delete[[]]'?
# -Wmismatched-parameter-types
# conflicting parameter types in implementation of A
# -Wmismatched-return-types
# conflicting return type in implementation of A
# -Wmissing-declarations
# 'A' ignored on this declaration
# 'A' is not permitted on a declaration of a type
# declaration does not declare anything
# typedef requires a name
# -Wmissing-exception-spec
# A is missing exception specification 'B'
# -Wmissing-prototype-for-cc
# function with no prototype cannot use the A calling convention
# -Wmissing-selector-name
# A used as the name of the previous parameter rather than as part of the selector
# -Wmissing-sysroot
# no such sysroot directory: 'A'
# -Wmodule-conflict
# module 'A' conflicts with already-imported module 'B': C
# -Wmodule-file-config-mismatch
# module file A cannot be loaded due to a configuration mismatch with the current compilation
# -Wmodule-file-extension
# duplicate module file extension block name 'A'
# -Wmodule-import-in-extern-c
# import of C++ module 'A' appears within extern "C" language linkage specification
# -Wmodules-ambiguous-internal-linkage
# ambiguous use of internal linkage declaration A defined in multiple modules
# -Wmodules-import-nested-redundant
# redundant #include of module 'A' appears within B
# -Wmsvc-include
# -Wmicrosoft-include
# #include resolved using non-portable Microsoft search rules as: A
# -Wmultiple-move-vbase
# defaulted move assignment operator of A will move assign virtual base class B multiple times
# -Wnarrowing (partial)
# -Wc++11-narrowing (partial)
# <case value|enumerator value|non-type template argument|array size> <cannot be narrowed from type C to D|evaluates to C, which cannot be narrowed to type D>
# constant expression evaluates to A which cannot be narrowed to type B
# non-constant-expression cannot be narrowed from type A to B in initializer list
# type A cannot be narrowed to B in initializer list
# -Wnew-returns-null
# A should not return a null pointer unless it is declared 'throw()'[ or 'noexcept']
# -Wnon-gcc (partial)
# -Wconversion (partial)
# -Wbool-conversion
# initialization of pointer of type A to null from a constant boolean expression
# -Wpointer-bool-conversion
# address of[ function| array] 'B' will always evaluate to 'true'
# nonnull <function call|parameter> 'B' will evaluate to 'true' on first encounter
# -Wundefined-bool-conversion
# 'this' pointer cannot be null in well-defined C++ code; pointer may be assumed to always convert to true
# reference cannot be bound to dereferenced null pointer in well-defined C++ code; pointer may be assumed to always convert to true
# -Wconstant-conversion
# implicit conversion from C to D changes value from A to B
# -Wbitfield-constant-conversion
# implicit truncation from C to bitfield changes value from A to B
# -Wenum-conversion
# implicit conversion from enumeration type A to different enumeration type B
# -Wint-conversion
# incompatible integer to pointer conversion <assigning to different types|passing to parameter of different type|returning from function with different return type|converting between types|initializing with expression of different type|sending to parameter of different type|casting between types>[; dereference with *|; take the address with &|; remove *|; remove &]
# incompatible pointer to integer conversion <assigning to different types|passing to parameter of different type|returning from function with different return type|converting between types|initializing with expression of different type|sending to parameter of different type|casting between types>[; dereference with *|; take the address with &|; remove *|; remove &]
# -Wliteral-conversion
# implicit conversion from A to B changes value from C to D
# -Wnon-literal-null-conversion
# expression which evaluates to zero treated as a null pointer constant of type A
# -Wnull-conversion
# implicit conversion of <NULL|nullptr> constant to B
# -Wobjc-literal-conversion
# implicit boolean conversion of Objective-C object literal always evaluates to true
# object of type A is not compatible with <array element type|dictionary key type|dictionary value type> C
# -Wliteral-range
# magnitude of floating-point constant too large for type A; maximum is B
# magnitude of floating-point constant too small for type A; minimum is B
# -Wnonportable-vector-initialization
# vector initializers are not compatible with NEON intrinsics in big endian mode
# -WNSObject-attribute
# 'NSObject' attribute may be put on a typedef only; attribute is ignored
# -Wnull-arithmetic
# comparison between NULL and non-pointer <(B and NULL)|(NULL and B)>
# use of NULL in arithmetic operation
# -Wnull-character
# null character ignored
# null character(s) preserved in <char|string> literal
# -Wnull-dereference
# indirection of non-volatile null pointer will be deleted, not trap
# -Wnullability
# conflicting nullability specifier on parameter types, A conflicts with existing specifier B
# conflicting nullability specifier on return types, A conflicts with existing specifier B
# duplicate nullability specifier A
# nullability specifier A conflicts with existing specifier B
# synthesized setter A for null_resettable property B does not handle nil
# -Wnullability-completeness
# <pointer|block pointer|member pointer> is missing a nullability type specifier (_Nonnull, _Nullable, or _Null_unspecified)
# -Wnullability-declspec
# nullability specifier A cannot be applied to non-pointer type B; did you mean to apply the specifier to the <pointer|block pointer|member pointer|function pointer|member function pointer>?
# -Wobjc-autosynthesis-property-ivar-name-match
# autosynthesized property A will use [synthesized] instance variable C, not existing instance variable D
# -Wobjc-circular-container
# adding 'A' to 'B' might cause circular dependency in container
# -Wobjc-cocoa-api
# -Wobjc-redundant-api-use
# -Wobjc-redundant-literal-use
# using A with a literal is redundant
# -Wobjc-forward-class-redefinition
# redefinition of forward class A of a typedef name of an object type is ignored
# -Wobjc-literal-compare
# direct comparison of [an array literal|a dictionary literal|a numeric literal|a boxed expression] has undefined behavior
# -Wobjc-string-compare
# direct comparison of a string literal has undefined behavior
# -Wobjc-macro-redefinition
# ignoring redefinition of Objective-C qualifier macro
# -Wobjc-method-access
# class method A not found (return type defaults to 'id')
# class method A not found (return type defaults to 'id'); did you mean C?
# instance method A found instead of class method B
# instance method A is being used on 'Class' which is not in the root class
# instance method A not found (return type defaults to 'id')
# instance method A not found (return type defaults to 'id'); did you mean C?
# -Wobjc-multiple-method-names
# multiple methods named A found
# -Wobjc-noncopy-retain-block-property
# retain'ed block property does not copy the block - use copy attribute instead
# -Wobjc-nonunified-exceptions
# cannot catch an exception thrown with @throw in C++ in the non-unified exception model
# -Wobjc-property-implementation
# property A requires method B to be defined - use @dynamic or provide a method implementation in this category
# property A requires method B to be defined - use @synthesize, @dynamic or provide a method implementation in this class implementation
# -Wobjc-property-implicit-mismatch
# primary property declaration is implicitly strong while redeclaration in class extension is weak
# -Wobjc-property-matches-cocoa-ownership-rule
# property follows Cocoa naming convention for returning 'owned' objects
# -Wobjc-property-no-attribute
# default property attribute 'assign' not appropriate for non-GC object
# no 'assign', 'retain', or 'copy' attribute is specified - 'assign' is assumed
# -Wobjc-property-synthesis
# auto property synthesis will not synthesize property A because it cannot share an ivar with another synthesized property
# auto property synthesis will not synthesize property A because it is 'readwrite' but it will be synthesized 'readonly' via another property
# auto property synthesis will not synthesize property A; it will be implemented by its superclass, use @dynamic to acknowledge intention
# -Wobjc-protocol-method-implementation
# category is implementing a method which will also be implemented by its primary class
# -Wobjc-protocol-property-synthesis
# auto property synthesis will not synthesize property A declared in protocol B
# -Wobjc-protocol-qualifiers
# parameterized class A already conforms to the protocols listed; did you forget a '*'?
# -Wobjc-readonly-with-setter-property
# setter cannot be specified for a readonly property
# -Wobjc-root-class
# class A defined without specifying a base class
# -Wobjc-string-concatenation
# concatenated NSString literal for an NSArray expression - possibly missing a comma
# -Wodr
# type A has incompatible definitions in different translation units
# -Wopenmp-clauses
# aligned clause will be ignored because the requested alignment is not a power of 2
# zero linear step (A [and other variables in clause ]should probably be const)
# -Wopenmp-loop-form
# OpenMP loop iteration variable cannot have more than 64 bits size and will be narrowed
# initialization clause of OpenMP for loop is not in canonical form ('var = init' or 'T var = init')
# -Woption-ignored
# option 'A' was ignored by the PS4 toolchain, using '-fPIC'
# -Wout-of-line-declaration
# out-of-line declaration of a member must be a definition
# -Woverride-module
# overriding the module target triple with A
# -Woverriding-t-option
# overriding 'A' option with 'B'
# -Wpass-failed
# The text of this diagnostic is not controlled by Clang
# -Wpch-date-time
# <precompiled header|module> uses __DATE__ or __TIME__
# -Wpointer-arith (partial)
# subtraction of pointers to type A of zero size has undefined behavior
# -Wpointer-sign
# <assigning to different types|passing to parameter of different type|returning from function with different return type|converting between types|initializing with expression of different type|sending to parameter of different type|casting between types> converts between pointers to integer types with different sign
# -Wpointer-type-mismatch
# pointer type mismatch
# -Wpragma-once-outside-header
# #pragma once in main file
# -Wpragma-system-header-outside-header
# #pragma system_header ignored in main file
# -Wpragmas (partial)
# #pragma redefine_extname is applicable to external C declarations only; not applied to <function|variable> B
# -Wignored-pragmas
# #pragma A(pop, ...) failed: B
# #pragma options align=reset failed: A
# '#pragma comment A' ignored
# '#pragma init_seg' is only supported when targeting a Microsoft environment
# expected #pragma pack parameter to be '1', '2', '4', '8', or '16'
# expected '#pragma unused' argument to be a variable name
# expected ')' or ',' in '#pragma A'
# expected '=' following '#pragma <align|options align>' - ignored
# expected 'align' following '#pragma options' - ignored
# expected 'compiler', 'lib', 'user', or a string literal for the section name in '#pragma A' - ignored
# expected 'enable' or 'disable' - ignoring
# expected a stack label or a string literal for the section name in '#pragma A' - ignored
# expected a string literal for the section name in '#pragma A' - ignored
# expected action or ')' in '#pragma A' - ignored
# expected identifier in '#pragma A' - ignored
# expected integer between A and B inclusive in '#pragma C' - ignored
# expected integer or identifier in '#pragma pack' - ignored
# expected non-wide string literal in '#pragma A'
# expected push, pop or a string literal for the section name in '#pragma A' - ignored
# extra tokens at end of '#pragma A' - ignored
# incorrect use of '#pragma ms_struct on|off' - ignored
# invalid alignment option in '#pragma <align|options align>' - ignored
# known but unsupported action 'B' for '#pragma A' - ignored
# missing '(' after '#pragma A' - ignoring
# missing ')' after '#pragma A' - ignoring
# missing ':' after A - ignoring
# missing ':' or ')' after A - ignoring
# missing argument to debug command 'A'
# only variables can be arguments to '#pragma unused'
# pragma pop_macro could not pop 'A', no matching push_macro
# undeclared variable A used as an argument for '#pragma unused'
# unexpected debug command 'A'
# unknown OpenCL extension A - ignoring
# unknown action 'B' for '#pragma A' - ignored
# unknown action for '#pragma A' - ignored
# -Wunknown-pragmas (partial)
# #pragma warning expected 'A'
# #pragma warning expected 'push', 'pop', 'default', 'disable', 'error', 'once', 'suppress', 1, 2, 3, or 4
# #pragma warning expected a warning number
# #pragma warning(push, level) requires a level between 0 and 4
# angle-bracketed include <A> cannot be aliased to double-quoted include "B"
# double-quoted include "A" cannot be aliased to angle-bracketed include <B>
# expected 'ON' or 'OFF' or 'DEFAULT' in pragma
# expected end of directive in pragma
# pragma STDC FENV_ACCESS ON is not supported, ignoring pragma
# pragma diagnostic expected 'error', 'warning', 'ignored', 'fatal', 'push', or 'pop'
# pragma diagnostic expected option name (e.g. "-Wundef")
# pragma diagnostic pop could not pop, no matching push
# pragma include_alias expected 'A'
# pragma include_alias expected include filename
# unexpected token in pragma diagnostic
# unknown pragma in STDC namespace
# unknown warning group 'A', ignored
# -Wpredefined-identifier-outside-function
# predefined identifier is only valid inside function
# -Wprivate-header
# use of private header from outside its module: 'A'
# -Wprofile-instr-out-of-date
# profile data may be out of date: of A function(s), B <has|have> no data and C <has|have> mismatched data that will be ignored
# -Wprofile-instr-unprofiled
# no profile data available for file "A"
# -Wproperty-access-dot-syntax
# property A not found on object of type B; did you mean to access property C?
# -Wproperty-attribute-mismatch
# 'B' attribute on property A does not match the property inherited from C
# attribute 'readonly' of property A restricts attribute 'readwrite' of property inherited from B
# getter name mismatch between property redeclaration (B) and its original declaration (A)
# property attribute in class extension does not match the primary class
# -Wprotocol
# method A in protocol B not implemented
# -Wprotocol-property-synthesis-ambiguity
# property of type A was selected for synthesis
# -Wqualified-void-return-type
# function cannot return qualified void type A
# -Wreadonly-iboutlet-property
# readonly IBOutlet property A when auto-synthesized may not work correctly with 'nib' loader
# -Wreceiver-expr
# receiver type A is not 'id' or interface pointer, consider casting it to 'id'
# -Wreceiver-forward-class (partial)
# receiver A is a forward class and corresponding @interface may not exist
# -Wregister
# ISO C++1z does not allow 'register' storage class specifier
# -Wdeprecated-register
# 'register' storage class specifier is deprecated and incompatible with C++1z
# -Wreinterpret-base-class
# 'reinterpret_cast' <from|to> class A <to|from> its <virtual base|base at non-zero offset> B behaves differently from 'static_cast'
# -Wrequires-super-attribute
# A attribute cannot be applied to <methods in protocols|dealloc>
# -Wreserved-user-defined-literal (partial)
# invalid suffix on literal; C++11 requires a space between literal and identifier
# -Wreturn-stack-address
# <address of|reference to> stack memory associated with local variable B returned