Author: dim
Date: Wed Mar 20 17:46:38 2019
New Revision: 345336
URL: https://svnweb.freebsd.org/changeset/base/345336

Log:
  Vendor import of clang 8.0.0 release r356365:
  https://llvm.org/svn/llvm-project/cfe/tags/RELEASE_800/final@356365

Modified:
  vendor/clang/dist-release_80/docs/DiagnosticsReference.rst
  vendor/clang/dist-release_80/lib/Basic/Version.cpp

Modified: vendor/clang/dist-release_80/docs/DiagnosticsReference.rst
==============================================================================
--- vendor/clang/dist-release_80/docs/DiagnosticsReference.rst  Wed Mar 20 
17:46:35 2019        (r345335)
+++ vendor/clang/dist-release_80/docs/DiagnosticsReference.rst  Wed Mar 20 
17:46:38 2019        (r345336)
@@ -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.
@@ -572,15 +557,43 @@ This diagnostic is enabled by default.
 
 -Wat-protocol
 -------------
+This diagnostic flag exists for GCC compatibility, and has no effect in Clang.
+
+-Watimport-in-framework-header
+------------------------------
 This diagnostic is enabled by default.
 
 **Diagnostic text:**
 
-+-------------------------------------------------------------------------------------------------------------------+
-|:warning:`warning:` |nbsp| :diagtext:`@protocol is using a forward protocol 
declaration of` |nbsp| :placeholder:`A`|
-+-------------------------------------------------------------------------------------------------------------------+
++------------------------------------------------------------------------------------------------------------------------------------+
+|: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| |+----------------------+| |nbsp| 
:diagtext:`atomic operation may incur significant performance penalty`|
+|                           ||:diagtext:`large`     ||                         
                                                     |
+|                           |+----------------------+|                         
                                                     |
+|                           ||:diagtext:`misaligned`||                         
                                                     |
+|                           |+----------------------+|                         
                                                     |
++---------------------------+------------------------+------------------------------------------------------------------------------+
+
+
+-Watomic-implicit-seq-cst
+-------------------------
+**Diagnostic text:**
+
++---------------------------------------------------------------------------------------------------------------------------------------+
+|:warning:`warning:` |nbsp| :diagtext:`implicit use of sequentially-consistent 
atomic may incur stronger memory barriers than necessary`|
++---------------------------------------------------------------------------------------------------------------------------------------+
+
+
 -Watomic-memory-ordering
 ------------------------
 This diagnostic is enabled by default.
@@ -690,6 +703,20 @@ 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:`only 'unavailable' and 'deprecated' are 
supported for Swift availability`|
++---------------------------------------------------------------------------------------------------------------+
+
 
+------------------------------------------------------------------------------------------------------------------------+
 |:warning:`warning:` |nbsp| :diagtext:`unknown platform` |nbsp| 
:placeholder:`A` |nbsp| :diagtext:`in availability macro`|
 
+------------------------------------------------------------------------------------------------------------------------+
@@ -779,33 +806,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.
@@ -944,9 +984,9 @@ This diagnostic is enabled by default.
 
 **Diagnostic text:**
 
-+------------------------------------------------------------------------------------------------------+
-|:warning:`warning:` |nbsp| :placeholder:`A` |nbsp| :diagtext:`will always 
overflow destination buffer`|
-+------------------------------------------------------------------------------------------------------+
++---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+|:warning:`warning:` |nbsp| :diagtext:`'`:placeholder:`A`:diagtext:`' will 
always overflow; destination buffer has size` |nbsp| 
:placeholder:`B`:diagtext:`, but size argument is` |nbsp| :placeholder:`C`|
++---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
 
 
 -Wbuiltin-requires-header
@@ -1180,28 +1220,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 +1420,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 +1523,22 @@ 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:`aggregate initialization of type` 
|nbsp| :placeholder:`A` |nbsp| :diagtext:`with user-declared constructors is 
incompatible with C++2a`|
++-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+
++------------------------------------------------------------------------------------------------------------------+
+|:warning:`warning:` |nbsp| :diagtext:`'<=>' is a single token in C++2a; add a 
space to avoid a change in behavior`|
++------------------------------------------------------------------------------------------------------------------+
+
++--------------------------------------------------------------------------------------------------------------------------------------------+
+|:warning:`warning:` |nbsp| :diagtext:`type of UTF-8 string literal will 
change from array of const char to array of const char8\_t in C++2a`|
++--------------------------------------------------------------------------------------------------------------------------------------------+
+
 
+-------------------------------------------------------------------------------------------+
 |:warning:`warning:` |nbsp| :diagtext:`'`:placeholder:`A`:diagtext:`' is a 
keyword in C++2a`|
 
+-------------------------------------------------------------------------------------------+
@@ -1523,10 +1559,34 @@ Some of the diagnostics controlled by this flag are en
 |:warning:`warning:` |nbsp| :diagtext:`default member initializer for 
bit-field is a C++2a extension`|
 
+----------------------------------------------------------------------------------------------------+
 
++-----------------------------------------------------------------------------------+-------------------------+----------------------------------------+
+|:warning:`warning:` |nbsp| :diagtext:`use of this statement in a constexpr` 
|nbsp| |+-----------------------+| |nbsp| :diagtext:`is a C++2a extension`|
+|                                                                              
     ||:diagtext:`function`   ||                                        |
+|                                                                              
     |+-----------------------+|                                        |
+|                                                                              
     ||:diagtext:`constructor`||                                        |
+|                                                                              
     |+-----------------------+|                                        |
++-----------------------------------------------------------------------------------+-------------------------+----------------------------------------+
+
++------------------------------------------------------------------------------+-------------------------+----------------------------------------+
+|:warning:`warning:` |nbsp| :diagtext:`function try block in constexpr` |nbsp| 
|+-----------------------+| |nbsp| :diagtext:`is a C++2a extension`|
+|                                                                              
||:diagtext:`function`   ||                                        |
+|                                                                              
|+-----------------------+|                                        |
+|                                                                              
||:diagtext:`constructor`||                                        |
+|                                                                              
|+-----------------------+|                                        |
++------------------------------------------------------------------------------+-------------------------+----------------------------------------+
+
 
+--------------------------------------------------------------------------------------------------------------------+
 |:warning:`warning:` |nbsp| :diagtext:`explicit capture of 'this' with a 
capture default of '=' is a C++2a extension`|
 
+--------------------------------------------------------------------------------------------------------------------+
 
++-----------------------------------------------------------------------------------------------------------+
+|:warning:`warning:` |nbsp| :diagtext:`range-based for loop initialization 
statements are a C++2a extension`|
++-----------------------------------------------------------------------------------------------------------+
+
++----------------------------------------------------------------------------------------------+
+|:warning:`warning:` |nbsp| :diagtext:`inline nested namespace definition is a 
C++2a extension`|
++----------------------------------------------------------------------------------------------+
+
 
+--------------------------------------------------------------------------------------------------------------------------+
 |:warning:`warning:` |nbsp| :diagtext:`invoking a pointer to a 'const &' 
member function on an rvalue is a C++2a extension`|
 
+--------------------------------------------------------------------------------------------------------------------------+
@@ -1540,11 +1600,67 @@ Some of the diagnostics controlled by this flag are en
 |:warning:`warning:` |nbsp| :diagtext:`default member initializer for 
bit-field is incompatible with C++ standards before C++2a`|
 
+-------------------------------------------------------------------------------------------------------------------------------+
 
++-----------------------------------------------------------------------------------+-------------------------+-------------------------------------------------------------------+
+|:warning:`warning:` |nbsp| :diagtext:`use of this statement in a constexpr` 
|nbsp| |+-----------------------+| |nbsp| :diagtext:`is incompatible with C++ 
standards before C++2a`|
+|                                                                              
     ||:diagtext:`function`   ||                                                
                   |
+|                                                                              
     |+-----------------------+|                                                
                   |
+|                                                                              
     ||:diagtext:`constructor`||                                                
                   |
+|                                                                              
     |+-----------------------+|                                                
                   |
++-----------------------------------------------------------------------------------+-------------------------+-------------------------------------------------------------------+
+
++------------------------------------------------------------------------------+-------------------------+-------------------------------------------------------------------+
+|:warning:`warning:` |nbsp| :diagtext:`function try block in constexpr` |nbsp| 
|+-----------------------+| |nbsp| :diagtext:`is incompatible with C++ 
standards before C++2a`|
+|                                                                              
||:diagtext:`function`   ||                                                     
              |
+|                                                                              
|+-----------------------+|                                                     
              |
+|                                                                              
||:diagtext:`constructor`||                                                     
              |
+|                                                                              
|+-----------------------+|                                                     
              |
++------------------------------------------------------------------------------+-------------------------+-------------------------------------------------------------------+
+
++-------------------------------------------------------------------------+--------------------------------------+----------------------------------------------------------------------------------------------------------------+
+|:warning:`warning:` |nbsp| :diagtext:`explicitly defaulting this` |nbsp| 
|+------------------------------------+| |nbsp| :diagtext:`with a type 
different from the implicit type is incompatible with C++ standards before 
C++2a`|
+|                                                                         
||:diagtext:`default constructor`     ||                                        
                                                                        |
+|                                                                         
|+------------------------------------+|                                        
                                                                        |
+|                                                                         
||:diagtext:`copy constructor`        ||                                        
                                                                        |
+|                                                                         
|+------------------------------------+|                                        
                                                                        |
+|                                                                         
||:diagtext:`move constructor`        ||                                        
                                                                        |
+|                                                                         
|+------------------------------------+|                                        
                                                                        |
+|                                                                         
||:diagtext:`copy assignment operator`||                                        
                                                                        |
+|                                                                         
|+------------------------------------+|                                        
                                                                        |
+|                                                                         
||:diagtext:`move assignment operator`||                                        
                                                                        |
+|                                                                         
|+------------------------------------+|                                        
                                                                        |
+|                                                                         
||:diagtext:`destructor`              ||                                        
                                                                        |
+|                                                                         
|+------------------------------------+|                                        
                                                                        |
++-------------------------------------------------------------------------+--------------------------------------+----------------------------------------------------------------------------------------------------------------+
+
 
+-----------------------------------------------------------------------------------------------------------------------------------------------+
 |: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:`range-based for loop initialization 
statements are incompatible with C++ standards before C++2a`|
++--------------------------------------------------------------------------------------------------------------------------------------+
 
++-------------------------------------------------------------------------------------------------------------------------+
+|:warning:`warning:` |nbsp| :diagtext:`inline nested namespace definition is 
incompatible with C++ standards before C++2a`|
++-------------------------------------------------------------------------------------------------------------------------+
+
++---------------------------+----------------------------------+-----------------------------------------------------------------------------+
+|:warning:`warning:` |nbsp| |+--------------------------------+| |nbsp| 
:diagtext:`of lambda is incompatible with C++ standards before C++2a`|
+|                           ||:diagtext:`default construction`||               
                                                              |
+|                           |+--------------------------------+|               
                                                              |
+|                           ||:diagtext:`assignment`          ||               
                                                              |
+|                           |+--------------------------------+|               
                                                              |
++---------------------------+----------------------------------+-----------------------------------------------------------------------------+
+
++-----------------------------------------------------------------------------------------------------+
+|: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`_.
@@ -1560,6 +1676,16 @@ Also controls `-Wc++98-c++11-c++14-c++17-compat`_.
 --------------------------
 **Diagnostic text:**
 
++------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------+
+|:warning:`warning:` |nbsp| :diagtext:`class template argument deduction is 
incompatible with C++ standards before 
C++17`|+---------------------------------------------------------------------------------+|
+|                                                                              
                                          ||                                    
                                             ||
+|                                                                              
                                          
|+---------------------------------------------------------------------------------+|
+|                                                                              
                                          
||+-------------------------------------------------------------------------------+||
+|                                                                              
                                          |||:diagtext:`; for compatibility, 
use explicit type name` |nbsp| :placeholder:`B`|||
+|                                                                              
                                          
||+-------------------------------------------------------------------------------+||
+|                                                                              
                                          
|+---------------------------------------------------------------------------------+|
++------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------+
+
 
+---------------------------------------------------------------------------------------------------+
 |:warning:`warning:` |nbsp| :diagtext:`constexpr if is incompatible with C++ 
standards before C++17`|
 
+---------------------------------------------------------------------------------------------------+
@@ -1688,10 +1814,18 @@ Also controls `-Wc++98-c++11-c++14-compat`_.
 |:warning:`warning:` |nbsp| :diagtext:`'decltype(auto)' type specifier is 
incompatible with C++ standards before C++14`|
 
+----------------------------------------------------------------------------------------------------------------------+
 
++------------------------------------------------------------------------------------------------------------+
+|:warning:`warning:` |nbsp| :diagtext:`return type deduction is incompatible 
with C++ standards before C++14`|
++------------------------------------------------------------------------------------------------------------+
+
 
+--------------------------------------------------------------------------------------------------------+
 |:warning:`warning:` |nbsp| :diagtext:`digit separators are incompatible with 
C++ standards before C++14`|
 
+--------------------------------------------------------------------------------------------------------+
 
++----------------------------------------------------------------------------------+
+|:warning:`warning:` |nbsp| :diagtext:`generic lambdas are incompatible with 
C++11`|
++----------------------------------------------------------------------------------+
+
 
+-------------------------------------------------------------------------------------------------------------------+
 |:warning:`warning:` |nbsp| :diagtext:`initialized lambda captures are 
incompatible with C++ standards before C++14`|
 
+-------------------------------------------------------------------------------------------------------------------+
@@ -1855,7 +1989,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 +2083,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 +2134,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 +2183,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 +2223,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`|
 
+----------------------------------------------------------------------------------+
@@ -2225,6 +2346,21 @@ Some of the diagnostics controlled by this flag are en
 
+---------------------------------------------------------------------------------------+
 
 
+-Wcall-to-pure-virtual-from-ctor-dtor
+-------------------------------------
+This diagnostic is enabled by default.
+
+**Diagnostic text:**
+
++-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+-------------------------+----------------------------------------------+
+|:warning:`warning:` |nbsp| :diagtext:`call to pure virtual member function` 
|nbsp| :placeholder:`A` |nbsp| :diagtext:`has undefined behavior; overrides of` 
|nbsp| :placeholder:`A` |nbsp| :diagtext:`in subclasses are not available in 
the` |nbsp| |+-----------------------+| |nbsp| :diagtext:`of` |nbsp| 
:placeholder:`C`|
+|                                                                              
                                                                                
                                                                                
       ||:diagtext:`constructor`||                                              
|
+|                                                                              
                                                                                
                                                                                
       |+-----------------------+|                                              
|
+|                                                                              
                                                                                
                                                                                
       ||:diagtext:`destructor` ||                                              
|
+|                                                                              
                                                                                
                                                                                
       |+-----------------------+|                                              
|
++-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+-------------------------+----------------------------------------------+
+
+
 -Wcast-align
 ------------
 **Diagnostic text:**
@@ -2275,6 +2411,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.
@@ -2310,15 +2469,19 @@ This diagnostic is enabled by default.
 |:warning:`warning:` |nbsp| :diagtext:`support for '/Yc' and '/Yu' with 
different filenames not implemented yet; flags ignored`|
 
+------------------------------------------------------------------------------------------------------------------------------+
 
-+--------------------------------------------------------------------------------------------------------------------------------------+
-|:warning:`warning:` |nbsp| :diagtext:`support for 
'`:placeholder:`A`:diagtext:`' without a filename not implemented yet; flag 
ignored`|
-+--------------------------------------------------------------------------------------------------------------------------------------+
-
 
+----------------------------------------------------------------------------------------------------------------------------------------------------+
 |:warning:`warning:` |nbsp| :diagtext:`support for 
'`:placeholder:`A`:diagtext:`' without a corresponding /FI flag not implemented 
yet; flag ignored`|
 
+----------------------------------------------------------------------------------------------------------------------------------------------------+
 
++-------------------------------------------------------------------------------------------------------------------------------------+
+|:warning:`warning:` |nbsp| :diagtext:`#pragma hdrstop filename not supported, 
/Fp can be used to specify precompiled header filename`|
++-------------------------------------------------------------------------------------------------------------------------------------+
 
++-----------------------------------------------------------------------------------------------------------------------------------------------------+
+|: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.
@@ -2516,7 +2679,7 @@ This diagnostic is enabled by default.
 ------------
 Some of the diagnostics controlled by this flag are enabled by default.
 
-Also controls `-Wbitfield-enum-conversion`_, `-Wbool-conversion`_, 
`-Wconstant-conversion`_, `-Wenum-conversion`_, `-Wfloat-conversion`_, 
`-Wint-conversion`_, `-Wliteral-conversion`_, `-Wnon-literal-null-conversion`_, 
`-Wnull-conversion`_, `-Wobjc-literal-conversion`_, `-Wshorten-64-to-32`_, 
`-Wsign-conversion`_, `-Wstring-conversion`_.
+Also controls `-Wbitfield-enum-conversion`_, `-Wbool-conversion`_, 
`-Wconstant-conversion`_, `-Wenum-conversion`_, `-Wfloat-conversion`_, 
`-Wimplicit-float-conversion`_, `-Wimplicit-int-conversion`_, 
`-Wint-conversion`_, `-Wliteral-conversion`_, `-Wnon-literal-null-conversion`_, 
`-Wnull-conversion`_, `-Wobjc-literal-conversion`_, `-Wshorten-64-to-32`_, 
`-Wsign-conversion`_, `-Wstring-conversion`_.
 
 **Diagnostic text:**
 
@@ -2524,18 +2687,14 @@ Also controls `-Wbitfield-enum-conversion`_, `-Wbool-c
 |:warning:`warning:` |nbsp| :diagtext:`implicit conversion discards imaginary 
component:` |nbsp| :placeholder:`A` |nbsp| :diagtext:`to` |nbsp| 
:placeholder:`B`|
 
+--------------------------------------------------------------------------------------------------------------------------------------------------------------+
 
-+----------------------------------------------------------------------------------------------------------------------------------------------------------------+
-|: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 loses integer 
precision:` |nbsp| :placeholder:`A` |nbsp| :diagtext:`to` |nbsp| 
:placeholder:`B`|
-+---------------------------------------------------------------------------------------------------------------------------------------------------------+
-
 
+--------------------------------------------------------------------------------------------------------------------------------------------------------+
 |:warning:`warning:` |nbsp| :diagtext:`implicit conversion turns vector to 
scalar:` |nbsp| :placeholder:`A` |nbsp| :diagtext:`to` |nbsp| :placeholder:`B`|
 
+--------------------------------------------------------------------------------------------------------------------------------------------------------+
 
++---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+|:warning:`warning:` |nbsp| :diagtext:`passing non-generic address space 
pointer to` |nbsp| :placeholder:`A` |nbsp| :diagtext:`may cause dynamic 
conversion affecting performance`|
++---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+
 
+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
 |:warning:`warning:` |nbsp| :diagtext:`non-type template argument with value 
'`:placeholder:`A`:diagtext:`' converted to '`:placeholder:`B`:diagtext:`' for 
unsigned template parameter of type` |nbsp| :placeholder:`C`|
 
+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
@@ -2597,6 +2756,17 @@ Synonym for `-W#warnings`_.
 -------------------
 This diagnostic flag exists for GCC compatibility, and has no effect in Clang.
 
+-Wctu
+-----
+This diagnostic is enabled by default.
+
+**Diagnostic text:**
+
++------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+|:warning:`warning:` |nbsp| :diagtext:`imported AST from 
'`:placeholder:`A`:diagtext:`' had been generated for a different target, 
current:` |nbsp| :placeholder:`B`:diagtext:`, imported:` |nbsp| 
:placeholder:`C`|
++------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+
+
 -Wcuda-compat
 -------------
 Some of the diagnostics controlled by this flag are enabled by default.
@@ -2637,6 +2807,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,38 +2873,61 @@ 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`                    ||                               
                                        |
+|                                                            
|+--------------------------------------------------------------+|              
                                                         |
++------------------------------------------------------------+----------------------------------------------------------------+-----------------------------------------------------------------------+
 
 
+-Wdarwin-sdk-settings
+---------------------
+This diagnostic is enabled by default.
+
+**Diagnostic text:**
+
++----------------------------------------------------------------------------------------------------------+
+|:warning:`warning:` |nbsp| :diagtext:`SDK settings were ignored as 
'SDKSettings.json' could not be parsed`|
++----------------------------------------------------------------------------------------------------------+
+
+
 -Wdate-time
 -----------
 **Diagnostic text:**
@@ -2726,6 +2968,29 @@ This diagnostic is enabled by default.
 
+-----------------------------------------------------------------------------------+
 
 
+-Wdefaulted-function-deleted
+----------------------------
+This diagnostic is enabled by default.
+
+**Diagnostic text:**
+
++-------------------------------------------------------------------+--------------------------------------+-----------------------------------------+
+|:warning:`warning:` |nbsp| :diagtext:`explicitly defaulted` |nbsp| 
|+------------------------------------+| |nbsp| :diagtext:`is implicitly 
deleted`|
+|                                                                   
||:diagtext:`default constructor`     ||                                        
 |
+|                                                                   
|+------------------------------------+|                                        
 |
+|                                                                   
||:diagtext:`copy constructor`        ||                                        
 |
+|                                                                   
|+------------------------------------+|                                        
 |
+|                                                                   
||:diagtext:`move constructor`        ||                                        
 |
+|                                                                   
|+------------------------------------+|                                        
 |
+|                                                                   
||:diagtext:`copy assignment operator`||                                        
 |
+|                                                                   
|+------------------------------------+|                                        
 |
+|                                                                   
||:diagtext:`move assignment operator`||                                        
 |
+|                                                                   
|+------------------------------------+|                                        
 |
+|                                                                   
||:diagtext:`destructor`              ||                                        
 |
+|                                                                   
|+------------------------------------+|                                        
 |
++-------------------------------------------------------------------+--------------------------------------+-----------------------------------------+
+
+
 -Wdelegating-ctor-cycles
 ------------------------
 This diagnostic is an error by default, but the flag 
``-Wno-delegating-ctor-cycles`` can be used to disable the error.
@@ -2737,6 +3002,21 @@ This diagnostic is an error by default, but the flag `
 
+------------------------------------------------------------------------------------------------------------------------+
 
 
+-Wdelete-abstract-non-virtual-dtor
+----------------------------------
+This diagnostic is enabled by default.
+
+**Diagnostic text:**
+
++---------------------------+------------------------+------------------------------------------------------------------------------------------------------------------------+
+|:warning:`warning:` |nbsp| |+----------------------+| |nbsp| 
:diagtext:`called on` |nbsp| :placeholder:`B` |nbsp| :diagtext:`that is 
abstract but has non-virtual destructor`|
+|                           ||:diagtext:`delete`    ||                         
                                                                                
               |
+|                           |+----------------------+|                         
                                                                                
               |
+|                           ||:diagtext:`destructor`||                         
                                                                                
               |
+|                           |+----------------------+|                         
                                                                                
               |
++---------------------------+------------------------+------------------------------------------------------------------------------------------------------------------------+
+
+
 -Wdelete-incomplete
 -------------------
 This diagnostic is enabled by default.
@@ -2752,20 +3032,10 @@ This diagnostic is enabled by default.
 
+--------------------------------------------------------------------------------------------------------------------------------------------------+
 
 
--Wdelete-non-virtual-dtor
--------------------------
-Some of the diagnostics controlled by this flag are enabled by default.
-
+-Wdelete-non-abstract-non-virtual-dtor
+--------------------------------------
 **Diagnostic text:**
 
-+---------------------------+------------------------+------------------------------------------------------------------------------------------------------------------------+
-|:warning:`warning:` |nbsp| |+----------------------+| |nbsp| 
:diagtext:`called on` |nbsp| :placeholder:`B` |nbsp| :diagtext:`that is 
abstract but has non-virtual destructor`|
-|                           ||:diagtext:`delete`    ||                         
                                                                                
               |
-|                           |+----------------------+|                         
                                                                                
               |
-|                           ||:diagtext:`destructor`||                         
                                                                                
               |
-|                           |+----------------------+|                         
                                                                                
               |
-+---------------------------+------------------------+------------------------------------------------------------------------------------------------------------------------+
-
 
+---------------------------+------------------------+----------------------------------------------------------------------------------------------------------------------------------------+
 |:warning:`warning:` |nbsp| |+----------------------+| |nbsp| 
:diagtext:`called on non-final` |nbsp| :placeholder:`B` |nbsp| :diagtext:`that 
has virtual functions but non-virtual destructor`|
 |                           ||:diagtext:`delete`    ||                         
                                                                                
                               |
@@ -2775,11 +3045,18 @@ Some of the diagnostics controlled by this flag are en
 
+---------------------------+------------------------+----------------------------------------------------------------------------------------------------------------------------------------+
 
 
+-Wdelete-non-virtual-dtor
+-------------------------
+Some of the diagnostics controlled by this flag are enabled by default.
+
+Controls `-Wdelete-abstract-non-virtual-dtor`_, 
`-Wdelete-non-abstract-non-virtual-dtor`_.
+
+
 -Wdeprecated
 ------------
 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 +3234,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`_.
@@ -3283,7 +3569,7 @@ Also controls `-Wdocumentation-unknown-command`_.
 
 -Wduplicate-decl-specifier
 --------------------------
-This diagnostic is enabled by default.
+Some of the diagnostics controlled by this flag are enabled by default.
 
 **Diagnostic text:**
 
@@ -3295,7 +3581,15 @@ 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`|
++-----------------------------------------------------------------------------------------------------+
+
+
 -Wduplicate-enum
 ----------------
 **Diagnostic text:**
@@ -3418,6 +3712,21 @@ This diagnostic is enabled by default.
 
+-------------------------------------------------------------------------------------------------+
 
 
+-Wempty-init-stmt
+-----------------
+**Diagnostic text:**
+
++--------------------------------------------------------------------------+-----------------------------+---------------------------+
+|:warning:`warning:` |nbsp| :diagtext:`empty initialization statement of 
'`|+---------------------------+|:diagtext:`' has no effect`|
+|                                                                          
||:diagtext:`if`             ||                           |
+|                                                                          
|+---------------------------+|                           |
+|                                                                          
||:diagtext:`switch`         ||                           |
+|                                                                          
|+---------------------------+|                           |
+|                                                                          
||:diagtext:`range-based for`||                           |
+|                                                                          
|+---------------------------+|                           |
++--------------------------------------------------------------------------+-----------------------------+---------------------------+
+
+
 -Wempty-translation-unit
 ------------------------
 **Diagnostic text:**
@@ -3540,6 +3849,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 +3888,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
 -----------------

*** DIFF OUTPUT TRUNCATED AT 1000 LINES ***
_______________________________________________
[email protected] mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "[email protected]"

Reply via email to