svn commit: r338577 - in vendor/clang/dist-release_70: docs lib/Driver/ToolChains
Dimitry Andric
dim at FreeBSD.org
Tue Sep 11 10:09:59 UTC 2018
Author: dim
Date: Tue Sep 11 10:09:57 2018
New Revision: 338577
URL: https://svnweb.freebsd.org/changeset/base/338577
Log:
Vendor import of clang release_70 branch r341916:
https://llvm.org/svn/llvm-project/cfe/branches/release_70@341916
Modified:
vendor/clang/dist-release_70/docs/DiagnosticsReference.rst
vendor/clang/dist-release_70/docs/ReleaseNotes.rst
vendor/clang/dist-release_70/lib/Driver/ToolChains/Clang.cpp
Modified: vendor/clang/dist-release_70/docs/DiagnosticsReference.rst
==============================================================================
--- vendor/clang/dist-release_70/docs/DiagnosticsReference.rst Tue Sep 11 10:09:53 2018 (r338576)
+++ vendor/clang/dist-release_70/docs/DiagnosticsReference.rst Tue Sep 11 10:09:57 2018 (r338577)
@@ -207,17 +207,6 @@ This diagnostic is enabled by default.
Controls `-Wpointer-bool-conversion`_, `-Wstring-compare`_, `-Wtautological-pointer-compare`_.
--Waddress-of-array-temporary
-----------------------------
-This diagnostic is enabled by default.
-
-**Diagnostic text:**
-
-+---------------------------------------------------------------------------------------------------------------------------------------------+
-|:warning:`warning:` |nbsp| :diagtext:`pointer is initialized by a temporary array, which will be destroyed at the end of the full-expression`|
-+---------------------------------------------------------------------------------------------------------------------------------------------+
-
-
-Waddress-of-packed-member
--------------------------
This diagnostic is enabled by default.
@@ -244,21 +233,6 @@ This diagnostic is an error by default, but the flag `
------------------
This diagnostic flag exists for GCC compatibility, and has no effect in Clang.
--Waligned-allocation-unavailable
---------------------------------
-This diagnostic is an error by default, but the flag ``-Wno-aligned-allocation-unavailable`` can be used to disable the error.
-
-**Diagnostic text:**
-
-+--------------------------------------------------+--------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-|:error:`error:` |nbsp| :diagtext:`aligned` |nbsp| |+------------------------+| |nbsp| :diagtext:`function of type '`:placeholder:`B`:diagtext:`' is only available on` |nbsp| :placeholder:`C` |nbsp| :placeholder:`D` |nbsp| :diagtext:`or newer`|
-| ||:diagtext:`allocation` || |
-| |+------------------------+| |
-| ||:diagtext:`deallocation`|| |
-| |+------------------------+| |
-+--------------------------------------------------+--------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-
-
-Wall
-----
Some of the diagnostics controlled by this flag are enabled by default.
@@ -473,6 +447,17 @@ This diagnostic is enabled by default.
+-----------------------------------------------------------------------------------------------------------------------------+
+-Wargument-outside-range
+------------------------
+This diagnostic is an error by default, but the flag ``-Wno-argument-outside-range`` can be used to disable the error.
+
+**Diagnostic text:**
+
++---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+|:error:`error:` |nbsp| :diagtext:`argument value` |nbsp| :placeholder:`A` |nbsp| :diagtext:`is outside the valid range \[`:placeholder:`B`:diagtext:`,` |nbsp| :placeholder:`C`:diagtext:`\]`|
++---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+
+
-Warray-bounds
--------------
This diagnostic is enabled by default.
@@ -581,6 +566,28 @@ This diagnostic is enabled by default.
+-------------------------------------------------------------------------------------------------------------------+
+-Watimport-in-framework-header
+------------------------------
+This diagnostic is enabled by default.
+
+**Diagnostic text:**
+
++------------------------------------------------------------------------------------------------------------------------------------+
+|:warning:`warning:` |nbsp| :diagtext:`use of '@import' in framework header is discouraged, including this header requires -fmodules`|
++------------------------------------------------------------------------------------------------------------------------------------+
+
+
+-Watomic-alignment
+------------------
+This diagnostic is enabled by default.
+
+**Diagnostic text:**
+
++---------------------------------------------------------------------------------------------------------------------+
+|:warning:`warning:` |nbsp| :diagtext:`misaligned or large atomic operation may incur significant performance penalty`|
++---------------------------------------------------------------------------------------------------------------------+
+
+
-Watomic-memory-ordering
------------------------
This diagnostic is enabled by default.
@@ -690,6 +697,16 @@ This diagnostic is enabled by default.
|:warning:`warning:` |nbsp| :diagtext:`'unavailable' availability overrides all other availability information`|
+--------------------------------------------------------------------------------------------------------------+
++------------------------------------------------------------------------------+----------------------------------------+
+|:warning:`warning:` |nbsp| :diagtext:`ignoring availability attribute` |nbsp| |+--------------------------------------+|
+| ||:diagtext:`on '+load' method` ||
+| |+--------------------------------------+|
+| ||:diagtext:`with constructor attribute`||
+| |+--------------------------------------+|
+| ||:diagtext:`with destructor attribute` ||
+| |+--------------------------------------+|
++------------------------------------------------------------------------------+----------------------------------------+
+
+------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`unknown platform` |nbsp| :placeholder:`A` |nbsp| :diagtext:`in availability macro`|
+------------------------------------------------------------------------------------------------------------------------+
@@ -779,33 +796,46 @@ Also controls `-Wc++98-compat-bind-to-temporary-copy`_
| |+---------------------+|
+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+-----------------------+
-+--------------------------------------------------------------------+-----------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------+
-|: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`|
-| ||:diagtext:`copying variable` || |
-| |+---------------------------------------+| |
-| ||:diagtext:`copying parameter` || |
-| |+---------------------------------------+| |
-| ||:diagtext:`returning object` || |
-| |+---------------------------------------+| |
-| ||:diagtext:`throwing object` || |
-| |+---------------------------------------+| |
-| ||:diagtext:`copying member subobject` || |
-| |+---------------------------------------+| |
-| ||:diagtext:`copying array element` || |
-| |+---------------------------------------+| |
-| ||:diagtext:`allocating object` || |
-| |+---------------------------------------+| |
-| ||:diagtext:`copying temporary` || |
-| |+---------------------------------------+| |
-| ||:diagtext:`initializing base subobject`|| |
-| |+---------------------------------------+| |
-| ||:diagtext:`initializing vector element`|| |
-| |+---------------------------------------+| |
-| ||:diagtext:`capturing value` || |
-| |+---------------------------------------+| |
-+--------------------------------------------------------------------+-----------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------+
++--------------------------------------------------------------------+------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------+
+|: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`|
+| ||:diagtext:`copying variable` || |
+| |+----------------------------------------------------+| |
+| ||:diagtext:`copying parameter` || |
+| |+----------------------------------------------------+| |
+| ||:diagtext:`returning object` || |
+| |+----------------------------------------------------+| |
+| ||:diagtext:`initializing statement expression result`|| |
+| |+----------------------------------------------------+| |
+| ||:diagtext:`throwing object` || |
+| |+----------------------------------------------------+| |
+| ||:diagtext:`copying member subobject` || |
+| |+----------------------------------------------------+| |
+| ||:diagtext:`copying array element` || |
+| |+----------------------------------------------------+| |
+| ||:diagtext:`allocating object` || |
+| |+----------------------------------------------------+| |
+| ||:diagtext:`copying temporary` || |
+| |+----------------------------------------------------+| |
+| ||:diagtext:`initializing base subobject` || |
+| |+----------------------------------------------------+| |
+| ||:diagtext:`initializing vector element` || |
+| |+----------------------------------------------------+| |
+| ||:diagtext:`capturing value` || |
+| |+----------------------------------------------------+| |
++--------------------------------------------------------------------+------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------+
+-Wbinding-in-condition
+----------------------
+This diagnostic is enabled by default.
+
+**Diagnostic text:**
+
++--------------------------------------------------------------------------------------------------------------+
+|:warning:`warning:` |nbsp| :diagtext:`ISO C++17 does not permit structured binding declaration in a condition`|
++--------------------------------------------------------------------------------------------------------------+
+
+
-Wbitfield-constant-conversion
------------------------------
This diagnostic is enabled by default.
@@ -1180,28 +1210,6 @@ Also controls `-Wc++11-extra-semi`_, `-Wc++11-inline-n
|:warning:`warning:` |nbsp| :diagtext:`default template arguments for a function template are a C++11 extension`|
+---------------------------------------------------------------------------------------------------------------+
-+-------------------------------------------------------------------+---------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-|:warning:`warning:` |nbsp| :diagtext:`first declaration of` |nbsp| |+-------------------------------------+| |nbsp| :diagtext:`specialization of` |nbsp| :placeholder:`B` |nbsp| :diagtext:`outside namespace` |nbsp| :placeholder:`C` |nbsp| :diagtext:`is a C++11 extension`|
-| ||:diagtext:`class template` || |
-| |+-------------------------------------+| |
-| ||:diagtext:`class template partial` || |
-| |+-------------------------------------+| |
-| ||:diagtext:`variable template` || |
-| |+-------------------------------------+| |
-| ||:diagtext:`variable template partial`|| |
-| |+-------------------------------------+| |
-| ||:diagtext:`function template` || |
-| |+-------------------------------------+| |
-| ||:diagtext:`member function` || |
-| |+-------------------------------------+| |
-| ||:diagtext:`static data member` || |
-| |+-------------------------------------+| |
-| ||:diagtext:`member class` || |
-| |+-------------------------------------+| |
-| ||:diagtext:`member enumeration` || |
-| |+-------------------------------------+| |
-+-------------------------------------------------------------------+---------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-
+------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`'typename' occurs outside of a template`|
+------------------------------------------------------------------------------+
@@ -1402,6 +1410,10 @@ Some of the diagnostics controlled by this flag are en
**Diagnostic text:**
++--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+|:warning:`warning:` |nbsp| :diagtext:`ISO C++ standards before C++17 do not allow new expression for type` |nbsp| :placeholder:`A` |nbsp| :diagtext:`to use list-initialization`|
++--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+
+------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`constexpr if is a C++17 extension`|
+------------------------------------------------------------------------+
@@ -1501,8 +1513,14 @@ Synonym for `-Wc++17-extensions`_.
-Wc++2a-compat
--------------
+Some of the diagnostics controlled by this flag are enabled by default.
+
**Diagnostic text:**
++------------------------------------------------------------------------------------------------------------------+
+|:warning:`warning:` |nbsp| :diagtext:`'<=>' is a single token in C++2a; add a space to avoid a change in behavior`|
++------------------------------------------------------------------------------------------------------------------+
+
+-------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`'`:placeholder:`A`:diagtext:`' is a keyword in C++2a`|
+-------------------------------------------------------------------------------------------+
@@ -1544,7 +1562,15 @@ Some of the diagnostics controlled by this flag are en
|:warning:`warning:` |nbsp| :diagtext:`explicit capture of 'this' with a capture default of '=' is incompatible with C++ standards before C++2a`|
+-----------------------------------------------------------------------------------------------------------------------------------------------+
++-----------------------------------------------------------------------------------------------------+
+|:warning:`warning:` |nbsp| :diagtext:`'<=>' operator is incompatible with C++ standards before C++2a`|
++-----------------------------------------------------------------------------------------------------+
++----------------------------------------------------------------------------------------------------------------+
+|:warning:`warning:` |nbsp| :diagtext:`'char8\_t' type specifier is incompatible with C++ standards before C++20`|
++----------------------------------------------------------------------------------------------------------------+
+
+
-Wc++98-c++11-c++14-c++17-compat-pedantic
-----------------------------------------
Also controls `-Wc++98-c++11-c++14-c++17-compat`_.
@@ -1855,7 +1881,7 @@ Also controls `-Wc++98-c++11-c++14-c++17-compat`_, `-W
+---------------------------+------------------------------+------------------------------------------------------------------------------------------------+--------------------------------------+----------------------------------------------+
|:warning:`warning:` |nbsp| |+----------------------------+| |nbsp| :diagtext:`member` |nbsp| :placeholder:`B` |nbsp| :diagtext:`with a non-trivial` |nbsp| |+------------------------------------+| |nbsp| :diagtext:`is incompatible with C++98`|
-| ||:diagtext:`anonymous struct`|| ||:diagtext:`constructor` || |
+| ||:diagtext:`anonymous struct`|| ||:diagtext:`default constructor` || |
| |+----------------------------+| |+------------------------------------+| |
| ||:diagtext:`union` || ||:diagtext:`copy constructor` || |
| |+----------------------------+| |+------------------------------------+| |
@@ -1949,28 +1975,6 @@ Also controls `-Wc++98-c++11-c++14-c++17-compat`_, `-W
|:warning:`warning:` |nbsp| :diagtext:`default template arguments for a function template are incompatible with C++98`|
+---------------------------------------------------------------------------------------------------------------------+
-+---------------------------+---------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-|:warning:`warning:` |nbsp| |+-------------------------------------+| |nbsp| :diagtext:`specialization of` |nbsp| :placeholder:`B` |nbsp| :diagtext:`outside namespace` |nbsp| :placeholder:`C` |nbsp| :diagtext:`is incompatible with C++98`|
-| ||:diagtext:`class template` || |
-| |+-------------------------------------+| |
-| ||:diagtext:`class template partial` || |
-| |+-------------------------------------+| |
-| ||:diagtext:`variable template` || |
-| |+-------------------------------------+| |
-| ||:diagtext:`variable template partial`|| |
-| |+-------------------------------------+| |
-| ||:diagtext:`function template` || |
-| |+-------------------------------------+| |
-| ||:diagtext:`member function` || |
-| |+-------------------------------------+| |
-| ||:diagtext:`static data member` || |
-| |+-------------------------------------+| |
-| ||:diagtext:`member class` || |
-| |+-------------------------------------+| |
-| ||:diagtext:`member enumeration` || |
-| |+-------------------------------------+| |
-+---------------------------+---------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-
+----------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`trailing return types are incompatible with C++98`|
+----------------------------------------------------------------------------------------+
@@ -2022,31 +2026,44 @@ Also controls `-Wc++98-c++11-c++14-c++17-compat`_, `-W
-------------------------------------
**Diagnostic text:**
-+---------------------------+-----------------------------------------+----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------+----------------------------+
-|:warning:`warning:` |nbsp| |+---------------------------------------+| |nbsp| :diagtext:`of type` |nbsp| :placeholder:`C` |nbsp| :diagtext:`when binding a reference to a temporary would` |nbsp| |+----------------------------------------------+| |nbsp| :diagtext:`in C++98`|
-| ||:diagtext:`copying variable` || ||:diagtext:`invoke an inaccessible constructor`|| |
-| |+---------------------------------------+| |+----------------------------------------------+| |
-| ||:diagtext:`copying parameter` || ||:diagtext:`find no viable constructor` || |
-| |+---------------------------------------+| |+----------------------------------------------+| |
-| ||:diagtext:`returning object` || ||:diagtext:`find ambiguous constructors` || |
-| |+---------------------------------------+| |+----------------------------------------------+| |
-| ||:diagtext:`throwing object` || ||:diagtext:`invoke a deleted constructor` || |
-| |+---------------------------------------+| |+----------------------------------------------+| |
-| ||:diagtext:`copying member subobject` || | | |
-| |+---------------------------------------+| | | |
-| ||:diagtext:`copying array element` || | | |
-| |+---------------------------------------+| | | |
-| ||:diagtext:`allocating object` || | | |
-| |+---------------------------------------+| | | |
-| ||:diagtext:`copying temporary` || | | |
-| |+---------------------------------------+| | | |
-| ||:diagtext:`initializing base subobject`|| | | |
-| |+---------------------------------------+| | | |
-| ||:diagtext:`initializing vector element`|| | | |
-| |+---------------------------------------+| | | |
-+---------------------------+-----------------------------------------+----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------+----------------------------+
++---------------------------+------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------+----------------------------+
+|:warning:`warning:` |nbsp| |+----------------------------------------------------+| |nbsp| :diagtext:`of type` |nbsp| :placeholder:`C` |nbsp| :diagtext:`when binding a reference to a temporary would` |nbsp| |+----------------------------------------------+| |nbsp| :diagtext:`in C++98`|
+| ||:diagtext:`copying variable` || ||:diagtext:`invoke an inaccessible constructor`|| |
+| |+----------------------------------------------------+| |+----------------------------------------------+| |
+| ||:diagtext:`copying parameter` || ||:diagtext:`find no viable constructor` || |
+| |+----------------------------------------------------+| |+----------------------------------------------+| |
+| ||:diagtext:`returning object` || ||:diagtext:`find ambiguous constructors` || |
+| |+----------------------------------------------------+| |+----------------------------------------------+| |
+| ||:diagtext:`initializing statement expression result`|| ||:diagtext:`invoke a deleted constructor` || |
+| |+----------------------------------------------------+| |+----------------------------------------------+| |
+| ||:diagtext:`throwing object` || | | |
+| |+----------------------------------------------------+| | | |
+| ||:diagtext:`copying member subobject` || | | |
+| |+----------------------------------------------------+| | | |
+| ||:diagtext:`copying array element` || | | |
+| |+----------------------------------------------------+| | | |
+| ||:diagtext:`allocating object` || | | |
+| |+----------------------------------------------------+| | | |
+| ||:diagtext:`copying temporary` || | | |
+| |+----------------------------------------------------+| | | |
+| ||:diagtext:`initializing base subobject` || | | |
+| |+----------------------------------------------------+| | | |
+| ||:diagtext:`initializing vector element` || | | |
+| |+----------------------------------------------------+| | | |
+| ||:diagtext:`capturing value` || | | |
+| |+----------------------------------------------------+| | | |
++---------------------------+------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------+----------------------------+
+-Wc++98-compat-extra-semi
+-------------------------
+**Diagnostic text:**
+
++-------------------------------------------------------------------------------------------------+
+|:warning:`warning:` |nbsp| :diagtext:`extra ';' outside of a function is incompatible with C++98`|
++-------------------------------------------------------------------------------------------------+
+
+
-Wc++98-compat-local-type-template-args
---------------------------------------
**Diagnostic text:**
@@ -2058,7 +2075,7 @@ Also controls `-Wc++98-c++11-c++14-c++17-compat`_, `-W
-Wc++98-compat-pedantic
-----------------------
-Also controls `-Wc++98-c++11-c++14-c++17-compat-pedantic`_, `-Wc++98-c++11-c++14-compat-pedantic`_, `-Wc++98-c++11-compat-pedantic`_, `-Wc++98-compat`_, `-Wc++98-compat-bind-to-temporary-copy`_.
+Also controls `-Wc++98-c++11-c++14-c++17-compat-pedantic`_, `-Wc++98-c++11-c++14-compat-pedantic`_, `-Wc++98-c++11-compat-pedantic`_, `-Wc++98-compat`_, `-Wc++98-compat-bind-to-temporary-copy`_, `-Wc++98-compat-extra-semi`_.
**Diagnostic text:**
@@ -2098,10 +2115,6 @@ Also controls `-Wc++98-c++11-c++14-c++17-compat-pedant
|:warning:`warning:` |nbsp| :diagtext:`#line number greater than 32767 is incompatible with C++98`|
+-------------------------------------------------------------------------------------------------+
-+-------------------------------------------------------------------------------------------------+
-|:warning:`warning:` |nbsp| :diagtext:`extra ';' outside of a function is incompatible with C++98`|
-+-------------------------------------------------------------------------------------------------+
-
+----------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`variadic macros are incompatible with C++98`|
+----------------------------------------------------------------------------------+
@@ -2275,6 +2288,29 @@ This diagnostic is enabled by default.
+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+-Wcast-qual-unrelated
+---------------------
+This diagnostic is enabled by default.
+
+**Diagnostic text:**
+
++---------------------------------------------------------------------+-----------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+|:warning:`warning:` |nbsp| :diagtext:`ISO C++ does not allow` |nbsp| |+---------------------------------+| |nbsp| :diagtext:`from` |nbsp| :placeholder:`B` |nbsp| :diagtext:`to` |nbsp| :placeholder:`C` |nbsp| :diagtext:`because it casts away qualifiers, even though the source and destination types are unrelated`|
+| ||:diagtext:`const\_cast` || |
+| |+---------------------------------+| |
+| ||:diagtext:`static\_cast` || |
+| |+---------------------------------+| |
+| ||:diagtext:`reinterpret\_cast` || |
+| |+---------------------------------+| |
+| ||:diagtext:`dynamic\_cast` || |
+| |+---------------------------------+| |
+| ||:diagtext:`C-style cast` || |
+| |+---------------------------------+| |
+| ||:diagtext:`functional-style cast`|| |
+| |+---------------------------------+| |
++---------------------------------------------------------------------+-----------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+
+
-Wchar-align
------------
This diagnostic flag exists for GCC compatibility, and has no effect in Clang.
@@ -2318,7 +2354,11 @@ This diagnostic is enabled by default.
|:warning:`warning:` |nbsp| :diagtext:`support for '`:placeholder:`A`:diagtext:`' without a corresponding /FI flag not implemented yet; flag ignored`|
+----------------------------------------------------------------------------------------------------------------------------------------------------+
++-----------------------------------------------------------------------------------------------------------------------------------------------------+
+|:warning:`warning:` |nbsp| :diagtext:`definition of macro` |nbsp| :placeholder:`A` |nbsp| :diagtext:`does not match definition in precompiled header`|
++-----------------------------------------------------------------------------------------------------------------------------------------------------+
+
-Wclass-varargs
---------------
Some of the diagnostics controlled by this flag are enabled by default.
@@ -2528,6 +2568,10 @@ Also controls `-Wbitfield-enum-conversion`_, `-Wbool-c
|:warning:`warning:` |nbsp| :diagtext:`implicit conversion loses floating-point precision:` |nbsp| :placeholder:`A` |nbsp| :diagtext:`to` |nbsp| :placeholder:`B`|
+----------------------------------------------------------------------------------------------------------------------------------------------------------------+
++--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+|:warning:`warning:` |nbsp| :diagtext:`implicit conversion when assigning computation result loses floating-point precision:` |nbsp| :placeholder:`A` |nbsp| :diagtext:`to` |nbsp| :placeholder:`B`|
++--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+
+---------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`implicit conversion loses integer precision:` |nbsp| :placeholder:`A` |nbsp| :diagtext:`to` |nbsp| :placeholder:`B`|
+---------------------------------------------------------------------------------------------------------------------------------------------------------+
@@ -2637,6 +2681,55 @@ Some of the diagnostics controlled by this flag are en
+---------------------------------------------------------------------------------------------------------------------------------------+--------------------+----------------------------------------------------------------------------+
+-Wdangling
+----------
+This diagnostic is enabled by default.
+
+Also controls `-Wdangling-field`_, `-Wdangling-initializer-list`_, `-Wreturn-stack-address`_.
+
+**Diagnostic text:**
+
++---------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------+----------------------------+---------------------------------------------------------------+
+|:warning:`warning:` |nbsp| |+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------+| |nbsp| |+--------------------------+|:diagtext:`will be destroyed at the end of the full-expression`|
+| ||+-----------------------------+---------------------------------------------------------+--------+------------------------------------------------------------------------+|| ||+------------------------+|| |
+| |||:diagtext:`temporary` |nbsp| |+-------------------------------------------------------+| |nbsp| |+----------------------------------------------------------------------+||| |||:placeholder:`D` |nbsp| ||| |
+| ||| ||:diagtext:`whose address is used as value of` || ||+-------------------------------+------------------------------------+|||| ||+------------------------+|| |
+| ||| |+-------------------------------------------------------+| |||+-----------------------------+|:diagtext:`member of local variable`||||| |+--------------------------+| |
+| ||| ||+--------------------------------+--------------------+|| |||| || ||||| || || |
+| ||| |||+------------------------------+|:diagtext:`bound to`||| |||+-----------------------------+| ||||| |+--------------------------+| |
+| ||| |||| || ||| ||||:diagtext:`reference` |nbsp| || ||||| | | |
+| ||| |||+------------------------------+| ||| |||+-----------------------------+| ||||| | | |
+| ||| ||||:diagtext:`implicitly` |nbsp| || ||| ||+-------------------------------+------------------------------------+|||| | | |
+| ||| |||+------------------------------+| ||| |+----------------------------------------------------------------------+||| | | |
+| ||| ||+--------------------------------+--------------------+|| ||+-------------------------+-----------------------+ |||| | | |
+| ||| |+-------------------------------------------------------+| |||:diagtext:`local` |nbsp| |+---------------------+| |||| | | |
+| ||| | | ||| ||:diagtext:`variable` || |||| | | |
+| ||| | | ||| |+---------------------+| |||| | | |
+| ||| | | ||| ||:diagtext:`reference`|| |||| | | |
+| ||| | | ||| |+---------------------+| |||| | | |
+| ||| | | ||+-------------------------+-----------------------+ |||| | | |
+| ||| | | |+----------------------------------------------------------------------+||| | | |
+| ||+-----------------------------+---------------------------------------------------------+--------+------------------------------------------------------------------------+|| | | |
+| |+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------+| | | |
+| ||+---------------------------------+----------------------------------------------------------+ || | | |
+| |||:diagtext:`array backing` |nbsp| |+--------------------------------------------------------+| || | | |
+| ||| ||:diagtext:`initializer list subobject of local variable`|| || | | |
+| ||| |+--------------------------------------------------------+| || | | |
+| ||| ||:diagtext:`local initializer list` || || | | |
+| ||| |+--------------------------------------------------------+| || | | |
+| ||+---------------------------------+----------------------------------------------------------+ || | | |
+| |+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------+| | | |
++---------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------+----------------------------+---------------------------------------------------------------+
+
++---------------------------------------------------------------------------+-----------------------------------------------+------------------------------------------------------------------------------------------------------------------------------+---------------------------+--------------------------------------------------------------+
+|:warning:`warning:` |nbsp| :diagtext:`sorry, lifetime extension of` |nbsp| |+---------------------------------------------+| |nbsp| :diagtext:`created by aggregate initialization using default member initializer is not supported; lifetime of` |nbsp| |+-------------------------+| |nbsp| :diagtext:`will end at the end of the full-expression`|
+| ||:diagtext:`temporary` || ||:diagtext:`temporary` || |
+| |+---------------------------------------------+| |+-------------------------+| |
+| ||:diagtext:`backing array of initializer list`|| ||:diagtext:`backing array`|| |
+| |+---------------------------------------------+| |+-------------------------+| |
++---------------------------------------------------------------------------+-----------------------------------------------+------------------------------------------------------------------------------------------------------------------------------+---------------------------+--------------------------------------------------------------+
+
+
-Wdangling-else
---------------
This diagnostic is enabled by default.
@@ -2654,36 +2747,48 @@ This diagnostic is enabled by default.
**Diagnostic text:**
-+---------------------------------------------------------------------------------------------------------------------------------------------------------------+
-|:warning:`warning:` |nbsp| :diagtext:`binding reference member` |nbsp| :placeholder:`A` |nbsp| :diagtext:`to stack allocated parameter` |nbsp| :placeholder:`B`|
-+---------------------------------------------------------------------------------------------------------------------------------------------------------------+
++-------------------------------------------------------------------------------------------------------------------------------------+-----------------------+------------------------+
+|:warning:`warning:` |nbsp| :diagtext:`binding reference member` |nbsp| :placeholder:`A` |nbsp| :diagtext:`to stack allocated` |nbsp| |+---------------------+| |nbsp| :placeholder:`B`|
+| ||:diagtext:`variable` || |
+| |+---------------------+| |
+| ||:diagtext:`parameter`|| |
+| |+---------------------+| |
++-------------------------------------------------------------------------------------------------------------------------------------+-----------------------+------------------------+
-+----------------------------------------------------------------+----------------------------------+----------------------------------------------------------------------------------+
-|:warning:`warning:` |nbsp| :diagtext:`binding reference` |nbsp| |+--------------------------------+|:diagtext:`member` |nbsp| :placeholder:`A` |nbsp| :diagtext:`to a temporary value`|
-| || || |
-| |+--------------------------------+| |
-| ||:diagtext:`subobject of` |nbsp| || |
-| |+--------------------------------+| |
-+----------------------------------------------------------------+----------------------------------+----------------------------------------------------------------------------------+
++---------------------------+--------------------------------------------------------+--------+----------------------------------+--------------------------------------------------+----------------------+------------------------------------------------------------------------------------------------------------+
+|:warning:`warning:` |nbsp| |+------------------------------------------------------+| |nbsp| |+--------------------------------+|:diagtext:`member` |nbsp| :placeholder:`A` |nbsp| |+--------------------+| |nbsp| :diagtext:`a temporary object whose lifetime is shorter than the lifetime of the constructed object`|
+| ||:diagtext:`reference` || || || ||:diagtext:`binds to`|| |
+| |+------------------------------------------------------+| |+--------------------------------+| |+--------------------+| |
+| ||:diagtext:`backing array for 'std::initializer\_list'`|| ||:diagtext:`subobject of` |nbsp| || ||:diagtext:`is` || |
+| |+------------------------------------------------------+| |+--------------------------------+| |+--------------------+| |
++---------------------------+--------------------------------------------------------+--------+----------------------------------+--------------------------------------------------+----------------------+------------------------------------------------------------------------------------------------------------+
-+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-|:warning:`warning:` |nbsp| :diagtext:`initializing pointer member` |nbsp| :placeholder:`A` |nbsp| :diagtext:`with the stack address of parameter` |nbsp| :placeholder:`B`|
-+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
++-----------------------------------------------------------------------------------------------------------------------------------------------+-----------------------+------------------------+
+|:warning:`warning:` |nbsp| :diagtext:`initializing pointer member` |nbsp| :placeholder:`A` |nbsp| :diagtext:`with the stack address of` |nbsp| |+---------------------+| |nbsp| :placeholder:`B`|
+| ||:diagtext:`variable` || |
+| |+---------------------+| |
+| ||:diagtext:`parameter`|| |
+| |+---------------------+| |
++-----------------------------------------------------------------------------------------------------------------------------------------------+-----------------------+------------------------+
++--------------------------------------------------------------------------------------------------------------------------------------------------+
+|:warning:`warning:` |nbsp| :diagtext:`temporary bound to reference member of allocated object will be destroyed at the end of the full-expression`|
++--------------------------------------------------------------------------------------------------------------------------------------------------+
+
-Wdangling-initializer-list
---------------------------
This diagnostic is enabled by default.
**Diagnostic text:**
-+-----------------------------------------------------------------------------------------------------------------+---------------------------------+
-|:warning:`warning:` |nbsp| :diagtext:`array backing the initializer list will be destroyed at the end of` |nbsp| |+-------------------------------+|
-| ||:diagtext:`the full-expression`||
-| |+-------------------------------+|
-| ||:diagtext:`the constructor` ||
-| |+-------------------------------+|
-+-----------------------------------------------------------------------------------------------------------------+---------------------------------+
++------------------------------------------------------------+----------------------------------------------------------------+-----------------------------------------------------------------------+
+|:warning:`warning:` |nbsp| :diagtext:`array backing` |nbsp| |+--------------------------------------------------------------+| |nbsp| :diagtext:`will be destroyed at the end of the full-expression`|
+| ||:diagtext:`initializer list subobject of the allocated object`|| |
+| |+--------------------------------------------------------------+| |
+| ||:diagtext:`the allocated initializer list` || |
+| |+--------------------------------------------------------------+| |
++------------------------------------------------------------+----------------------------------------------------------------+-----------------------------------------------------------------------+
-Wdate-time
@@ -2779,7 +2884,7 @@ Some of the diagnostics controlled by this flag are en
------------
Some of the diagnostics controlled by this flag are enabled by default.
-Also controls `-Wdeprecated-attributes`_, `-Wdeprecated-declarations`_, `-Wdeprecated-dynamic-exception-spec`_, `-Wdeprecated-increment-bool`_, `-Wdeprecated-register`_, `-Wdeprecated-writable-strings`_.
+Also controls `-Wdeprecated-attributes`_, `-Wdeprecated-declarations`_, `-Wdeprecated-dynamic-exception-spec`_, `-Wdeprecated-increment-bool`_, `-Wdeprecated-register`_, `-Wdeprecated-this-capture`_, `-Wdeprecated-writable-strings`_.
**Diagnostic text:**
@@ -2957,6 +3062,15 @@ This diagnostic is enabled by default.
+-------------------------------------------------------------------------------------------------------------------+
+-Wdeprecated-this-capture
+-------------------------
+**Diagnostic text:**
+
++-------------------------------------------------------------------------------------------------------------+
+|:warning:`warning:` |nbsp| :diagtext:`implicit capture of 'this' with a capture default of '=' is deprecated`|
++-------------------------------------------------------------------------------------------------------------+
+
+
-Wdeprecated-writable-strings
-----------------------------
Synonym for `-Wc++11-compat-deprecated-writable-strings`_.
@@ -3291,6 +3405,10 @@ This diagnostic is enabled by default.
|:warning:`warning:` |nbsp| :diagtext:`duplicate '`:placeholder:`A`:diagtext:`' declaration specifier`|
+-----------------------------------------------------------------------------------------------------+
++-------------------------------------------------------------------------------------------+
+|:warning:`warning:` |nbsp| :diagtext:`multiple identical address spaces specified for type`|
++-------------------------------------------------------------------------------------------+
+
+-----------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`duplicate '`:placeholder:`A`:diagtext:`' declaration specifier`|
+-----------------------------------------------------------------------------------------------------+
@@ -3540,6 +3658,21 @@ Some of the diagnostics controlled by this flag are en
+-------------------------------------------------------------------------------------------------+
+-Wexperimental-isel
+-------------------
+This diagnostic is enabled by default.
+
+**Diagnostic text:**
+
++------------------------------------------------------------------------------------------------------------------------------------+
+|:warning:`warning:` |nbsp| :diagtext:`-fexperimental-isel support for the '`:placeholder:`A`:diagtext:`' architecture is incomplete`|
++------------------------------------------------------------------------------------------------------------------------------------+
+
++----------------------------------------------------------------------------------------------------------------------------------------+
+|:warning:`warning:` |nbsp| :diagtext:`-fexperimental-isel support is incomplete for this architecture at the current optimization level`|
++----------------------------------------------------------------------------------------------------------------------------------------+
+
+
-Wexplicit-initialize-call
--------------------------
This diagnostic is enabled by default.
@@ -3564,15 +3697,6 @@ This diagnostic is enabled by default.
+-------------------------------------------------------------------------------------------------------------------------------------+
--Wextended-offsetof
--------------------
-**Diagnostic text:**
-
-+--------------------------------------------------------------------------------------+
-|:warning:`warning:` |nbsp| :diagtext:`using extended field designator is an extension`|
-+--------------------------------------------------------------------------------------+
-
-
-Wextern-c-compat
-----------------
This diagnostic is enabled by default.
@@ -3625,7 +3749,7 @@ This diagnostic is enabled by default.
-Wextra-semi
------------
-Also controls `-Wc++11-extra-semi`_.
+Also controls `-Wc++11-extra-semi`_, `-Wc++98-compat-extra-semi`_.
**Diagnostic text:**
@@ -3722,11 +3846,15 @@ Also controls `-Wfloat-overflow-conversion`_, `-Wfloat
---------------------------
**Diagnostic text:**
-+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-|:warning:`warning:` |nbsp| :diagtext:`implicit conversion of out of range value from` |nbsp| :placeholder:`A` |nbsp| :diagtext:`to` |nbsp| :placeholder:`B` |nbsp| :diagtext:`changes value from` |nbsp| :placeholder:`C` |nbsp| :diagtext:`to` |nbsp| :placeholder:`D`|
-+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
++-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+|:warning:`warning:` |nbsp| :diagtext:`implicit conversion from` |nbsp| :placeholder:`A` |nbsp| :diagtext:`to` |nbsp| :placeholder:`B` |nbsp| :diagtext:`changes value from` |nbsp| :placeholder:`C` |nbsp| :diagtext:`to` |nbsp| :placeholder:`D`|
++-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
++-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+|:warning:`warning:` |nbsp| :diagtext:`implicit conversion of out of range value from` |nbsp| :placeholder:`A` |nbsp| :diagtext:`to` |nbsp| :placeholder:`B` |nbsp| :diagtext:`is undefined`|
++-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+
-Wfloat-zero-conversion
-----------------------
**Diagnostic text:**
@@ -3960,6 +4088,14 @@ This diagnostic is enabled by default.
-----------------
**Diagnostic text:**
++---------------------------+----------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+|:warning:`warning:` |nbsp| |+--------------------------------------------+| |nbsp| :diagtext:`'`:placeholder:`A`:diagtext:`' should not be used as format arguments; add an explicit cast to` |nbsp| :placeholder:`B` |nbsp| :diagtext:`instead`|
+| ||:diagtext:`values of type` || |
+| |+--------------------------------------------+| |
+| ||:diagtext:`enum values with underlying type`|| |
+| |+--------------------------------------------+| |
++---------------------------+----------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+
+------------------------------------------------------------------------------------------------------------------------------------+-----------------------------+------------------------+
|:warning:`warning:` |nbsp| :diagtext:`format specifies type` |nbsp| :placeholder:`A` |nbsp| :diagtext:`but the argument has` |nbsp| |+---------------------------+| |nbsp| :placeholder:`B`|
| ||:diagtext:`type` || |
@@ -4024,6 +4160,17 @@ The text of this diagnostic is not controlled by Clang
+--------------------------------------------------------------------------------------------------------------------------------------+
+-Wframework-include-private-from-public
+---------------------------------------
+This diagnostic is enabled by default.
+
+**Diagnostic text:**
+
++-------------------------------------------------------------------------------------------------------------------------------+
+|:warning:`warning:` |nbsp| :diagtext:`public framework header includes private framework header '`:placeholder:`A`:diagtext:`'`|
++-------------------------------------------------------------------------------------------------------------------------------+
+
+
-Wfunction-def-in-objc-container
--------------------------------
This diagnostic is enabled by default.
@@ -4035,6 +4182,21 @@ This diagnostic is enabled by default.
+--------------------------------------------------------------------------------------------------------+
+-Wfunction-multiversion
+-----------------------
+This diagnostic is enabled by default.
+
+**Diagnostic text:**
+
++-------------------------------------------------------------------------------------+
+|:warning:`warning:` |nbsp| :diagtext:`body of cpu\_dispatch function will be ignored`|
++-------------------------------------------------------------------------------------+
+
++---------------------------------------------------------------------------------------------+
+|:warning:`warning:` |nbsp| :diagtext:`CPU list contains duplicate entries; attribute ignored`|
++---------------------------------------------------------------------------------------------+
+
+
-Wfuture-compat
---------------
This diagnostic flag exists for GCC compatibility, and has no effect in Clang.
@@ -4073,6 +4235,14 @@ Some of the diagnostics controlled by this flag are en
|:warning:`warning:` |nbsp| :diagtext:`GCC does not allow an attribute in this position on a function declaration`|
+-----------------------------------------------------------------------------------------------------------------+
++------------------------------------------------------------------------------------------------------------------------------------------+
+|:warning:`warning:` |nbsp| :diagtext:`GCC does not allow the` |nbsp| :placeholder:`A` |nbsp| :diagtext:`attribute to be written on a type`|
++------------------------------------------------------------------------------------------------------------------------------------------+
+
++-------------------------------------------------------------------------------------------------------------------+
+|:warning:`warning:` |nbsp| :diagtext:`GCC does not allow variable declarations in for loop initializers before C99`|
++-------------------------------------------------------------------------------------------------------------------+
+
+----------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`'`:placeholder:`A`:diagtext:`' is bound to current loop, GCC binds it to the enclosing loop`|
+----------------------------------------------------------------------------------------------------------------------------------+
@@ -4433,6 +4603,10 @@ This diagnostic is enabled by default.
**Diagnostic text:**
++--------------------------------------------------------------------------------------------------+
+|:warning:`warning:` |nbsp| :diagtext:`'trivial\_abi' cannot be applied to` |nbsp| :placeholder:`A`|
++--------------------------------------------------------------------------------------------------+
+
+---------------------------+-------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| |+-----------------+| |nbsp| :diagtext:`will always resolve to` |nbsp| :placeholder:`A` |nbsp| :diagtext:`even if weak definition of` |nbsp| :placeholder:`B` |nbsp| :diagtext:`is overridden`|
| ||:diagtext:`alias`|| |
@@ -4557,104 +4731,40 @@ This diagnostic is enabled by default.
|:warning:`warning:` |nbsp| :diagtext:`\_\_weak attribute cannot be specified on an automatic variable when ARC is not enabled`|
+------------------------------------------------------------------------------------------------------------------------------+
-+------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------+
-|:warning:`warning:` |nbsp| :placeholder:`A` |nbsp| :diagtext:`attribute only applies to` |nbsp| |+----------------------------------------------------------------------------------------------------------------+|
-| ||:diagtext:`functions` ||
-| |+----------------------------------------------------------------------------------------------------------------+|
-| ||:diagtext:`unions` ||
-| |+----------------------------------------------------------------------------------------------------------------+|
-| ||:diagtext:`variables and functions` ||
-| |+----------------------------------------------------------------------------------------------------------------+|
-| ||:diagtext:`functions and global variables` ||
-| |+----------------------------------------------------------------------------------------------------------------+|
-| ||:diagtext:`functions, variables, and Objective-C interfaces` ||
-| |+----------------------------------------------------------------------------------------------------------------+|
-| ||:diagtext:`functions and methods` ||
-| |+----------------------------------------------------------------------------------------------------------------+|
-| ||:diagtext:`parameters` ||
-| |+----------------------------------------------------------------------------------------------------------------+|
-| ||:diagtext:`functions, methods and blocks` ||
-| |+----------------------------------------------------------------------------------------------------------------+|
-| ||:diagtext:`functions, methods, and classes` ||
-| |+----------------------------------------------------------------------------------------------------------------+|
-| ||:diagtext:`functions, methods, and parameters` ||
-| |+----------------------------------------------------------------------------------------------------------------+|
-| ||:diagtext:`functions, methods, and global variables` ||
-| |+----------------------------------------------------------------------------------------------------------------+|
-| ||:diagtext:`classes` ||
-| |+----------------------------------------------------------------------------------------------------------------+|
-| ||:diagtext:`enums` ||
-| |+----------------------------------------------------------------------------------------------------------------+|
-| ||:diagtext:`variables` ||
-| |+----------------------------------------------------------------------------------------------------------------+|
-| ||:diagtext:`methods` ||
-| |+----------------------------------------------------------------------------------------------------------------+|
-| ||:diagtext:`fields and global variables` ||
-| |+----------------------------------------------------------------------------------------------------------------+|
-| ||:diagtext:`structs` ||
-| |+----------------------------------------------------------------------------------------------------------------+|
-| ||:diagtext:`parameters and typedefs` ||
-| |+----------------------------------------------------------------------------------------------------------------+|
-| ||:diagtext:`variables and typedefs` ||
-| |+----------------------------------------------------------------------------------------------------------------+|
-| ||:diagtext:`thread-local variables` ||
-| |+----------------------------------------------------------------------------------------------------------------+|
-| ||:diagtext:`variables and fields` ||
-| |+----------------------------------------------------------------------------------------------------------------+|
-| ||:diagtext:`variables, data members and tag types` ||
-| |+----------------------------------------------------------------------------------------------------------------+|
-| ||:diagtext:`types and namespaces` ||
-| |+----------------------------------------------------------------------------------------------------------------+|
-| ||:diagtext:`Objective-C interfaces` ||
-| |+----------------------------------------------------------------------------------------------------------------+|
-| ||:diagtext:`methods and properties` ||
-| |+----------------------------------------------------------------------------------------------------------------+|
-| ||:diagtext:`functions, methods, and properties` ||
-| |+----------------------------------------------------------------------------------------------------------------+|
-| ||:diagtext:`struct or union` ||
-| |+----------------------------------------------------------------------------------------------------------------+|
-| ||:diagtext:`struct, union or class` ||
-| |+----------------------------------------------------------------------------------------------------------------+|
-| ||:diagtext:`types` ||
-| |+----------------------------------------------------------------------------------------------------------------+|
-| ||:diagtext:`Objective-C instance methods` ||
-| |+----------------------------------------------------------------------------------------------------------------+|
-| ||:diagtext:`init methods of interface or class extension declarations` ||
-| |+----------------------------------------------------------------------------------------------------------------+|
-| ||:diagtext:`variables, functions and classes` ||
-| |+----------------------------------------------------------------------------------------------------------------+|
-| ||:diagtext:`functions, variables, classes, and Objective-C interfaces` ||
-| |+----------------------------------------------------------------------------------------------------------------+|
-| ||:diagtext:`Objective-C protocols` ||
-| |+----------------------------------------------------------------------------------------------------------------+|
-| ||:diagtext:`variables with static or thread storage duration` ||
-| |+----------------------------------------------------------------------------------------------------------------+|
-| ||:diagtext:`functions, methods, properties, and global variables` ||
-| |+----------------------------------------------------------------------------------------------------------------+|
-| ||:diagtext:`structs, unions, and typedefs` ||
-| |+----------------------------------------------------------------------------------------------------------------+|
-| ||:diagtext:`structs and typedefs` ||
-| |+----------------------------------------------------------------------------------------------------------------+|
-| ||:diagtext:`interface or protocol declarations` ||
-| |+----------------------------------------------------------------------------------------------------------------+|
-| ||:diagtext:`kernel functions` ||
-| |+----------------------------------------------------------------------------------------------------------------+|
-| ||:diagtext:`non-K&R-style functions` ||
-| |+----------------------------------------------------------------------------------------------------------------+|
-| ||:diagtext:`variables, enums, fields and typedefs` ||
-| |+----------------------------------------------------------------------------------------------------------------+|
-| ||:diagtext:`functions, methods, enums, and classes` ||
-| |+----------------------------------------------------------------------------------------------------------------+|
-| ||:diagtext:`structs, classes, variables, functions, and inline namespaces` ||
-| |+----------------------------------------------------------------------------------------------------------------+|
-| ||:diagtext:`variables, functions, methods, types, enumerations, enumerators, labels, and non-static data members`||
-| |+----------------------------------------------------------------------------------------------------------------+|
-| ||:diagtext:`classes and enumerations` ||
-| |+----------------------------------------------------------------------------------------------------------------+|
-| ||:diagtext:`named declarations` ||
-| |+----------------------------------------------------------------------------------------------------------------+|
-+------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------+
++------------------------------------------------------------------------------------------------+---------------------------------------------------+
+|:warning:`warning:` |nbsp| :placeholder:`A` |nbsp| :diagtext:`attribute only applies to` |nbsp| |+-------------------------------------------------+|
+| ||:diagtext:`functions` ||
+| |+-------------------------------------------------+|
+| ||:diagtext:`unions` ||
+| |+-------------------------------------------------+|
+| ||:diagtext:`variables and functions` ||
+| |+-------------------------------------------------+|
+| ||:diagtext:`functions and methods` ||
+| |+-------------------------------------------------+|
+| ||:diagtext:`functions, methods and blocks` ||
+| |+-------------------------------------------------+|
+| ||:diagtext:`functions, methods, and parameters` ||
+| |+-------------------------------------------------+|
+| ||:diagtext:`variables` ||
+| |+-------------------------------------------------+|
+| ||:diagtext:`variables and fields` ||
+| |+-------------------------------------------------+|
+| ||:diagtext:`variables, data members and tag types`||
+| |+-------------------------------------------------+|
+| ||:diagtext:`types and namespaces` ||
+| |+-------------------------------------------------+|
+| ||:diagtext:`variables, functions and classes` ||
+| |+-------------------------------------------------+|
+| ||:diagtext:`kernel functions` ||
+| |+-------------------------------------------------+|
+| ||:diagtext:`non-K&R-style functions` ||
+| |+-------------------------------------------------+|
++------------------------------------------------------------------------------------------------+---------------------------------------------------+
++----------------------------------------------------------------------------------------------------------------+
+|:warning:`warning:` |nbsp| :placeholder:`A` |nbsp| :diagtext:`attribute only applies to` |nbsp| :placeholder:`B`|
++----------------------------------------------------------------------------------------------------------------+
+
+--------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`attribute` |nbsp| :placeholder:`A` |nbsp| :diagtext:`ignored, because it cannot be applied to omitted return type`|
+--------------------------------------------------------------------------------------------------------------------------------------------------------+
@@ -4741,6 +4851,10 @@ This diagnostic is enabled by default.
|:warning:`warning:` |nbsp| :diagtext:`unknown attribute '`:placeholder:`A`:diagtext:`'`|
+---------------------------------------------------------------------------------------+
++-------------------------------------------------------------------------------------------------------------------+
+|:warning:`warning:` |nbsp| :diagtext:`'nocf\_check' attribute ignored; use -fcf-protection to enable the attribute`|
++-------------------------------------------------------------------------------------------------------------------+
+
+------------------------------------------------------------------------------------------------+-----------------------------------+------------------------------+
|:warning:`warning:` |nbsp| :placeholder:`A` |nbsp| :diagtext:`attribute only applies to` |nbsp| |+---------------------------------+| |nbsp| :diagtext:`parameters`|
| ||:diagtext:`Objective-C object` || |
@@ -4765,6 +4879,18 @@ This diagnostic is enabled by default.
|:warning:`warning:` |nbsp| :placeholder:`A` |nbsp| :diagtext:`attribute is deprecated and ignored in OpenCL version` |nbsp| :placeholder:`B`|
+--------------------------------------------------------------------------------------------------------------------------------------------+
++---------------------------------------------------------------------------------------------------------------+----------------------------------+
+|:warning:`warning:` |nbsp| :diagtext:`RISC-V 'interrupt' attribute only applies to functions that have` |nbsp| |+--------------------------------+|
+| ||:diagtext:`no parameters` ||
+| |+--------------------------------+|
+| ||:diagtext:`a 'void' return type`||
+| |+--------------------------------+|
++---------------------------------------------------------------------------------------------------------------+----------------------------------+
+
++----------------------------------------------------------------------------+
+|:warning:`warning:` |nbsp| :diagtext:`repeated RISC-V 'interrupt' attribute`|
++----------------------------------------------------------------------------+
+
+---------------------------+-----------------------+---------------------------------------------------------------------------------------------------------------------------------------------+-----------------------+-------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| |+---------------------+| |nbsp| :diagtext:`of field` |nbsp| :placeholder:`B` |nbsp| :diagtext:`(`:placeholder:`C` |nbsp| :diagtext:`bits) does not match the` |nbsp| |+---------------------+| |nbsp| :diagtext:`of the first field in transparent union; transparent\_union attribute ignored`|
| ||:diagtext:`alignment`|| ||:diagtext:`alignment`|| |
@@ -4803,13 +4929,13 @@ This diagnostic is enabled by default.
|:warning:`warning:` |nbsp| :diagtext:`\_\_declspec attribute` |nbsp| :placeholder:`A` |nbsp| :diagtext:`is not supported`|
+-------------------------------------------------------------------------------------------------------------------------+
-+-------------------------------------------------------+-------------------------+----------------------------------+---------------------------------------------------------------------------------+
-|:warning:`warning:` |nbsp| :diagtext:`ignoring` |nbsp| |+-----------------------+|+--------------------------------+| |nbsp| :diagtext:`'`:placeholder:`C`:diagtext:`' in the target attribute string`|
-| ||:diagtext:`unsupported`||| || |
-| |+-----------------------+|+--------------------------------+| |
-| ||:diagtext:`duplicate` ||| |nbsp| :diagtext:`architecture`|| |
-| |+-----------------------+|+--------------------------------+| |
-+-------------------------------------------------------+-------------------------+----------------------------------+---------------------------------------------------------------------------------+
++---------------------------+-------------------------+----------------------------------+---------------------------------------------------------------------------------------------------------------+
+|:warning:`warning:` |nbsp| |+-----------------------+|+--------------------------------+| |nbsp| :diagtext:`'`:placeholder:`C`:diagtext:`' in the 'target' attribute string; 'target' attribute ignored`|
+| ||:diagtext:`unsupported`||| || |
+| |+-----------------------+|+--------------------------------+| |
+| ||:diagtext:`duplicate` ||| |nbsp| :diagtext:`architecture`|| |
+| |+-----------------------+|+--------------------------------+| |
++---------------------------+-------------------------+----------------------------------+---------------------------------------------------------------------------------------------------------------+
-Wignored-optimization-argument
@@ -4842,11 +4968,22 @@ This diagnostic is enabled by default.
+------------------------------------------------------------------------------------------+------------------------------------------------------------------------------+
+-Wignored-pragma-optimize
+-------------------------
+This diagnostic is enabled by default.
+
+**Diagnostic text:**
+
++--------------------------------------------------------------------------+
+|:warning:`warning:` |nbsp| :diagtext:`'#pragma optimize' is not supported`|
++--------------------------------------------------------------------------+
+
+
-Wignored-pragmas
-----------------
This diagnostic is enabled by default.
-Also controls `-Wignored-pragma-intrinsic`_.
+Also controls `-Wignored-pragma-intrinsic`_, `-Wignored-pragma-optimize`_.
**Diagnostic text:**
@@ -4894,6 +5031,10 @@ Also controls `-Wignored-pragma-intrinsic`_.
|:warning:`warning:` |nbsp| :diagtext:`missing ':' or ')' after` |nbsp| :placeholder:`A` |nbsp| :diagtext:`- ignoring`|
+---------------------------------------------------------------------------------------------------------------------+
++----------------------------------------------------------------------------------------------------+
+|:warning:`warning:` |nbsp| :diagtext:`expected ',' in '#pragma` |nbsp| :placeholder:`A`:diagtext:`'`|
++----------------------------------------------------------------------------------------------------+
+
+---------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`expected identifier in '#pragma` |nbsp| :placeholder:`A`:diagtext:`' - ignored`|
+---------------------------------------------------------------------------------------------------------------------+
@@ -4942,6 +5083,10 @@ Also controls `-Wignored-pragma-intrinsic`_.
|:warning:`warning:` |nbsp| :diagtext:`expected push, pop or a string literal for the section name in '#pragma` |nbsp| :placeholder:`A`:diagtext:`' - ignored`|
+-------------------------------------------------------------------------------------------------------------------------------------------------------------+
++--------------------------------------------------------------------------------------------------------------------------+
+|:warning:`warning:` |nbsp| :diagtext:`expected string literal in '#pragma` |nbsp| :placeholder:`A`:diagtext:`' - ignoring`|
++--------------------------------------------------------------------------------------------------------------------------+
+
+---------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`extra tokens at end of '#pragma` |nbsp| :placeholder:`A`:diagtext:`' - ignored`|
+---------------------------------------------------------------------------------------------------------------------+
@@ -4958,10 +5103,30 @@ Also controls `-Wignored-pragma-intrinsic`_.
|:warning:`warning:` |nbsp| :diagtext:`unknown action for '#pragma` |nbsp| :placeholder:`A`:diagtext:`' - ignored`|
+-----------------------------------------------------------------------------------------------------------------+
++------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------+
+|:warning:`warning:` |nbsp| :diagtext:`unexpected argument '`:placeholder:`A`:diagtext:`' to '#pragma` |nbsp| :placeholder:`B`:diagtext:`'`|+------------------------------------------------+|
+| || ||
+| |+------------------------------------------------+|
+| ||+----------------------------------------------+||
+| |||:diagtext:`; expected` |nbsp| :placeholder:`D`|||
+| ||+----------------------------------------------+||
+| |+------------------------------------------------+|
++------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------+
+
+------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`unknown action '`:placeholder:`B`:diagtext:`' for '#pragma` |nbsp| :placeholder:`A`:diagtext:`' - ignored`|
+------------------------------------------------------------------------------------------------------------------------------------------------+
++--------------------------------------------------------------------------------------------------------+--------------------------------------------------+
+|:warning:`warning:` |nbsp| :diagtext:`missing argument to '#pragma` |nbsp| :placeholder:`A`:diagtext:`'`|+------------------------------------------------+|
+| || ||
+| |+------------------------------------------------+|
+| ||+----------------------------------------------+||
+| |||:diagtext:`; expected` |nbsp| :placeholder:`C`|||
+| ||+----------------------------------------------+||
+| |+------------------------------------------------+|
++--------------------------------------------------------------------------------------------------------+--------------------------------------------------+
+
+----------------------------------------------------------------------------------------------+
*** DIFF OUTPUT TRUNCATED AT 1000 LINES ***
More information about the svn-src-all
mailing list