mirror of https://github.com/microsoft/clang.git
Update DiagnosticsReference and fix emitter to emit -Wpedantic diagnostics and groups in a deterministic order.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@281433 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
6c177e5153
commit
b7ad5ad5f8
|
@ -2769,7 +2769,8 @@ This diagnostic is enabled by default.
|
||||||
|
|
||||||
-Wdiv-by-zero
|
-Wdiv-by-zero
|
||||||
-------------
|
-------------
|
||||||
This diagnostic flag exists for GCC compatibility, and has no effect in Clang.
|
Synonym for `-Wdivision-by-zero`_.
|
||||||
|
|
||||||
|
|
||||||
-Wdivision-by-zero
|
-Wdivision-by-zero
|
||||||
------------------
|
------------------
|
||||||
|
@ -3107,7 +3108,8 @@ This diagnostic is enabled by default.
|
||||||
|
|
||||||
-Weffc++
|
-Weffc++
|
||||||
--------
|
--------
|
||||||
This diagnostic flag exists for GCC compatibility, and has no effect in Clang.
|
Synonym for `-Wnon-virtual-dtor`_.
|
||||||
|
|
||||||
|
|
||||||
-Wembedded-directive
|
-Wembedded-directive
|
||||||
--------------------
|
--------------------
|
||||||
|
@ -4320,6 +4322,8 @@ This diagnostic is enabled by default.
|
||||||
| |+----------------------------------------------------------------------------------------------------------------+|
|
| |+----------------------------------------------------------------------------------------------------------------+|
|
||||||
| ||:diagtext:`Objective-C protocols` ||
|
| ||:diagtext:`Objective-C protocols` ||
|
||||||
| |+----------------------------------------------------------------------------------------------------------------+|
|
| |+----------------------------------------------------------------------------------------------------------------+|
|
||||||
|
| ||:diagtext:`variables with static or thread storage duration` ||
|
||||||
|
| |+----------------------------------------------------------------------------------------------------------------+|
|
||||||
| ||:diagtext:`functions and global variables` ||
|
| ||:diagtext:`functions and global variables` ||
|
||||||
| |+----------------------------------------------------------------------------------------------------------------+|
|
| |+----------------------------------------------------------------------------------------------------------------+|
|
||||||
| ||:diagtext:`structs, unions, and typedefs` ||
|
| ||:diagtext:`structs, unions, and typedefs` ||
|
||||||
|
@ -4608,6 +4612,14 @@ This diagnostic is enabled by default.
|
||||||
|:warning:`warning:` |nbsp| :diagtext:`'#pragma init\_seg' is only supported when targeting a Microsoft environment`|
|
|:warning:`warning:` |nbsp| :diagtext:`'#pragma init\_seg' is only supported when targeting a Microsoft environment`|
|
||||||
+-------------------------------------------------------------------------------------------------------------------+
|
+-------------------------------------------------------------------------------------------------------------------+
|
||||||
|
|
||||||
|
+------------------------------------------------------------------------------------------+------------------------------------------------------------------------------+
|
||||||
|
|:warning:`warning:` |nbsp| :placeholder:`A` |nbsp| :diagtext:`is not a recognized builtin`|+----------------------------------------------------------------------------+|
|
||||||
|
| || ||
|
||||||
|
| |+----------------------------------------------------------------------------+|
|
||||||
|
| ||:diagtext:`; consider including <intrin.h> to access non-builtin intrinsics`||
|
||||||
|
| |+----------------------------------------------------------------------------+|
|
||||||
|
+------------------------------------------------------------------------------------------+------------------------------------------------------------------------------+
|
||||||
|
|
||||||
+-----------------------------------------------------------------------------------------------------------------+
|
+-----------------------------------------------------------------------------------------------------------------+
|
||||||
|:warning:`warning:` |nbsp| :diagtext:`unknown action for '#pragma` |nbsp| :placeholder:`A`:diagtext:`' - ignored`|
|
|:warning:`warning:` |nbsp| :diagtext:`unknown action for '#pragma` |nbsp| :placeholder:`A`:diagtext:`' - ignored`|
|
||||||
+-----------------------------------------------------------------------------------------------------------------+
|
+-----------------------------------------------------------------------------------------------------------------+
|
||||||
|
@ -7446,131 +7458,37 @@ This diagnostic is enabled by default.
|
||||||
|
|
||||||
-Wpedantic
|
-Wpedantic
|
||||||
----------
|
----------
|
||||||
Also controls `-Wgnu-union-cast`_, `-Wdollar-in-identifier-extension`_, `-Wgnu-zero-line-directive`_, `-Wc11-extensions`_, `-Wgnu-flexible-array-union-member`_, `-Wvariadic-macros`_, `-Wempty-translation-unit`_, `-Wgnu-include-next`_, `-Wembedded-directive`_, `-Wgnu-statement-expression`_, `-Wimport-preprocessor-directive-pedantic`_, `-Wfour-char-constants`_, `-Wgnu-conditional-omitted-operand`_, `-Wgnu-redeclared-enum`_, `-Wmicrosoft-enum-forward-reference`_, `-Wc++14-binary-literal`_, `-Wgnu-empty-initializer`_, `-Wmicrosoft-charize`_, `-Wdeclaration-after-statement`_, `-Woverlength-strings`_, `-Wcomplex-component-init`_, `-Wmicrosoft-end-of-file`_, `-Wgnu-folding-constant`_, `-Wmicrosoft-fixed-enum`_, `-Wkeyword-macro`_, `-Wlong-long`_, `-Wgnu-compound-literal-initializer`_, `-Wc++11-extra-semi`_, `-Wformat-pedantic`_, `-Wnullability-extension`_, `-Wgnu-flexible-array-initializer`_, `-Wmicrosoft-flexible-array`_, `-Wmicrosoft-cpp-macro`_, `-Wgnu-case-range`_, `-Wvla-extension`_, `-Wgnu-zero-variadic-macro-arguments`_, `-Wlanguage-extension-token`_, `-Wgnu-empty-struct`_, `-Wgnu-auto-type`_, `-Wzero-length-array`_, `-Wgnu-complex-integer`_, `-Wmicrosoft-redeclare-static`_, `-Wc++11-long-long`_, `-Wretained-language-linkage`_, `-Wgnu-imaginary-constant`_, `-Wgnu-anonymous-struct`_, `-Wflexible-array-extensions`_, `-Wgnu-binary-literal`_, `-Wgnu-label-as-value`_, `-Wnested-anon-types`_, `-Wmicrosoft-comment-paste`_, `-Wextended-offsetof`_.
|
Also controls `-Wretained-language-linkage`_, `-Wcomplex-component-init`_, `-Wextended-offsetof`_, `-Wnested-anon-types`_, `-Wdeclaration-after-statement`_, `-Wempty-translation-unit`_, `-Wnullability-extension`_, `-Wdollar-in-identifier-extension`_, `-Wlanguage-extension-token`_, `-Wimport-preprocessor-directive-pedantic`_, `-Wembedded-directive`_, `-Wgnu-anonymous-struct`_, `-Wgnu-auto-type`_, `-Wc++14-binary-literal`_, `-Wgnu-binary-literal`_, `-Wgnu-compound-literal-initializer`_, `-Wgnu-case-range`_, `-Wgnu-complex-integer`_, `-Wgnu-conditional-omitted-operand`_, `-Wgnu-empty-initializer`_, `-Wgnu-empty-struct`_, `-Wc++11-extra-semi`_, `-Wgnu-flexible-array-initializer`_, `-Wgnu-flexible-array-union-member`_, `-Wgnu-folding-constant`_, `-Wflexible-array-extensions`_, `-Wfour-char-constants`_, `-Wgnu-imaginary-constant`_, `-Wgnu-include-next`_, `-Wgnu-label-as-value`_, `-Wc++11-long-long`_, `-Wlong-long`_, `-Woverlength-strings`_, `-Wgnu-redeclared-enum`_, `-Wgnu-statement-expression`_, `-Wgnu-union-cast`_, `-Wkeyword-macro`_, `-Wvariadic-macros`_, `-Wvla-extension`_, `-Wzero-length-array`_, `-Wgnu-zero-line-directive`_, `-Wgnu-zero-variadic-macro-arguments`_, `-Wformat-pedantic`_, `-Wc11-extensions`_, `-Wmicrosoft-charize`_, `-Wmicrosoft-cpp-macro`_, `-Wmicrosoft-fixed-enum`_, `-Wmicrosoft-redeclare-static`_, `-Wmicrosoft-enum-forward-reference`_, `-Wmicrosoft-flexible-array`_, `-Wmicrosoft-comment-paste`_, `-Wmicrosoft-end-of-file`_.
|
||||||
|
|
||||||
**Diagnostic text:**
|
**Diagnostic text:**
|
||||||
|
|
||||||
+----------------------------------------------------+-----------------------+---------------------------+---------------+----------------------+-------------------------+---------------------------------+---------------+------------------------+---------------------------------------------------+--------------------------------------+
|
|
||||||
|:warning:`warning:` |nbsp| :diagtext:`arithmetic on`|+---------------------+| |nbsp| :diagtext:`pointer`|+-------------+| |nbsp| :diagtext:`to`|+-----------------------+| |nbsp| :diagtext:`function type`|+-------------+| |nbsp| :placeholder:`B`|+-------------------------------------------------+| |nbsp| :diagtext:`is a GNU extension`|
|
|
||||||
| || |nbsp| :diagtext:`a`|| || || || |nbsp| :diagtext:`the`|| || || || || |
|
|
||||||
| |+---------------------+| |+-------------+| |+-----------------------+| |+-------------+| |+-------------------------------------------------+| |
|
|
||||||
| || || ||:diagtext:`s`|| || || ||:diagtext:`s`|| ||+-----------------------------------------------+|| |
|
|
||||||
| |+---------------------+| |+-------------+| |+-----------------------+| |+-------------+| ||| |nbsp| :diagtext:`and` |nbsp| :placeholder:`D`||| |
|
|
||||||
| | | | | | | | | ||+-----------------------------------------------+|| |
|
|
||||||
| | | | | | | | | |+-------------------------------------------------+| |
|
|
||||||
+----------------------------------------------------+-----------------------+---------------------------+---------------+----------------------+-------------------------+---------------------------------+---------------+------------------------+---------------------------------------------------+--------------------------------------+
|
|
||||||
|
|
||||||
+---------------------------------------------------------------+-----------------------+----------------------------+
|
|
||||||
|:warning:`warning:` |nbsp| :diagtext:`invalid application of '`|+---------------------+|:diagtext:`' to a void type`|
|
|
||||||
| ||:diagtext:`sizeof` || |
|
|
||||||
| |+---------------------+| |
|
|
||||||
| ||:diagtext:`alignof` || |
|
|
||||||
| |+---------------------+| |
|
|
||||||
| ||:diagtext:`vec\_step`|| |
|
|
||||||
| |+---------------------+| |
|
|
||||||
+---------------------------------------------------------------+-----------------------+----------------------------+
|
|
||||||
|
|
||||||
+----------------------------------------------------------------------------------------------------------------+
|
|
||||||
|:warning:`warning:` |nbsp| :diagtext:`\_\_VA\_ARGS\_\_ can only appear in the expansion of a C99 variadic macro`|
|
|
||||||
+----------------------------------------------------------------------------------------------------------------+
|
|
||||||
|
|
||||||
+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
|
||||||
|:warning:`warning:` |nbsp| :diagtext:`ordered comparison between pointer and zero (`:placeholder:`A` |nbsp| :diagtext:`and` |nbsp| :placeholder:`B`:diagtext:`) is an extension`|
|
|
||||||
+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
|
||||||
|
|
||||||
+---------------------------------------------------------------------------------------+
|
|
||||||
|:warning:`warning:` |nbsp| :diagtext:`ISO C forbids forward references to 'enum' types`|
|
|
||||||
+---------------------------------------------------------------------------------------+
|
|
||||||
|
|
||||||
+---------------------------------------------------------------------------------------------------------------------------+
|
|
||||||
|:warning:`warning:` |nbsp| :diagtext:`use of the` |nbsp| :placeholder:`A` |nbsp| :diagtext:`attribute is a C++1z extension`|
|
|
||||||
+---------------------------------------------------------------------------------------------------------------------------+
|
|
||||||
|
|
||||||
+------------------------------------------------------------------------------------------------------------+
|
|
||||||
|:warning:`warning:` |nbsp| :diagtext:`use of non-standard escape character '\\`:placeholder:`A`:diagtext:`'`|
|
|
||||||
+------------------------------------------------------------------------------------------------------------+
|
|
||||||
|
|
||||||
+---------------------------+----------------------------------+------------------------------+-----------------------+----------------------------+
|
|
||||||
|:warning:`warning:` |nbsp| |+--------------------------------+|:diagtext:`array size` |nbsp| |+---------------------+|:diagtext:`is a C99 feature`|
|
|
||||||
| ||:diagtext:`qualifier in` |nbsp| || || || |
|
|
||||||
| |+--------------------------------+| |+---------------------+| |
|
|
||||||
| ||:diagtext:`static` |nbsp| || || || |
|
|
||||||
| |+--------------------------------+| |+---------------------+| |
|
|
||||||
| || || ||:diagtext:`'\[\*\] '`|| |
|
|
||||||
| |+--------------------------------+| |+---------------------+| |
|
|
||||||
+---------------------------+----------------------------------+------------------------------+-----------------------+----------------------------+
|
|
||||||
|
|
||||||
+----------------------------------------------------------------+
|
|
||||||
|:warning:`warning:` |nbsp| :diagtext:`no newline at end of file`|
|
|
||||||
+----------------------------------------------------------------+
|
|
||||||
|
|
||||||
+-------------------------------------------------------------------------------------------------+
|
|
||||||
|:warning:`warning:` |nbsp| :diagtext:`macro expansion producing 'defined' has undefined behavior`|
|
|
||||||
+-------------------------------------------------------------------------------------------------+
|
|
||||||
|
|
||||||
+------------------------------------------------------------------------------------------------+
|
|
||||||
|:warning:`warning:` |nbsp| :diagtext:`exception specification of '...' is a Microsoft extension`|
|
|
||||||
+------------------------------------------------------------------------------------------------+
|
|
||||||
|
|
||||||
+-------------------------------------------------------------------------------------------------+
|
|
||||||
|:warning:`warning:` |nbsp| :diagtext:`variable declaration in for loop is a C99-specific feature`|
|
|
||||||
+-------------------------------------------------------------------------------------------------+
|
|
||||||
|
|
||||||
+---------------------------------------------------------------------------------------------------------------------------------------------------+-------------------------+----------------------------------------------------------------------------------------+
|
|
||||||
|:warning:`warning:` |nbsp| :diagtext:`implicit conversion from array size expression of type` |nbsp| :placeholder:`A` |nbsp| :diagtext:`to` |nbsp| |+-----------------------+| |nbsp| :diagtext:`type` |nbsp| :placeholder:`C` |nbsp| :diagtext:`is a C++11 extension`|
|
|
||||||
| ||:diagtext:`integral` || |
|
|
||||||
| |+-----------------------+| |
|
|
||||||
| ||:diagtext:`enumeration`|| |
|
|
||||||
| |+-----------------------+| |
|
|
||||||
+---------------------------------------------------------------------------------------------------------------------------------------------------+-------------------------+----------------------------------------------------------------------------------------+
|
|
||||||
|
|
||||||
+-------------------------------------------------------------------------------------------------------------+
|
|
||||||
|:warning:`warning:` |nbsp| :diagtext:`cast between pointer-to-function and pointer-to-object is an extension`|
|
|
||||||
+-------------------------------------------------------------------------------------------------------------+
|
|
||||||
|
|
||||||
+------------------------------------------------------------------------+
|
+------------------------------------------------------------------------+
|
||||||
|:warning:`warning:` |nbsp| :diagtext:`'enable\_if' is a clang extension`|
|
|:warning:`warning:` |nbsp| :diagtext:`'enable\_if' is a clang extension`|
|
||||||
+------------------------------------------------------------------------+
|
+------------------------------------------------------------------------+
|
||||||
|
|
||||||
+---------------------------------------------------------------------------------------+
|
+--------------------------------------------------------------------------------+
|
||||||
|:warning:`warning:` |nbsp| :diagtext:`hexadecimal floating constants are a C99 feature`|
|
|:warning:`warning:` |nbsp| :diagtext:`designated initializers are a C99 feature`|
|
||||||
+---------------------------------------------------------------------------------------+
|
+--------------------------------------------------------------------------------+
|
||||||
|
|
||||||
+-------------------------------------------------------------------------------------------------------------------------------------+
|
+--------------------------------------------------------------------------------------------+
|
||||||
|:warning:`warning:` |nbsp| :diagtext:`C99 forbids casting nonscalar type` |nbsp| :placeholder:`A` |nbsp| :diagtext:`to the same type`|
|
|:warning:`warning:` |nbsp| :diagtext:`ISO C++ does not allow 'main' to be used by a program`|
|
||||||
+-------------------------------------------------------------------------------------------------------------------------------------+
|
+--------------------------------------------------------------------------------------------+
|
||||||
|
|
||||||
+-------------------------------------------------------------------------------------------------------+
|
+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+-----------------------+
|
||||||
|:warning:`warning:` |nbsp| :diagtext:`ISO C forbids taking the address of an expression of type 'void'`|
|
|:warning:`warning:` |nbsp| :diagtext:`C++98 requires an accessible copy constructor for class` |nbsp| :placeholder:`C` |nbsp| :diagtext:`when binding a reference to a temporary; was` |nbsp| |+---------------------+|
|
||||||
+-------------------------------------------------------------------------------------------------------+
|
| ||:diagtext:`private` ||
|
||||||
|
| |+---------------------+|
|
||||||
|
| ||:diagtext:`protected`||
|
||||||
|
| |+---------------------+|
|
||||||
|
+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+-----------------------+
|
||||||
|
|
||||||
+---------------------------------------------------------------------+
|
+--------------------------------------------------------+--------------------+------------------------------------------------------------+
|
||||||
|:warning:`warning:` |nbsp| :diagtext:`#ident is a language extension`|
|
|:warning:`warning:` |nbsp| :diagtext:`anonymous` |nbsp| |+------------------+| |nbsp| :diagtext:`cannot be '`:placeholder:`B`:diagtext:`'`|
|
||||||
+---------------------------------------------------------------------+
|
| ||:diagtext:`struct`|| |
|
||||||
|
| |+------------------+| |
|
||||||
+-----------------------------------------------------------------------------------------------+
|
| ||:diagtext:`union` || |
|
||||||
|:warning:`warning:` |nbsp| :diagtext:`initializer for aggregate is not a compile-time constant`|
|
| |+------------------+| |
|
||||||
+-----------------------------------------------------------------------------------------------+
|
+--------------------------------------------------------+--------------------+------------------------------------------------------------+
|
||||||
|
|
||||||
+--------------------------------------------------------------------------------------------------+
|
|
||||||
|:warning:`warning:` |nbsp| :diagtext:`'`:placeholder:`A`:diagtext:`' cannot be signed or unsigned`|
|
|
||||||
+--------------------------------------------------------------------------------------------------+
|
|
||||||
|
|
||||||
+-------------------------------------------------------------------------------------------+
|
|
||||||
|:warning:`warning:` |nbsp| :diagtext:`ISO C90 does not allow subscripting non-lvalue array`|
|
|
||||||
+-------------------------------------------------------------------------------------------+
|
|
||||||
|
|
||||||
+-------------------------------------------------------------------------------+
|
|
||||||
|:warning:`warning:` |nbsp| :diagtext:`flexible array members are a C99 feature`|
|
|
||||||
+-------------------------------------------------------------------------------+
|
|
||||||
|
|
||||||
+-----------------------------------------------------------------------+
|
|
||||||
|:warning:`warning:` |nbsp| :diagtext:`use of GNU array range extension`|
|
|
||||||
+-----------------------------------------------------------------------+
|
|
||||||
|
|
||||||
+------------------------------------------------------------------------------+
|
|
||||||
|:warning:`warning:` |nbsp| :diagtext:`empty macro arguments are a C99 feature`|
|
|
||||||
+------------------------------------------------------------------------------+
|
|
||||||
|
|
||||||
+--------------------------------------------------------------------+-----------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------+
|
+--------------------------------------------------------------------+-----------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------+
|
||||||
|:warning:`warning:` |nbsp| :diagtext:`no viable constructor` |nbsp| |+---------------------------------------+| |nbsp| :diagtext:`of type` |nbsp| :placeholder:`B`:diagtext:`; C++98 requires a copy constructor when binding a reference to a temporary`|
|
|:warning:`warning:` |nbsp| :diagtext:`no viable constructor` |nbsp| |+---------------------------------------+| |nbsp| :diagtext:`of type` |nbsp| :placeholder:`B`:diagtext:`; C++98 requires a copy constructor when binding a reference to a temporary`|
|
||||||
|
@ -7598,46 +7516,14 @@ Also controls `-Wgnu-union-cast`_, `-Wdollar-in-identifier-extension`_, `-Wgnu-z
|
||||||
| |+---------------------------------------+| |
|
| |+---------------------------------------+| |
|
||||||
+--------------------------------------------------------------------+-----------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------+
|
+--------------------------------------------------------------------+-----------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------+
|
||||||
|
|
||||||
+--------------------------------------------------------------------------------------------------------------------+
|
|
||||||
|:warning:`warning:` |nbsp| :diagtext:`ISO C does not support '~' for complex conjugation of` |nbsp| :placeholder:`A`|
|
|
||||||
+--------------------------------------------------------------------------------------------------------------------+
|
|
||||||
|
|
||||||
+-----------------------------------------------------------------------------+--------------------+---------------------------------------------+
|
|
||||||
|:warning:`warning:` |nbsp| :diagtext:`types declared in an anonymous` |nbsp| |+------------------+| |nbsp| :diagtext:`are a Microsoft extension`|
|
|
||||||
| ||:diagtext:`struct`|| |
|
|
||||||
| |+------------------+| |
|
|
||||||
| ||:diagtext:`union` || |
|
|
||||||
| |+------------------+| |
|
|
||||||
+-----------------------------------------------------------------------------+--------------------+---------------------------------------------+
|
|
||||||
|
|
||||||
+--------------------------------------------------------------------------------------------------------------------------------------+
|
+--------------------------------------------------------------------------------------------------------------------------------------+
|
||||||
|:warning:`warning:` |nbsp| :diagtext:`parameter` |nbsp| :placeholder:`A` |nbsp| :diagtext:`was not declared, defaulting to type 'int'`|
|
|:warning:`warning:` |nbsp| :diagtext:`parameter` |nbsp| :placeholder:`A` |nbsp| :diagtext:`was not declared, defaulting to type 'int'`|
|
||||||
+--------------------------------------------------------------------------------------------------------------------------------------+
|
+--------------------------------------------------------------------------------------------------------------------------------------+
|
||||||
|
|
||||||
+--------------------------------------------------------------------------------------------+
|
|
||||||
|:warning:`warning:` |nbsp| :diagtext:`ISO C++ does not allow 'main' to be used by a program`|
|
|
||||||
+--------------------------------------------------------------------------------------------+
|
|
||||||
|
|
||||||
+-----------------------------------------------------------------------------+
|
|
||||||
|:warning:`warning:` |nbsp| :diagtext:`extern templates are a C++11 extension`|
|
|
||||||
+-----------------------------------------------------------------------------+
|
|
||||||
|
|
||||||
+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
||||||
|:warning:`warning:` |nbsp| :diagtext:`qualifier in explicit instantiation of` |nbsp| :placeholder:`A` |nbsp| :diagtext:`requires a template-id (a typedef is not permitted)`|
|
|:warning:`warning:` |nbsp| :diagtext:`qualifier in explicit instantiation of` |nbsp| :placeholder:`A` |nbsp| :diagtext:`requires a template-id (a typedef is not permitted)`|
|
||||||
+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
||||||
|
|
||||||
+----------------------------------------------------+-----------------------+---------------------------+---------------+----------------------------------------------+
|
|
||||||
|:warning:`warning:` |nbsp| :diagtext:`arithmetic on`|+---------------------+| |nbsp| :diagtext:`pointer`|+-------------+| |nbsp| :diagtext:`to void is a GNU extension`|
|
|
||||||
| || |nbsp| :diagtext:`a`|| || || |
|
|
||||||
| |+---------------------+| |+-------------+| |
|
|
||||||
| || || ||:diagtext:`s`|| |
|
|
||||||
| |+---------------------+| |+-------------+| |
|
|
||||||
+----------------------------------------------------+-----------------------+---------------------------+---------------+----------------------------------------------+
|
|
||||||
|
|
||||||
+-----------------------------------------------------------------------+
|
|
||||||
|:warning:`warning:` |nbsp| :diagtext:`comma operator in operand of #if`|
|
|
||||||
+-----------------------------------------------------------------------+
|
|
||||||
|
|
||||||
+-----------------------------------------------------+----------------------+-----------------------------------------------------------------------------------------------+
|
+-----------------------------------------------------+----------------------+-----------------------------------------------------------------------------------------------+
|
||||||
|:warning:`warning:` |nbsp| :diagtext:`static` |nbsp| |+--------------------+| |nbsp| :placeholder:`B` |nbsp| :diagtext:`is used in an inline function with external linkage`|
|
|:warning:`warning:` |nbsp| :diagtext:`static` |nbsp| |+--------------------+| |nbsp| :placeholder:`B` |nbsp| :diagtext:`is used in an inline function with external linkage`|
|
||||||
| ||:diagtext:`function`|| |
|
| ||:diagtext:`function`|| |
|
||||||
|
@ -7646,21 +7532,9 @@ Also controls `-Wgnu-union-cast`_, `-Wdollar-in-identifier-extension`_, `-Wgnu-z
|
||||||
| |+--------------------+| |
|
| |+--------------------+| |
|
||||||
+-----------------------------------------------------+----------------------+-----------------------------------------------------------------------------------------------+
|
+-----------------------------------------------------+----------------------+-----------------------------------------------------------------------------------------------+
|
||||||
|
|
||||||
+--------------------------------------------------------+--------------------+------------------------------------------------------------+
|
+---------------------------------------------------------------------------------------+
|
||||||
|:warning:`warning:` |nbsp| :diagtext:`anonymous` |nbsp| |+------------------+| |nbsp| :diagtext:`cannot be '`:placeholder:`B`:diagtext:`'`|
|
|:warning:`warning:` |nbsp| :diagtext:`ISO C forbids forward references to 'enum' types`|
|
||||||
| ||:diagtext:`struct`|| |
|
+---------------------------------------------------------------------------------------+
|
||||||
| |+------------------+| |
|
|
||||||
| ||:diagtext:`union` || |
|
|
||||||
| |+------------------+| |
|
|
||||||
+--------------------------------------------------------+--------------------+------------------------------------------------------------+
|
|
||||||
|
|
||||||
+-----------------------------------------------------------------------------------------------------------------------+
|
|
||||||
|:warning:`warning:` |nbsp| :diagtext:`ISO C does not support '++'/'--' on complex integer type` |nbsp| :placeholder:`A`|
|
|
||||||
+-----------------------------------------------------------------------------------------------------------------------+
|
|
||||||
|
|
||||||
+--------------------------------------------------------------------------------------------------+
|
|
||||||
|:warning:`warning:` |nbsp| :diagtext:`commas at the end of enumerator lists are a C++11 extension`|
|
|
||||||
+--------------------------------------------------------------------------------------------------+
|
|
||||||
|
|
||||||
+----------------------------------------------------------------------------------------------------------------------------------------------+-------------------+-------------+
|
+----------------------------------------------------------------------------------------------------------------------------------------------+-------------------+-------------+
|
||||||
|:warning:`warning:` |nbsp| :diagtext:`ISO C restricts enumerator values to range of 'int' (`:placeholder:`A` |nbsp| :diagtext:`is too` |nbsp| |+-----------------+|:diagtext:`)`|
|
|:warning:`warning:` |nbsp| :diagtext:`ISO C restricts enumerator values to range of 'int' (`:placeholder:`A` |nbsp| :diagtext:`is too` |nbsp| |+-----------------+|:diagtext:`)`|
|
||||||
|
@ -7670,63 +7544,99 @@ Also controls `-Wgnu-union-cast`_, `-Wdollar-in-identifier-extension`_, `-Wgnu-z
|
||||||
| |+-----------------+| |
|
| |+-----------------+| |
|
||||||
+----------------------------------------------------------------------------------------------------------------------------------------------+-------------------+-------------+
|
+----------------------------------------------------------------------------------------------------------------------------------------------+-------------------+-------------+
|
||||||
|
|
||||||
+---------------------------------------------------------------------------------------------------------------------------+
|
+--------------------------------------------------------------------------------------------------+
|
||||||
|:warning:`warning:` |nbsp| :diagtext:`use of the` |nbsp| :placeholder:`A` |nbsp| :diagtext:`attribute is a C++14 extension`|
|
|:warning:`warning:` |nbsp| :diagtext:`size of static array must be an integer constant expression`|
|
||||||
+---------------------------------------------------------------------------------------------------------------------------+
|
+--------------------------------------------------------------------------------------------------+
|
||||||
|
|
||||||
|
+-----------------------------------------------------------------------------------------------+
|
||||||
|
|:warning:`warning:` |nbsp| :diagtext:`initializer for aggregate is not a compile-time constant`|
|
||||||
|
+-----------------------------------------------------------------------------------------------+
|
||||||
|
|
||||||
|
+-------------------------------------------------------------------------------+
|
||||||
|
|:warning:`warning:` |nbsp| :diagtext:`flexible array members are a C99 feature`|
|
||||||
|
+-------------------------------------------------------------------------------+
|
||||||
|
|
||||||
|
+---------------------------------------------------------------+-----------------------+--------------------------------+
|
||||||
|
|:warning:`warning:` |nbsp| :diagtext:`invalid application of '`|+---------------------+|:diagtext:`' to a function type`|
|
||||||
|
| ||:diagtext:`sizeof` || |
|
||||||
|
| |+---------------------+| |
|
||||||
|
| ||:diagtext:`alignof` || |
|
||||||
|
| |+---------------------+| |
|
||||||
|
| ||:diagtext:`vec\_step`|| |
|
||||||
|
| |+---------------------+| |
|
||||||
|
+---------------------------------------------------------------+-----------------------+--------------------------------+
|
||||||
|
|
||||||
|
+---------------------------------------------------------------+-----------------------+----------------------------+
|
||||||
|
|:warning:`warning:` |nbsp| :diagtext:`invalid application of '`|+---------------------+|:diagtext:`' to a void type`|
|
||||||
|
| ||:diagtext:`sizeof` || |
|
||||||
|
| |+---------------------+| |
|
||||||
|
| ||:diagtext:`alignof` || |
|
||||||
|
| |+---------------------+| |
|
||||||
|
| ||:diagtext:`vec\_step`|| |
|
||||||
|
| |+---------------------+| |
|
||||||
|
+---------------------------------------------------------------+-----------------------+----------------------------+
|
||||||
|
|
||||||
|
+-------------------------------------------------------------------------------------------+
|
||||||
|
|:warning:`warning:` |nbsp| :diagtext:`ISO C90 does not allow subscripting non-lvalue array`|
|
||||||
|
+-------------------------------------------------------------------------------------------+
|
||||||
|
|
||||||
+----------------------------------------------------------------------------------------+
|
+----------------------------------------------------------------------------------------+
|
||||||
|:warning:`warning:` |nbsp| :diagtext:`hexadecimal floating literals are a C++1z feature`|
|
|:warning:`warning:` |nbsp| :diagtext:`subscript of a pointer to void is a GNU extension`|
|
||||||
+----------------------------------------------------------------------------------------+
|
+----------------------------------------------------------------------------------------+
|
||||||
|
|
||||||
+--------------------------------------------------------------------------------------------------------------------------------------------------------+
|
+-------------------------------------------------------------------------------------------------------+
|
||||||
|:warning:`warning:` |nbsp| :diagtext:`kernel function` |nbsp| :placeholder:`A` |nbsp| :diagtext:`is a member function; this may not be accepted by nvcc`|
|
|:warning:`warning:` |nbsp| :diagtext:`ISO C forbids taking the address of an expression of type 'void'`|
|
||||||
+--------------------------------------------------------------------------------------------------------------------------------------------------------+
|
+-------------------------------------------------------------------------------------------------------+
|
||||||
|
|
||||||
+----------------------------------------------------------------------------------------+
|
+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
||||||
|:warning:`warning:` |nbsp| :diagtext:`type-less parameter names in function declaration`|
|
|:warning:`warning:` |nbsp| :diagtext:`ordered comparison between pointer and zero (`:placeholder:`A` |nbsp| :diagtext:`and` |nbsp| :placeholder:`B`:diagtext:`) is an extension`|
|
||||||
+----------------------------------------------------------------------------------------+
|
+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
||||||
|
|
||||||
+----------------------------------------------------------------------------------------------------------------------------------------+
|
|
||||||
|:warning:`warning:` |nbsp| :diagtext:`C requires #line number to be less than` |nbsp| :placeholder:`A`:diagtext:`, allowed as extension`|
|
|
||||||
+----------------------------------------------------------------------------------------------------------------------------------------+
|
|
||||||
|
|
||||||
+---------------------------------------------------+----------------------+-----------------------------------------------------------------------------+
|
|
||||||
|:warning:`warning:` |nbsp| :diagtext:`void` |nbsp| |+--------------------+| |nbsp| :placeholder:`A` |nbsp| :diagtext:`should not return void expression`|
|
|
||||||
| ||:diagtext:`function`|| |
|
|
||||||
| |+--------------------+| |
|
|
||||||
| ||:diagtext:`method` || |
|
|
||||||
| |+--------------------+| |
|
|
||||||
| ||:diagtext:`block` || |
|
|
||||||
| |+--------------------+| |
|
|
||||||
+---------------------------------------------------+----------------------+-----------------------------------------------------------------------------+
|
|
||||||
|
|
||||||
+------------------------------------------------------------------------------------------------------------+
|
|
||||||
|:warning:`warning:` |nbsp| :diagtext:`complex numbers are an extension in a freestanding C99 implementation`|
|
|
||||||
+------------------------------------------------------------------------------------------------------------+
|
|
||||||
|
|
||||||
+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
||||||
|:warning:`warning:` |nbsp| :diagtext:`equality comparison between function pointer and void pointer (`:placeholder:`A` |nbsp| :diagtext:`and` |nbsp| :placeholder:`B`:diagtext:`)`|
|
|:warning:`warning:` |nbsp| :diagtext:`equality comparison between function pointer and void pointer (`:placeholder:`A` |nbsp| :diagtext:`and` |nbsp| :placeholder:`B`:diagtext:`)`|
|
||||||
+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
||||||
|
|
||||||
+-----------------------------------------------------------------------------------------+
|
+----------------------------------------------------+-----------------------+---------------------------+---------------+----------------------------------------------+
|
||||||
|:warning:`warning:` |nbsp| :diagtext:`'\_\_thread' before '`:placeholder:`A`:diagtext:`'`|
|
|:warning:`warning:` |nbsp| :diagtext:`arithmetic on`|+---------------------+| |nbsp| :diagtext:`pointer`|+-------------+| |nbsp| :diagtext:`to void is a GNU extension`|
|
||||||
+-----------------------------------------------------------------------------------------+
|
| || |nbsp| :diagtext:`a`|| || || |
|
||||||
|
| |+---------------------+| |+-------------+| |
|
||||||
|
| || || ||:diagtext:`s`|| |
|
||||||
|
| |+---------------------+| |+-------------+| |
|
||||||
|
+----------------------------------------------------+-----------------------+---------------------------+---------------+----------------------------------------------+
|
||||||
|
|
||||||
+--------------------------------------------------------------------------------------------------+
|
+----------------------------------------------------+-----------------------+---------------------------+---------------+----------------------+-------------------------+---------------------------------+---------------+------------------------+---------------------------------------------------+--------------------------------------+
|
||||||
|:warning:`warning:` |nbsp| :diagtext:`C99 forbids conditional expressions with only one void side`|
|
|:warning:`warning:` |nbsp| :diagtext:`arithmetic on`|+---------------------+| |nbsp| :diagtext:`pointer`|+-------------+| |nbsp| :diagtext:`to`|+-----------------------+| |nbsp| :diagtext:`function type`|+-------------+| |nbsp| :placeholder:`B`|+-------------------------------------------------+| |nbsp| :diagtext:`is a GNU extension`|
|
||||||
+--------------------------------------------------------------------------------------------------+
|
| || |nbsp| :diagtext:`a`|| || || || |nbsp| :diagtext:`the`|| || || || || |
|
||||||
|
| |+---------------------+| |+-------------+| |+-----------------------+| |+-------------+| |+-------------------------------------------------+| |
|
||||||
|
| || || ||:diagtext:`s`|| || || ||:diagtext:`s`|| ||+-----------------------------------------------+|| |
|
||||||
|
| |+---------------------+| |+-------------+| |+-----------------------+| |+-------------+| ||| |nbsp| :diagtext:`and` |nbsp| :placeholder:`D`||| |
|
||||||
|
| | | | | | | | | ||+-----------------------------------------------+|| |
|
||||||
|
| | | | | | | | | |+-------------------------------------------------+| |
|
||||||
|
+----------------------------------------------------+-----------------------+---------------------------+---------------+----------------------+-------------------------+---------------------------------+---------------+------------------------+---------------------------------------------------+--------------------------------------+
|
||||||
|
|
||||||
+------------------------------------------------------------+
|
+-----------------------------------------------------------------------------------------------------------------------+
|
||||||
|:warning:`warning:` |nbsp| :diagtext:`multi-line // comment`|
|
|:warning:`warning:` |nbsp| :diagtext:`ISO C does not support '++'/'--' on complex integer type` |nbsp| :placeholder:`A`|
|
||||||
+------------------------------------------------------------+
|
+-----------------------------------------------------------------------------------------------------------------------+
|
||||||
|
|
||||||
+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+-----------------------+
|
+--------------------------------------------------------------------------------------------------------------------+
|
||||||
|:warning:`warning:` |nbsp| :diagtext:`C++98 requires an accessible copy constructor for class` |nbsp| :placeholder:`C` |nbsp| :diagtext:`when binding a reference to a temporary; was` |nbsp| |+---------------------+|
|
|:warning:`warning:` |nbsp| :diagtext:`ISO C does not support '~' for complex conjugation of` |nbsp| :placeholder:`A`|
|
||||||
| ||:diagtext:`private` ||
|
+--------------------------------------------------------------------------------------------------------------------+
|
||||||
| |+---------------------+|
|
|
||||||
| ||:diagtext:`protected`||
|
+------------------------------------------------------------------------------------------------------------+
|
||||||
| |+---------------------+|
|
|:warning:`warning:` |nbsp| :diagtext:`complex numbers are an extension in a freestanding C99 implementation`|
|
||||||
+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+-----------------------+
|
+------------------------------------------------------------------------------------------------------------+
|
||||||
|
|
||||||
|
+-------------------------------------------------------------------------------------------------------------+
|
||||||
|
|:warning:`warning:` |nbsp| :diagtext:`cast between pointer-to-function and pointer-to-object is an extension`|
|
||||||
|
+-------------------------------------------------------------------------------------------------------------+
|
||||||
|
|
||||||
|
+---------------------------------------------------------------------------------------------------------------------------------------------------+-------------------------+----------------------------------------------------------------------------------------+
|
||||||
|
|:warning:`warning:` |nbsp| :diagtext:`implicit conversion from array size expression of type` |nbsp| :placeholder:`A` |nbsp| :diagtext:`to` |nbsp| |+-----------------------+| |nbsp| :diagtext:`type` |nbsp| :placeholder:`C` |nbsp| :diagtext:`is a C++11 extension`|
|
||||||
|
| ||:diagtext:`integral` || |
|
||||||
|
| |+-----------------------+| |
|
||||||
|
| ||:diagtext:`enumeration`|| |
|
||||||
|
| |+-----------------------+| |
|
||||||
|
+---------------------------------------------------------------------------------------------------------------------------------------------------+-------------------------+----------------------------------------------------------------------------------------+
|
||||||
|
|
||||||
+---------------------------+----------------------------------------------------------------+----------------------------------------------------------------------+
|
+---------------------------+----------------------------------------------------------------+----------------------------------------------------------------------+
|
||||||
|:warning:`warning:` |nbsp| |+--------------------------------------------------------------+| |nbsp| :diagtext:`converts between void pointer and function pointer`|
|
|:warning:`warning:` |nbsp| |+--------------------------------------------------------------+| |nbsp| :diagtext:`converts between void pointer and function pointer`|
|
||||||
|
@ -7746,9 +7656,57 @@ Also controls `-Wgnu-union-cast`_, `-Wdollar-in-identifier-extension`_, `-Wgnu-z
|
||||||
| |+--------------------------------------------------------------+| |
|
| |+--------------------------------------------------------------+| |
|
||||||
+---------------------------+----------------------------------------------------------------+----------------------------------------------------------------------+
|
+---------------------------+----------------------------------------------------------------+----------------------------------------------------------------------+
|
||||||
|
|
||||||
+-----------------------------------------------------------------------------------+
|
+--------------------------------------------------------------------------------------------------------------------------------------------------------+
|
||||||
|:warning:`warning:` |nbsp| :diagtext:`compound literals are a C99-specific feature`|
|
|:warning:`warning:` |nbsp| :diagtext:`kernel function` |nbsp| :placeholder:`A` |nbsp| :diagtext:`is a member function; this may not be accepted by nvcc`|
|
||||||
+-----------------------------------------------------------------------------------+
|
+--------------------------------------------------------------------------------------------------------------------------------------------------------+
|
||||||
|
|
||||||
|
+--------------------------------------------------------------------------------------------------+
|
||||||
|
|:warning:`warning:` |nbsp| :diagtext:`C99 forbids conditional expressions with only one void side`|
|
||||||
|
+--------------------------------------------------------------------------------------------------+
|
||||||
|
|
||||||
|
+-------------------------------------------------------------------------------------------------------------------------------------+
|
||||||
|
|:warning:`warning:` |nbsp| :diagtext:`C99 forbids casting nonscalar type` |nbsp| :placeholder:`A` |nbsp| :diagtext:`to the same type`|
|
||||||
|
+-------------------------------------------------------------------------------------------------------------------------------------+
|
||||||
|
|
||||||
|
+---------------------------------------------------------------------------------------------------------------------------+
|
||||||
|
|:warning:`warning:` |nbsp| :diagtext:`use of the` |nbsp| :placeholder:`A` |nbsp| :diagtext:`attribute is a C++14 extension`|
|
||||||
|
+---------------------------------------------------------------------------------------------------------------------------+
|
||||||
|
|
||||||
|
+---------------------------------------------------------------------------------------------------------------------------+
|
||||||
|
|:warning:`warning:` |nbsp| :diagtext:`use of the` |nbsp| :placeholder:`A` |nbsp| :diagtext:`attribute is a C++1z extension`|
|
||||||
|
+---------------------------------------------------------------------------------------------------------------------------+
|
||||||
|
|
||||||
|
+-----------------------------------------------------------------------------+--------------------+---------------------------------------------+
|
||||||
|
|:warning:`warning:` |nbsp| :diagtext:`types declared in an anonymous` |nbsp| |+------------------+| |nbsp| :diagtext:`are a Microsoft extension`|
|
||||||
|
| ||:diagtext:`struct`|| |
|
||||||
|
| |+------------------+| |
|
||||||
|
| ||:diagtext:`union` || |
|
||||||
|
| |+------------------+| |
|
||||||
|
+-----------------------------------------------------------------------------+--------------------+---------------------------------------------+
|
||||||
|
|
||||||
|
+---------------------------------------------------+----------------------+-----------------------------------------------------------------------------+
|
||||||
|
|:warning:`warning:` |nbsp| :diagtext:`void` |nbsp| |+--------------------+| |nbsp| :placeholder:`A` |nbsp| :diagtext:`should not return void expression`|
|
||||||
|
| ||:diagtext:`function`|| |
|
||||||
|
| |+--------------------+| |
|
||||||
|
| ||:diagtext:`method` || |
|
||||||
|
| |+--------------------+| |
|
||||||
|
| ||:diagtext:`block` || |
|
||||||
|
| |+--------------------+| |
|
||||||
|
+---------------------------------------------------+----------------------+-----------------------------------------------------------------------------+
|
||||||
|
|
||||||
|
+--------------------------------------------------------------------------------------------------+
|
||||||
|
|:warning:`warning:` |nbsp| :diagtext:`'`:placeholder:`A`:diagtext:`' cannot be signed or unsigned`|
|
||||||
|
+--------------------------------------------------------------------------------------------------+
|
||||||
|
|
||||||
|
+---------------------------+----------------------------------+------------------------------+-----------------------+----------------------------+
|
||||||
|
|:warning:`warning:` |nbsp| |+--------------------------------+|:diagtext:`array size` |nbsp| |+---------------------+|:diagtext:`is a C99 feature`|
|
||||||
|
| ||:diagtext:`qualifier in` |nbsp| || || || |
|
||||||
|
| |+--------------------------------+| |+---------------------+| |
|
||||||
|
| ||:diagtext:`static` |nbsp| || || || |
|
||||||
|
| |+--------------------------------+| |+---------------------+| |
|
||||||
|
| || || ||:diagtext:`'\[\*\] '`|| |
|
||||||
|
| |+--------------------------------+| |+---------------------+| |
|
||||||
|
+---------------------------+----------------------------------+------------------------------+-----------------------+----------------------------+
|
||||||
|
|
||||||
+--------------------------------------------------------+------------------------------------------------+
|
+--------------------------------------------------------+------------------------------------------------+
|
||||||
|:warning:`warning:` |nbsp| :diagtext:`extra ';'` |nbsp| |+----------------------------------------------+|
|
|:warning:`warning:` |nbsp| :diagtext:`extra ';'` |nbsp| |+----------------------------------------------+|
|
||||||
|
@ -7764,44 +7722,98 @@ Also controls `-Wgnu-union-cast`_, `-Wdollar-in-identifier-extension`_, `-Wgnu-z
|
||||||
| |+----------------------------------------------+|
|
| |+----------------------------------------------+|
|
||||||
+--------------------------------------------------------+------------------------------------------------+
|
+--------------------------------------------------------+------------------------------------------------+
|
||||||
|
|
||||||
+-----------------------------------------------------------------------+
|
+-----------------------------------------------------------------------------------------+
|
||||||
|:warning:`warning:` |nbsp| :diagtext:`#warning is a language extension`|
|
|:warning:`warning:` |nbsp| :diagtext:`'\_\_thread' before '`:placeholder:`A`:diagtext:`'`|
|
||||||
+-----------------------------------------------------------------------+
|
+-----------------------------------------------------------------------------------------+
|
||||||
|
|
||||||
+----------------------------------------------------------------------------------------+
|
+----------------------------------------------------------------------------------------+
|
||||||
|:warning:`warning:` |nbsp| :diagtext:`subscript of a pointer to void is a GNU extension`|
|
|:warning:`warning:` |nbsp| :diagtext:`type-less parameter names in function declaration`|
|
||||||
+----------------------------------------------------------------------------------------+
|
+----------------------------------------------------------------------------------------+
|
||||||
|
|
||||||
+--------------------------------------------------------------------------------------------------+
|
+-------------------------------------------------------------------------------------------------+
|
||||||
|:warning:`warning:` |nbsp| :diagtext:`size of static array must be an integer constant expression`|
|
|:warning:`warning:` |nbsp| :diagtext:`variable declaration in for loop is a C99-specific feature`|
|
||||||
+--------------------------------------------------------------------------------------------------+
|
+-------------------------------------------------------------------------------------------------+
|
||||||
|
|
||||||
|
+-----------------------------------------------------------------------------------+
|
||||||
|
|:warning:`warning:` |nbsp| :diagtext:`compound literals are a C99-specific feature`|
|
||||||
|
+-----------------------------------------------------------------------------------+
|
||||||
|
|
||||||
+-------------------------------------------------------------------------------------------------------+
|
+-------------------------------------------------------------------------------------------------------+
|
||||||
|:warning:`warning:` |nbsp| :diagtext:`commas at the end of enumerator lists are a C99-specific feature`|
|
|:warning:`warning:` |nbsp| :diagtext:`commas at the end of enumerator lists are a C99-specific feature`|
|
||||||
+-------------------------------------------------------------------------------------------------------+
|
+-------------------------------------------------------------------------------------------------------+
|
||||||
|
|
||||||
|
+--------------------------------------------------------------------------------------------------+
|
||||||
|
|:warning:`warning:` |nbsp| :diagtext:`commas at the end of enumerator lists are a C++11 extension`|
|
||||||
|
+--------------------------------------------------------------------------------------------------+
|
||||||
|
|
||||||
+-----------------------------------------------------------------------------------------------------------+
|
+-----------------------------------------------------------------------------------------------------------+
|
||||||
|:warning:`warning:` |nbsp| :diagtext:`enumeration types with a fixed underlying type are a C++11 extension`|
|
|:warning:`warning:` |nbsp| :diagtext:`enumeration types with a fixed underlying type are a C++11 extension`|
|
||||||
+-----------------------------------------------------------------------------------------------------------+
|
+-----------------------------------------------------------------------------------------------------------+
|
||||||
|
|
||||||
+--------------------------------------------------------------------------------+
|
+-----------------------------------------------------------------------+
|
||||||
|:warning:`warning:` |nbsp| :diagtext:`designated initializers are a C99 feature`|
|
|:warning:`warning:` |nbsp| :diagtext:`use of GNU array range extension`|
|
||||||
+--------------------------------------------------------------------------------+
|
+-----------------------------------------------------------------------+
|
||||||
|
|
||||||
+---------------------------------------------------------------+-----------------------+--------------------------------+
|
+------------------------------------------------------------------------------------------------+
|
||||||
|:warning:`warning:` |nbsp| :diagtext:`invalid application of '`|+---------------------+|:diagtext:`' to a function type`|
|
|:warning:`warning:` |nbsp| :diagtext:`exception specification of '...' is a Microsoft extension`|
|
||||||
| ||:diagtext:`sizeof` || |
|
+------------------------------------------------------------------------------------------------+
|
||||||
| |+---------------------+| |
|
|
||||||
| ||:diagtext:`alignof` || |
|
+-----------------------------------------------------------------------------+
|
||||||
| |+---------------------+| |
|
|:warning:`warning:` |nbsp| :diagtext:`extern templates are a C++11 extension`|
|
||||||
| ||:diagtext:`vec\_step`|| |
|
+-----------------------------------------------------------------------------+
|
||||||
| |+---------------------+| |
|
|
||||||
+---------------------------------------------------------------+-----------------------+--------------------------------+
|
+------------------------------------------------------------+
|
||||||
|
|:warning:`warning:` |nbsp| :diagtext:`multi-line // comment`|
|
||||||
|
+------------------------------------------------------------+
|
||||||
|
|
||||||
+-----------------------------------------------------------------------------------+
|
+-----------------------------------------------------------------------------------+
|
||||||
|:warning:`warning:` |nbsp| :diagtext:`// comments are not allowed in this language`|
|
|:warning:`warning:` |nbsp| :diagtext:`// comments are not allowed in this language`|
|
||||||
+-----------------------------------------------------------------------------------+
|
+-----------------------------------------------------------------------------------+
|
||||||
|
|
||||||
|
+----------------------------------------------------------------+
|
||||||
|
|:warning:`warning:` |nbsp| :diagtext:`no newline at end of file`|
|
||||||
|
+----------------------------------------------------------------+
|
||||||
|
|
||||||
|
+------------------------------------------------------------------------------------------------------------+
|
||||||
|
|:warning:`warning:` |nbsp| :diagtext:`use of non-standard escape character '\\`:placeholder:`A`:diagtext:`'`|
|
||||||
|
+------------------------------------------------------------------------------------------------------------+
|
||||||
|
|
||||||
|
+---------------------------------------------------------------------------------------+
|
||||||
|
|:warning:`warning:` |nbsp| :diagtext:`hexadecimal floating constants are a C99 feature`|
|
||||||
|
+---------------------------------------------------------------------------------------+
|
||||||
|
|
||||||
|
+----------------------------------------------------------------------------------------+
|
||||||
|
|:warning:`warning:` |nbsp| :diagtext:`hexadecimal floating literals are a C++1z feature`|
|
||||||
|
+----------------------------------------------------------------------------------------+
|
||||||
|
|
||||||
|
+---------------------------------------------------------------------+
|
||||||
|
|:warning:`warning:` |nbsp| :diagtext:`#ident is a language extension`|
|
||||||
|
+---------------------------------------------------------------------+
|
||||||
|
|
||||||
|
+-----------------------------------------------------------------------+
|
||||||
|
|:warning:`warning:` |nbsp| :diagtext:`#warning is a language extension`|
|
||||||
|
+-----------------------------------------------------------------------+
|
||||||
|
|
||||||
|
+-----------------------------------------------------------------------+
|
||||||
|
|:warning:`warning:` |nbsp| :diagtext:`comma operator in operand of #if`|
|
||||||
|
+-----------------------------------------------------------------------+
|
||||||
|
|
||||||
|
+----------------------------------------------------------------------------------------------------------------+
|
||||||
|
|:warning:`warning:` |nbsp| :diagtext:`\_\_VA\_ARGS\_\_ can only appear in the expansion of a C99 variadic macro`|
|
||||||
|
+----------------------------------------------------------------------------------------------------------------+
|
||||||
|
|
||||||
|
+------------------------------------------------------------------------------+
|
||||||
|
|:warning:`warning:` |nbsp| :diagtext:`empty macro arguments are a C99 feature`|
|
||||||
|
+------------------------------------------------------------------------------+
|
||||||
|
|
||||||
|
+----------------------------------------------------------------------------------------------------------------------------------------+
|
||||||
|
|:warning:`warning:` |nbsp| :diagtext:`C requires #line number to be less than` |nbsp| :placeholder:`A`:diagtext:`, allowed as extension`|
|
||||||
|
+----------------------------------------------------------------------------------------------------------------------------------------+
|
||||||
|
|
||||||
|
+-------------------------------------------------------------------------------------------------+
|
||||||
|
|:warning:`warning:` |nbsp| :diagtext:`macro expansion producing 'defined' has undefined behavior`|
|
||||||
|
+-------------------------------------------------------------------------------------------------+
|
||||||
|
|
||||||
|
|
||||||
-Wpedantic-core-features
|
-Wpedantic-core-features
|
||||||
------------------------
|
------------------------
|
||||||
|
@ -8550,7 +8562,9 @@ This diagnostic is enabled by default.
|
||||||
|
|
||||||
-Wshadow
|
-Wshadow
|
||||||
--------
|
--------
|
||||||
Also controls `-Wshadow-field-in-constructor-modified`_.
|
Some of the diagnostics controlled by this flag are enabled by default.
|
||||||
|
|
||||||
|
Also controls `-Wshadow-field-in-constructor-modified`_, `-Wshadow-ivar`_.
|
||||||
|
|
||||||
**Diagnostic text:**
|
**Diagnostic text:**
|
||||||
|
|
||||||
|
@ -8575,6 +8589,8 @@ Also controls `-Wshadow-field-in-constructor-modified`_.
|
||||||
|
|
||||||
-Wshadow-all
|
-Wshadow-all
|
||||||
------------
|
------------
|
||||||
|
Some of the diagnostics controlled by this flag are enabled by default.
|
||||||
|
|
||||||
Controls `-Wshadow`_, `-Wshadow-field-in-constructor`_.
|
Controls `-Wshadow`_, `-Wshadow-field-in-constructor`_.
|
||||||
|
|
||||||
|
|
||||||
|
@ -10116,6 +10132,10 @@ This diagnostic is enabled by default.
|
||||||
|:warning:`warning:` |nbsp| :diagtext:`joined argument expects additional value: '`:placeholder:`A`:diagtext:`'`|
|
|:warning:`warning:` |nbsp| :diagtext:`joined argument expects additional value: '`:placeholder:`A`:diagtext:`'`|
|
||||||
+---------------------------------------------------------------------------------------------------------------+
|
+---------------------------------------------------------------------------------------------------------------+
|
||||||
|
|
||||||
|
+-----------------------------------------------------------------------------------------------------------------------------+
|
||||||
|
|:warning:`warning:` |nbsp| :diagtext:`argument '-fdiagnostics-show-hotness' requires profile-guided optimization information`|
|
||||||
|
+-----------------------------------------------------------------------------------------------------------------------------+
|
||||||
|
|
||||||
+----------------------------------------------------------------------------------------------------+----------------------------------------------------------------------+
|
+----------------------------------------------------------------------------------------------------+----------------------------------------------------------------------+
|
||||||
|:warning:`warning:` |nbsp| :placeholder:`A`:diagtext:`: '`:placeholder:`B`:diagtext:`' input unused`|+--------------------------------------------------------------------+|
|
|:warning:`warning:` |nbsp| :placeholder:`A`:diagtext:`: '`:placeholder:`B`:diagtext:`' input unused`|+--------------------------------------------------------------------+|
|
||||||
| ||+------------------------------------------------------------------+||
|
| ||+------------------------------------------------------------------+||
|
||||||
|
|
|
@ -1248,11 +1248,20 @@ void EmitClangDiagDocs(RecordKeeper &Records, raw_ostream &OS) {
|
||||||
|
|
||||||
// Compute the set of diagnostics that are in -Wpedantic.
|
// Compute the set of diagnostics that are in -Wpedantic.
|
||||||
{
|
{
|
||||||
RecordSet DiagsInPedantic;
|
RecordSet DiagsInPedanticSet;
|
||||||
RecordSet GroupsInPedantic;
|
RecordSet GroupsInPedanticSet;
|
||||||
InferPedantic inferPedantic(DGParentMap, Diags, DiagGroups, DiagsInGroup);
|
InferPedantic inferPedantic(DGParentMap, Diags, DiagGroups, DiagsInGroup);
|
||||||
inferPedantic.compute(&DiagsInPedantic, &GroupsInPedantic);
|
inferPedantic.compute(&DiagsInPedanticSet, &GroupsInPedanticSet);
|
||||||
auto &PedDiags = DiagsInGroup["pedantic"];
|
auto &PedDiags = DiagsInGroup["pedantic"];
|
||||||
|
// Put the diagnostics into a deterministic order.
|
||||||
|
RecordVec DiagsInPedantic(DiagsInPedanticSet.begin(),
|
||||||
|
DiagsInPedanticSet.end());
|
||||||
|
RecordVec GroupsInPedantic(GroupsInPedanticSet.begin(),
|
||||||
|
GroupsInPedanticSet.end());
|
||||||
|
std::sort(DiagsInPedantic.begin(), DiagsInPedantic.end(),
|
||||||
|
beforeThanCompare);
|
||||||
|
std::sort(GroupsInPedantic.begin(), GroupsInPedantic.end(),
|
||||||
|
beforeThanCompare);
|
||||||
PedDiags.DiagsInGroup.insert(PedDiags.DiagsInGroup.end(),
|
PedDiags.DiagsInGroup.insert(PedDiags.DiagsInGroup.end(),
|
||||||
DiagsInPedantic.begin(),
|
DiagsInPedantic.begin(),
|
||||||
DiagsInPedantic.end());
|
DiagsInPedantic.end());
|
||||||
|
|
Loading…
Reference in New Issue