..
  -------------------------------------------------------------------
  NOTE: This file is automatically generated by running clang-tblgen
  -gen-diag-docs. Do not edit this file by hand!!
  -------------------------------------------------------------------

.. Add custom CSS to output. FIXME: This should be put into <head> rather
   than the start of <body>.
.. raw:: html

    <style>
    table.docutils {
      width: 1px;
    }
    table.docutils td {
      border: none;
      padding: 0 0 0 0.2em;
      vertical-align: middle;
      white-space: nowrap;
      width: 1px;
      font-family: monospace;
    }
    table.docutils tr + tr {
      border-top: 0.2em solid #aaa;
    }
    .error {
      font-family: monospace;
      font-weight: bold;
      color: #c00;
    }
    .warning {
      font-family: monospace;
      font-weight: bold;
      color: #80a;
    }
    .remark {
      font-family: monospace;
      font-weight: bold;
      color: #00c;
    }
    .diagtext {
      font-family: monospace;
      font-weight: bold;
    }
    </style>

.. FIXME: rST doesn't support formatting this, so we format all <td> elements
          as monospace font face instead.
.. |nbsp| unicode:: 0xA0
   :trim:

.. Roles generated by clang-tblgen.
.. role:: error
.. role:: warning
.. role:: remark
.. role:: diagtext
.. role:: placeholder(emphasis)

=========================
Diagnostic flags in Clang
=========================
.. contents::
   :local:

Introduction
============

This page lists the diagnostic flags currently supported by Clang.

Diagnostic flags
================

-W
--
Synonym for `-Wextra`_.


-W#pragma-messages
------------------
This diagnostic is enabled by default.

**Diagnostic text:**

The text of this diagnostic is not controlled by Clang.


-W#warnings
-----------
This diagnostic is enabled by default.

**Diagnostic text:**

The text of this diagnostic is not controlled by Clang.


-WCFString-literal
------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`input conversion stopped due to an input byte that does not belong to the input codeset UTF-8`|
+------------------------------------------------------------------------------------------------------------------------------------+


-WCL4
-----
Some of the diagnostics controlled by this flag are enabled by default.

Controls `-Wall`_, `-Wextra`_.


-WIndependentClass-attribute
----------------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`'objc\_independent\_class' attribute may be put on a typedef only; attribute is ignored`|
+------------------------------------------------------------------------------------------------------------------------------+

+----------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`'objc\_independent\_class' attribute may be put on Objective-C object pointer type only; attribute is ignored`|
+----------------------------------------------------------------------------------------------------------------------------------------------------+


-WNSObject-attribute
--------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+--------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`'NSObject' attribute may be put on a typedef only; attribute is ignored`|
+--------------------------------------------------------------------------------------------------------------+


-Wabi
-----
This diagnostic flag exists for GCC compatibility, and has no effect in Clang.

-Wabsolute-value
----------------
This diagnostic is enabled by default.

**Diagnostic text:**

+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`absolute value function` |nbsp| :placeholder:`A` |nbsp| :diagtext:`given an argument of type` |nbsp| :placeholder:`B` |nbsp| :diagtext:`but has parameter of type` |nbsp| :placeholder:`C` |nbsp| :diagtext:`which may cause truncation of value`|
+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+

+---------------------------------------------------------------------------+----------------------+---------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`taking the absolute value of` |nbsp| |+--------------------+| |nbsp| :diagtext:`type` |nbsp| :placeholder:`B` |nbsp| :diagtext:`is suspicious`|
|                                                                           ||:diagtext:`pointer` ||                                                                                 |
|                                                                           |+--------------------+|                                                                                 |
|                                                                           ||:diagtext:`function`||                                                                                 |
|                                                                           |+--------------------+|                                                                                 |
|                                                                           ||:diagtext:`array`   ||                                                                                 |
|                                                                           |+--------------------+|                                                                                 |
+---------------------------------------------------------------------------+----------------------+---------------------------------------------------------------------------------+

+------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`taking the absolute value of unsigned type` |nbsp| :placeholder:`A` |nbsp| :diagtext:`has no effect`|
+------------------------------------------------------------------------------------------------------------------------------------------+

+----------------------------------------------------+----------------------------+------------------------------------------------------------------------------------------------------------------+----------------------------+------------------------+
|:warning:`warning:` |nbsp| :diagtext:`using` |nbsp| |+--------------------------+| |nbsp| :diagtext:`absolute value function` |nbsp| :placeholder:`A` |nbsp| :diagtext:`when argument is of` |nbsp| |+--------------------------+| |nbsp| :diagtext:`type`|
|                                                    ||:diagtext:`integer`       ||                                                                                                                  ||:diagtext:`integer`       ||                        |
|                                                    |+--------------------------+|                                                                                                                  |+--------------------------+|                        |
|                                                    ||:diagtext:`floating point`||                                                                                                                  ||:diagtext:`floating point`||                        |
|                                                    |+--------------------------+|                                                                                                                  |+--------------------------+|                        |
|                                                    ||:diagtext:`complex`       ||                                                                                                                  ||:diagtext:`complex`       ||                        |
|                                                    |+--------------------------+|                                                                                                                  |+--------------------------+|                        |
+----------------------------------------------------+----------------------------+------------------------------------------------------------------------------------------------------------------+----------------------------+------------------------+


-Wabstract-final-class
----------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+-----------------------------------------------------------------+--------------------+-------------+
|:warning:`warning:` |nbsp| :diagtext:`abstract class is marked '`|+------------------+|:diagtext:`'`|
|                                                                 ||:diagtext:`final` ||             |
|                                                                 |+------------------+|             |
|                                                                 ||:diagtext:`sealed`||             |
|                                                                 |+------------------+|             |
+-----------------------------------------------------------------+--------------------+-------------+


-Wabstract-vbase-init
---------------------
**Diagnostic text:**

+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`initializer for virtual base class` |nbsp| :placeholder:`A` |nbsp| :diagtext:`of abstract class` |nbsp| :placeholder:`B` |nbsp| :diagtext:`will never be used`|
+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+


-Waddress
---------
This diagnostic is enabled by default.

Controls `-Wpointer-bool-conversion`_, `-Wstring-compare`_, `-Wtautological-pointer-compare`_.


-Waddress-of-packed-member
--------------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`taking address of packed member` |nbsp| :placeholder:`A` |nbsp| :diagtext:`of class or structure` |nbsp| :placeholder:`B` |nbsp| :diagtext:`may result in an unaligned pointer value`|
+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+


-Waddress-of-temporary
----------------------
This diagnostic is an error by default, but the flag ``-Wno-address-of-temporary`` can be used to disable the error.

**Diagnostic text:**

+-----------------------------------------------------------------------------------------------------------+
|:error:`error:` |nbsp| :diagtext:`taking the address of a temporary object of type` |nbsp| :placeholder:`A`|
+-----------------------------------------------------------------------------------------------------------+


-Waggregate-return
------------------
This diagnostic flag exists for GCC compatibility, and has no effect in Clang.

-Wall
-----
Some of the diagnostics controlled by this flag are enabled by default.

Controls `-Wmost`_, `-Wparentheses`_, `-Wswitch`_, `-Wswitch-bool`_.


-Walloca-with-align-alignof
---------------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+--------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`second argument to \_\_builtin\_alloca\_with\_align is supposed to be in bits`|
+--------------------------------------------------------------------------------------------------------------------+


-Wambiguous-delete
------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`multiple suitable` |nbsp| :placeholder:`A` |nbsp| :diagtext:`functions for` |nbsp| :placeholder:`B`:diagtext:`; no 'operator delete' function will be invoked if initialization throws an exception`|
+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+


-Wambiguous-ellipsis
--------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+------------------------------------------------------------------------------------------------+---------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`'...' in this location creates a C-style varargs function`|+-------------------------------------------+|
|                                                                                                ||:diagtext:`, not a function parameter pack`||
|                                                                                                |+-------------------------------------------+|
|                                                                                                ||                                           ||
|                                                                                                |+-------------------------------------------+|
+------------------------------------------------------------------------------------------------+---------------------------------------------+


-Wambiguous-macro
-----------------
This diagnostic is enabled by default.

**Diagnostic text:**

+-------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`ambiguous expansion of macro` |nbsp| :placeholder:`A`|
+-------------------------------------------------------------------------------------------+


-Wambiguous-member-template
---------------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`lookup of` |nbsp| :placeholder:`A` |nbsp| :diagtext:`in member access expression is ambiguous; using member of` |nbsp| :placeholder:`B`|
+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------+


-Wanalyzer-incompatible-plugin
------------------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+----------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`checker plugin '`:placeholder:`A`:diagtext:`' is not compatible with this version of the analyzer`|
+----------------------------------------------------------------------------------------------------------------------------------------+


-Wanonymous-pack-parens
-----------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+---------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`ISO C++11 requires a parenthesized pack declaration to have a name`|
+---------------------------------------------------------------------------------------------------------+


-Warc
-----
This diagnostic is enabled by default.

Controls `-Warc-non-pod-memaccess`_, `-Warc-retain-cycles`_, `-Warc-unsafe-retained-assign`_.


-Warc-bridge-casts-disallowed-in-nonarc
---------------------------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+-------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`'`:placeholder:`A`:diagtext:`' casts have no effect when not using ARC`|
+-------------------------------------------------------------------------------------------------------------+


-Warc-maybe-repeated-use-of-weak
--------------------------------
**Diagnostic text:**

+---------------------------------------------------+-------------------------------+------------------------------------------------------------------------------------------+----------------------+-------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`weak` |nbsp| |+-----------------------------+| |nbsp| :placeholder:`B` |nbsp| :diagtext:`may be accessed multiple times in this` |nbsp| |+--------------------+| |nbsp| :diagtext:`and may be unpredictably set to nil; assign to a strong variable to keep the object alive`|
|                                                   ||:diagtext:`variable`         ||                                                                                          ||:diagtext:`function`||                                                                                                             |
|                                                   |+-----------------------------+|                                                                                          |+--------------------+|                                                                                                             |
|                                                   ||:diagtext:`property`         ||                                                                                          ||:diagtext:`method`  ||                                                                                                             |
|                                                   |+-----------------------------+|                                                                                          |+--------------------+|                                                                                                             |
|                                                   ||:diagtext:`implicit property`||                                                                                          ||:diagtext:`block`   ||                                                                                                             |
|                                                   |+-----------------------------+|                                                                                          |+--------------------+|                                                                                                             |
|                                                   ||:diagtext:`instance variable`||                                                                                          ||:diagtext:`lambda`  ||                                                                                                             |
|                                                   |+-----------------------------+|                                                                                          |+--------------------+|                                                                                                             |
+---------------------------------------------------+-------------------------------+------------------------------------------------------------------------------------------+----------------------+-------------------------------------------------------------------------------------------------------------+


-Warc-non-pod-memaccess
-----------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+---------------------------+-----------------------------+-----------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| |+---------------------------+| |nbsp| :diagtext:`this` |nbsp| :placeholder:`B` |nbsp| :diagtext:`call is a pointer to ownership-qualified type` |nbsp| :placeholder:`C`|
|                           ||:diagtext:`destination for`||                                                                                                                                         |
|                           |+---------------------------+|                                                                                                                                         |
|                           ||:diagtext:`source of`      ||                                                                                                                                         |
|                           |+---------------------------+|                                                                                                                                         |
+---------------------------+-----------------------------+-----------------------------------------------------------------------------------------------------------------------------------------+


-Warc-performSelector-leaks
---------------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+-------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`performSelector may cause a leak because its selector is unknown`|
+-------------------------------------------------------------------------------------------------------+


-Warc-repeated-use-of-weak
--------------------------
Also controls `-Warc-maybe-repeated-use-of-weak`_.

**Diagnostic text:**

+---------------------------------------------------+-------------------------------+--------------------------------------------------------------------------------------+----------------------+-------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`weak` |nbsp| |+-----------------------------+| |nbsp| :placeholder:`B` |nbsp| :diagtext:`is accessed multiple times in this` |nbsp| |+--------------------+| |nbsp| :diagtext:`but may be unpredictably set to nil; assign to a strong variable to keep the object alive`|
|                                                   ||:diagtext:`variable`         ||                                                                                      ||:diagtext:`function`||                                                                                                             |
|                                                   |+-----------------------------+|                                                                                      |+--------------------+|                                                                                                             |
|                                                   ||:diagtext:`property`         ||                                                                                      ||:diagtext:`method`  ||                                                                                                             |
|                                                   |+-----------------------------+|                                                                                      |+--------------------+|                                                                                                             |
|                                                   ||:diagtext:`implicit property`||                                                                                      ||:diagtext:`block`   ||                                                                                                             |
|                                                   |+-----------------------------+|                                                                                      |+--------------------+|                                                                                                             |
|                                                   ||:diagtext:`instance variable`||                                                                                      ||:diagtext:`lambda`  ||                                                                                                             |
|                                                   |+-----------------------------+|                                                                                      |+--------------------+|                                                                                                             |
+---------------------------------------------------+-------------------------------+--------------------------------------------------------------------------------------+----------------------+-------------------------------------------------------------------------------------------------------------+


-Warc-retain-cycles
-------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`capturing` |nbsp| :placeholder:`A` |nbsp| :diagtext:`strongly in this block is likely to lead to a retain cycle`|
+------------------------------------------------------------------------------------------------------------------------------------------------------+


-Warc-unsafe-retained-assign
----------------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+--------------------------------------------------------+---------------------------------+-------------------------------------+----------------------+------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`assigning` |nbsp| |+-------------------------------+| |nbsp| :diagtext:`to a weak` |nbsp| |+--------------------+|:diagtext:`; object will be released after assignment`|
|                                                        ||:diagtext:`array literal`      ||                                     ||:diagtext:`property`||                                                      |
|                                                        |+-------------------------------+|                                     |+--------------------+|                                                      |
|                                                        ||:diagtext:`dictionary literal` ||                                     ||:diagtext:`variable`||                                                      |
|                                                        |+-------------------------------+|                                     |+--------------------+|                                                      |
|                                                        ||:diagtext:`numeric literal`    ||                                     |                      |                                                      |
|                                                        |+-------------------------------+|                                     |                      |                                                      |
|                                                        ||:diagtext:`boxed expression`   ||                                     |                      |                                                      |
|                                                        |+-------------------------------+|                                     |                      |                                                      |
|                                                        ||:diagtext:`<should not happen>`||                                     |                      |                                                      |
|                                                        |+-------------------------------+|                                     |                      |                                                      |
|                                                        ||:diagtext:`block literal`      ||                                     |                      |                                                      |
|                                                        |+-------------------------------+|                                     |                      |                                                      |
+--------------------------------------------------------+---------------------------------+-------------------------------------+----------------------+------------------------------------------------------+

+---------------------------------------------------------------------------+--------------------------------+--------+----------------------+------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`assigning retained object to` |nbsp| |+------------------------------+| |nbsp| |+--------------------+|:diagtext:`; object will be released after assignment`|
|                                                                           ||:diagtext:`weak`              ||        ||:diagtext:`property`||                                                      |
|                                                                           |+------------------------------+|        |+--------------------+|                                                      |
|                                                                           ||:diagtext:`unsafe\_unretained`||        ||:diagtext:`variable`||                                                      |
|                                                                           |+------------------------------+|        |+--------------------+|                                                      |
+---------------------------------------------------------------------------+--------------------------------+--------+----------------------+------------------------------------------------------+

+-----------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`assigning retained object to unsafe property; object will be released after assignment`|
+-----------------------------------------------------------------------------------------------------------------------------+


-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.

**Diagnostic text:**

+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+---------------+-------------+
|:warning:`warning:` |nbsp| :diagtext:`array index` |nbsp| :placeholder:`A` |nbsp| :diagtext:`is past the end of the array (which contains` |nbsp| :placeholder:`B` |nbsp| :diagtext:`element`|+-------------+|:diagtext:`)`|
|                                                                                                                                                                                             ||             ||             |
|                                                                                                                                                                                             |+-------------+|             |
|                                                                                                                                                                                             ||:diagtext:`s`||             |
|                                                                                                                                                                                             |+-------------+|             |
+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+---------------+-------------+

+----------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`array index` |nbsp| :placeholder:`A` |nbsp| :diagtext:`is before the beginning of the array`|
+----------------------------------------------------------------------------------------------------------------------------------+

+---------------------------------------------------------------------------+----------------------------------------------------------------------------+--------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`array argument is too small;` |nbsp| |+--------------------------------------------------------------------------+|:diagtext:`, callee requires at least` |nbsp| :placeholder:`B`|
|                                                                           ||+------------------------------------------------------------------------+||                                                              |
|                                                                           |||:diagtext:`contains` |nbsp| :placeholder:`A` |nbsp| :diagtext:`elements`|||                                                              |
|                                                                           ||+------------------------------------------------------------------------+||                                                              |
|                                                                           |+--------------------------------------------------------------------------+|                                                              |
|                                                                           ||+----------------------------------------------+                          ||                                                              |
|                                                                           |||:diagtext:`is of size` |nbsp| :placeholder:`A`|                          ||                                                              |
|                                                                           ||+----------------------------------------------+                          ||                                                              |
|                                                                           |+--------------------------------------------------------------------------+|                                                              |
+---------------------------------------------------------------------------+----------------------------------------------------------------------------+--------------------------------------------------------------+

+-----------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`'static' has no effect on zero-length arrays`|
+-----------------------------------------------------------------------------------+


-Warray-bounds-pointer-arithmetic
---------------------------------
**Diagnostic text:**

+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+---------------+-------------+
|:warning:`warning:` |nbsp| :diagtext:`the pointer incremented by` |nbsp| :placeholder:`A` |nbsp| :diagtext:`refers past the end of the array (that contains` |nbsp| :placeholder:`B` |nbsp| :diagtext:`element`|+-------------+|:diagtext:`)`|
|                                                                                                                                                                                                               ||             ||             |
|                                                                                                                                                                                                               |+-------------+|             |
|                                                                                                                                                                                                               ||:diagtext:`s`||             |
|                                                                                                                                                                                                               |+-------------+|             |
+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+---------------+-------------+

+-----------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`the pointer decremented by` |nbsp| :placeholder:`A` |nbsp| :diagtext:`refers before the beginning of the array`|
+-----------------------------------------------------------------------------------------------------------------------------------------------------+


-Wasm
-----
This diagnostic is enabled by default.

Controls `-Wasm-ignored-qualifier`_, `-Wasm-operand-widths`_.


-Wasm-ignored-qualifier
-----------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+----------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`ignored` |nbsp| :placeholder:`A` |nbsp| :diagtext:`qualifier on asm`|
+----------------------------------------------------------------------------------------------------------+

+-------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`meaningless 'volatile' on asm outside function`|
+-------------------------------------------------------------------------------------+


-Wasm-operand-widths
--------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+-----------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`value size does not match register size specified by the constraint and modifier`|
+-----------------------------------------------------------------------------------------------------------------------+


-Wassign-enum
-------------
**Diagnostic text:**

+---------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`integer constant not in range of enumerated type` |nbsp| :placeholder:`A`|
+---------------------------------------------------------------------------------------------------------------+


-Wassume
--------
This diagnostic is enabled by default.

**Diagnostic text:**

+-----------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`the argument to` |nbsp| :placeholder:`A` |nbsp| :diagtext:`has side effects that will be discarded`|
+-----------------------------------------------------------------------------------------------------------------------------------------+


-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:`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.

**Diagnostic text:**

+-------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`memory order argument to atomic operation is invalid`|
+-------------------------------------------------------------------------------------------+


-Watomic-properties
-------------------
Controls `-Wcustom-atomic-properties`_, `-Wimplicit-atomic-properties`_.


-Watomic-property-with-user-defined-accessor
--------------------------------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+--------------------------------------------------------------------------------------------------------------------------------------------+--------------------+-----------------------------------------------+--------------------+
|:warning:`warning:` |nbsp| :diagtext:`writable atomic property` |nbsp| :placeholder:`A` |nbsp| :diagtext:`cannot pair a synthesized` |nbsp| |+------------------+| |nbsp| :diagtext:`with a user defined` |nbsp| |+------------------+|
|                                                                                                                                            ||:diagtext:`getter`||                                               ||:diagtext:`getter`||
|                                                                                                                                            |+------------------+|                                               |+------------------+|
|                                                                                                                                            ||:diagtext:`setter`||                                               ||:diagtext:`setter`||
|                                                                                                                                            |+------------------+|                                               |+------------------+|
+--------------------------------------------------------------------------------------------------------------------------------------------+--------------------+-----------------------------------------------+--------------------+


-Wattribute-packed-for-bitfield
-------------------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+-------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`'packed' attribute was ignored on bit-fields with single-byte alignment in older versions of GCC and Clang`|
+-------------------------------------------------------------------------------------------------------------------------------------------------+


-Wattributes
------------
This diagnostic is enabled by default.

Controls `-Wignored-attributes`_, `-Wunknown-attributes`_.


-Wauto-disable-vptr-sanitizer
-----------------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`implicitly disabling vptr sanitizer because rtti wasn't enabled`|
+------------------------------------------------------------------------------------------------------+


-Wauto-import
-------------
**Diagnostic text:**

+-------------------------------------------------+---------------------------------+-------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`treating #`|+-------------------------------+| |nbsp| :diagtext:`as an import of module '`:placeholder:`B`:diagtext:`'`|
|                                                 ||:diagtext:`include`            ||                                                                         |
|                                                 |+-------------------------------+|                                                                         |
|                                                 ||:diagtext:`import`             ||                                                                         |
|                                                 |+-------------------------------+|                                                                         |
|                                                 ||:diagtext:`include\_next`      ||                                                                         |
|                                                 |+-------------------------------+|                                                                         |
|                                                 ||:diagtext:`\_\_include\_macros`||                                                                         |
|                                                 |+-------------------------------+|                                                                         |
+-------------------------------------------------+---------------------------------+-------------------------------------------------------------------------+


-Wauto-storage-class
--------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+---------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`'auto' storage class specifier is not permitted in C++11, and will not be supported in future releases`|
+---------------------------------------------------------------------------------------------------------------------------------------------+


-Wauto-var-id
-------------
This diagnostic is enabled by default.

**Diagnostic text:**

+-------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`'auto' deduced as 'id' in declaration of` |nbsp| :placeholder:`A`|
+-------------------------------------------------------------------------------------------------------+


-Wavailability
--------------
This diagnostic is enabled by default.

**Diagnostic text:**

+--------------------------------------------------------------------------------------------------------------+
|: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`|
+------------------------------------------------------------------------------------------------------------------------+

+----------------------------------------------------------------+------------------------+------------------------------------------------------------------------------------------------------------------------------------------+------------------------+-------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`feature cannot be` |nbsp| |+----------------------+| |nbsp| :diagtext:`in` |nbsp| :placeholder:`B` |nbsp| :diagtext:`version` |nbsp| :placeholder:`C` |nbsp| :diagtext:`before it was` |nbsp| |+----------------------+| |nbsp| :diagtext:`in version` |nbsp| :placeholder:`E`:diagtext:`; attribute ignored`|
|                                                                ||:diagtext:`introduced`||                                                                                                                                          ||:diagtext:`introduced`||                                                                                     |
|                                                                |+----------------------+|                                                                                                                                          |+----------------------+|                                                                                     |
|                                                                ||:diagtext:`deprecated`||                                                                                                                                          ||:diagtext:`deprecated`||                                                                                     |
|                                                                |+----------------------+|                                                                                                                                          |+----------------------+|                                                                                     |
|                                                                ||:diagtext:`obsoleted` ||                                                                                                                                          ||:diagtext:`obsoleted` ||                                                                                     |
|                                                                |+----------------------+|                                                                                                                                          |+----------------------+|                                                                                     |
+----------------------------------------------------------------+------------------------+------------------------------------------------------------------------------------------------------------------------------------------+------------------------+-------------------------------------------------------------------------------------+

+---------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`use same version number separators '\_' or '.'; as in 'major\[.minor\[.subminor\]\]'`|
+---------------------------------------------------------------------------------------------------------------------------+

+---------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`availability does not match previous declaration`|
+---------------------------------------------------------------------------------------+

+---------------------------+--------------------------------+--------------------------+-------------------------------+--------+-----------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| |+------------------------------+|:diagtext:`method` |nbsp| |+-----------------------------+| |nbsp| |+---------------------------------------------+| |nbsp| :diagtext:`on` |nbsp| :placeholder:`B` |nbsp| :diagtext:`(`:placeholder:`C` |nbsp| :diagtext:`vs.` |nbsp| :placeholder:`D`:diagtext:`)`|
|                           ||                              ||                          ||:diagtext:`introduced after` ||        ||:diagtext:`the protocol method it implements`||                                                                                                                                               |
|                           |+------------------------------+|                          |+-----------------------------+|        |+---------------------------------------------+|                                                                                                                                               |
|                           ||:diagtext:`overriding` |nbsp| ||                          ||:diagtext:`deprecated before`||        ||:diagtext:`overridden method`                ||                                                                                                                                               |
|                           |+------------------------------+|                          |+-----------------------------+|        |+---------------------------------------------+|                                                                                                                                               |
|                           |                                |                          ||:diagtext:`obsoleted before` ||        |                                               |                                                                                                                                               |
|                           |                                |                          |+-----------------------------+|        |                                               |                                                                                                                                               |
+---------------------------+--------------------------------+--------------------------+-------------------------------+--------+-----------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------+

+---------------------------+--------------------------------+---------------------------------------------------------------------------------------------------+-----------------------------------------------+--------------------------------+
|:warning:`warning:` |nbsp| |+------------------------------+|:diagtext:`method cannot be unavailable on` |nbsp| :placeholder:`A` |nbsp| :diagtext:`when` |nbsp| |+---------------------------------------------+| |nbsp| :diagtext:`is available`|
|                           ||                              ||                                                                                                   ||:diagtext:`the protocol method it implements`||                                |
|                           |+------------------------------+|                                                                                                   |+---------------------------------------------+|                                |
|                           ||:diagtext:`overriding` |nbsp| ||                                                                                                   ||:diagtext:`its overridden method`            ||                                |
|                           |+------------------------------+|                                                                                                   |+---------------------------------------------+|                                |
+---------------------------+--------------------------------+---------------------------------------------------------------------------------------------------+-----------------------------------------------+--------------------------------+


-Wavr-rtlib-linking-quirks
--------------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+----------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`support for linking stdlibs for microcontroller '`:placeholder:`A`:diagtext:`' is not implemented`|
+----------------------------------------------------------------------------------------------------------------------------------------+

+-------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`no avr-gcc installation can be found on the system, cannot link standard libraries`|
+-------------------------------------------------------------------------------------------------------------------------+

+--------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`no avr-libc installation can be found on the system, cannot link standard libraries`|
+--------------------------------------------------------------------------------------------------------------------------+

+--------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`no target microcontroller specified on command line, cannot link standard libraries, please pass -mmcu=<mcu name>`|
+--------------------------------------------------------------------------------------------------------------------------------------------------------+

+-----------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`standard library not linked and so no interrupt vector table or compiler runtime routines will be linked`|
+-----------------------------------------------------------------------------------------------------------------------------------------------+


-Wbackend-plugin
----------------
This diagnostic is enabled by default.

**Diagnostic text:**

The text of this diagnostic is not controlled by Clang.


-Wbackslash-newline-escape
--------------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+-------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`backslash and newline separated by space`|
+-------------------------------------------------------------------------------+


-Wbad-function-cast
-------------------
**Diagnostic text:**

+--------------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`cast from function call of type` |nbsp| :placeholder:`A` |nbsp| :diagtext:`to non-matching type` |nbsp| :placeholder:`B`|
+--------------------------------------------------------------------------------------------------------------------------------------------------------------+


-Wbinary-literal
----------------
Controls `-Wc++14-binary-literal`_, `-Wc++98-c++11-compat-binary-literal`_, `-Wgnu-binary-literal`_.


-Wbind-to-temporary-copy
------------------------
Also controls `-Wc++98-compat-bind-to-temporary-copy`_.

**Diagnostic text:**

+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+-----------------------+
|:warning:`warning:` |nbsp| :diagtext:`C++98 requires an accessible copy constructor for class` |nbsp| :placeholder:`C` |nbsp| :diagtext:`when binding a reference to a temporary; was` |nbsp| |+---------------------+|
|                                                                                                                                                                                              ||:diagtext:`private`  ||
|                                                                                                                                                                                              |+---------------------+|
|                                                                                                                                                                                              ||:diagtext:`protected`||
|                                                                                                                                                                                              |+---------------------+|
+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+-----------------------+

+--------------------------------------------------------------------+------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`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.

**Diagnostic text:**

+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`implicit truncation from` |nbsp| :placeholder:`C` |nbsp| :diagtext:`to bit-field changes value from` |nbsp| :placeholder:`A` |nbsp| :diagtext:`to` |nbsp| :placeholder:`B`|
+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+


-Wbitfield-enum-conversion
--------------------------
**Diagnostic text:**

+------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`bit-field` |nbsp| :placeholder:`A` |nbsp| :diagtext:`is not wide enough to store all enumerators of` |nbsp| :placeholder:`B`|
+------------------------------------------------------------------------------------------------------------------------------------------------------------------+

+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`signed bit-field` |nbsp| :placeholder:`A` |nbsp| :diagtext:`needs an extra bit to represent the largest positive enumerators of` |nbsp| :placeholder:`B`|
+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+

+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`assigning value of signed enum type` |nbsp| :placeholder:`B` |nbsp| :diagtext:`to unsigned bit-field` |nbsp| :placeholder:`A`:diagtext:`; negative enumerators of enum` |nbsp| :placeholder:`B` |nbsp| :diagtext:`will be converted to positive values`|
+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+


-Wbitfield-width
----------------
This diagnostic is enabled by default.

**Diagnostic text:**

+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+---------------+
|:warning:`warning:` |nbsp| :diagtext:`width of anonymous bit-field (`:placeholder:`A` |nbsp| :diagtext:`bits) exceeds width of its type; value will be truncated to` |nbsp| :placeholder:`B` |nbsp| :diagtext:`bit`|+-------------+|
|                                                                                                                                                                                                                   ||             ||
|                                                                                                                                                                                                                   |+-------------+|
|                                                                                                                                                                                                                   ||:diagtext:`s`||
|                                                                                                                                                                                                                   |+-------------+|
+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+---------------+

+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+---------------+
|:warning:`warning:` |nbsp| :diagtext:`width of bit-field` |nbsp| :placeholder:`A` |nbsp| :diagtext:`(`:placeholder:`B` |nbsp| :diagtext:`bits) exceeds the width of its type; value will be truncated to` |nbsp| :placeholder:`C` |nbsp| :diagtext:`bit`|+-------------+|
|                                                                                                                                                                                                                                                        ||             ||
|                                                                                                                                                                                                                                                        |+-------------+|
|                                                                                                                                                                                                                                                        ||:diagtext:`s`||
|                                                                                                                                                                                                                                                        |+-------------+|
+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+---------------+


-Wbitwise-op-parentheses
------------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+-----------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`'`:placeholder:`A`:diagtext:`' within '`:placeholder:`B`:diagtext:`'`|
+-----------------------------------------------------------------------------------------------------------+


-Wblock-capture-autoreleasing
-----------------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+-----------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`block captures an autoreleasing out-parameter, which may result in use-after-free bugs`|
+-----------------------------------------------------------------------------------------------------------------------------+


-Wbool-conversion
-----------------
This diagnostic is enabled by default.

Also controls `-Wpointer-bool-conversion`_, `-Wundefined-bool-conversion`_.

**Diagnostic text:**

+--------------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`initialization of pointer of type` |nbsp| :placeholder:`A` |nbsp| :diagtext:`to null from a constant boolean expression`|
+--------------------------------------------------------------------------------------------------------------------------------------------------------------+


-Wbool-conversions
------------------
Synonym for `-Wbool-conversion`_.


-Wbraced-scalar-init
--------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+-----------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`braces around scalar initializer`|
+-----------------------------------------------------------------------+


-Wbridge-cast
-------------
This diagnostic is enabled by default.

**Diagnostic text:**

+------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :placeholder:`A` |nbsp| :diagtext:`bridges to` |nbsp| :placeholder:`B`:diagtext:`, not` |nbsp| :placeholder:`C`|
+------------------------------------------------------------------------------------------------------------------------------------------+

+-------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :placeholder:`A` |nbsp| :diagtext:`cannot bridge to` |nbsp| :placeholder:`B`|
+-------------------------------------------------------------------------------------------------------+


-Wbuiltin-macro-redefined
-------------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+---------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`redefining builtin macro`|
+---------------------------------------------------------------+

+---------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`undefining builtin macro`|
+---------------------------------------------------------------+


-Wbuiltin-memcpy-chk-size
-------------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|: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
-------------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+----------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`declaration of built-in function '`:placeholder:`B`:diagtext:`' requires inclusion of the header <`:placeholder:`A`:diagtext:`>`|
+----------------------------------------------------------------------------------------------------------------------------------------------------------------------+


-Wc++-compat
------------
**Diagnostic text:**

+---------------------------+---------------------------+--------------------+--------------------------------------------+---------------------------+--------------------------+
|:warning:`warning:` |nbsp| |+-------------------------+|+------------------+| |nbsp| :diagtext:`has size 0 in C,` |nbsp| |+-------------------------+| |nbsp| :diagtext:`in C++`|
|                           ||                         |||:diagtext:`struct`||                                            ||:diagtext:`size 1`       ||                          |
|                           |+-------------------------+|+------------------+|                                            |+-------------------------+|                          |
|                           ||:diagtext:`empty` |nbsp| |||:diagtext:`union` ||                                            ||:diagtext:`non-zero size`||                          |
|                           |+-------------------------+|+------------------+|                                            |+-------------------------+|                          |
+---------------------------+---------------------------+--------------------+--------------------------------------------+---------------------------+--------------------------+


-Wc++0x-compat
--------------
Synonym for `-Wc++11-compat`_.


-Wc++0x-extensions
------------------
Synonym for `-Wc++11-extensions`_.


-Wc++0x-narrowing
-----------------
Synonym for `-Wc++11-narrowing`_.


-Wc++11-compat
--------------
Some of the diagnostics controlled by this flag are enabled by default.

Also controls `-Wc++11-compat-deprecated-writable-strings`_, `-Wc++11-compat-reserved-user-defined-literal`_, `-Wc++11-narrowing`_, `-Wc++98-c++11-c++14-c++17-compat`_, `-Wc++98-c++11-c++14-compat`_, `-Wc++98-c++11-compat`_.

**Diagnostic text:**

+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+-----------------------------------+------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`integer literal is too large to be represented in type 'long' and is subject to undefined behavior under C++98, interpreting as 'unsigned long'; this literal will` |nbsp| |+---------------------------------+| |nbsp| :diagtext:`in C++11 onwards`|
|                                                                                                                                                                                                                 ||:diagtext:`have type 'long long'`||                                    |
|                                                                                                                                                                                                                 |+---------------------------------+|                                    |
|                                                                                                                                                                                                                 ||:diagtext:`be ill-formed`        ||                                    |
|                                                                                                                                                                                                                 |+---------------------------------+|                                    |
+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+-----------------------------------+------------------------------------+

+--------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`'auto' storage class specifier is redundant and incompatible with C++11`|
+--------------------------------------------------------------------------------------------------------------+

+-------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`identifier after literal will be treated as a user-defined literal suffix in C++11`|
+-------------------------------------------------------------------------------------------------------------------------+

+-------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`'`:placeholder:`A`:diagtext:`' is a keyword in C++11`|
+-------------------------------------------------------------------------------------------+

+--------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`use of right-shift operator ('>>') in template argument will require parentheses in C++11`|
+--------------------------------------------------------------------------------------------------------------------------------+

+--------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`explicit instantiation cannot be 'inline'`|
+--------------------------------------------------------------------------------+

+--------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`explicit instantiation of` |nbsp| :placeholder:`A` |nbsp| :diagtext:`must occur at global scope`|
+--------------------------------------------------------------------------------------------------------------------------------------+

+----------------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`explicit instantiation of` |nbsp| :placeholder:`A` |nbsp| :diagtext:`not in a namespace enclosing` |nbsp| :placeholder:`B`|
+----------------------------------------------------------------------------------------------------------------------------------------------------------------+

+-----------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`explicit instantiation of` |nbsp| :placeholder:`A` |nbsp| :diagtext:`must occur in namespace` |nbsp| :placeholder:`B`|
+-----------------------------------------------------------------------------------------------------------------------------------------------------------+

+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------+-----------------------------------+------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`integer literal is too large to be represented in type 'long', interpreting as 'unsigned long' per C++98; this literal will` |nbsp| |+---------------------------------+| |nbsp| :diagtext:`in C++11 onwards`|
|                                                                                                                                                                          ||:diagtext:`have type 'long long'`||                                    |
|                                                                                                                                                                          |+---------------------------------+|                                    |
|                                                                                                                                                                          ||:diagtext:`be ill-formed`        ||                                    |
|                                                                                                                                                                          |+---------------------------------+|                                    |
+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------+-----------------------------------+------------------------------------+


-Wc++11-compat-deprecated-writable-strings
------------------------------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+---------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`conversion from string literal to` |nbsp| :placeholder:`A` |nbsp| :diagtext:`is deprecated`|
+---------------------------------------------------------------------------------------------------------------------------------+


-Wc++11-compat-pedantic
-----------------------
Some of the diagnostics controlled by this flag are enabled by default.

Controls `-Wc++11-compat`_, `-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++11-compat-reserved-user-defined-literal
--------------------------------------------
**Diagnostic text:**

+----------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`identifier after literal will be treated as a reserved user-defined literal suffix in C++11`|
+----------------------------------------------------------------------------------------------------------------------------------+


-Wc++11-extensions
------------------
Some of the diagnostics controlled by this flag are enabled by default.

Also controls `-Wc++11-extra-semi`_, `-Wc++11-inline-namespace`_, `-Wc++11-long-long`_.

**Diagnostic text:**

+-------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`alias declarations are a C++11 extension`|
+-------------------------------------------------------------------------------+

+---------------------------------------------------------------------------------------------------------------------------------------------------+-------------------------+----------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`implicit conversion from array size expression of type` |nbsp| :placeholder:`A` |nbsp| :diagtext:`to` |nbsp| |+-----------------------+| |nbsp| :diagtext:`type` |nbsp| :placeholder:`C` |nbsp| :diagtext:`is a C++11 extension`|
|                                                                                                                                                   ||:diagtext:`integral`   ||                                                                                        |
|                                                                                                                                                   |+-----------------------+|                                                                                        |
|                                                                                                                                                   ||:diagtext:`enumeration`||                                                                                        |
|                                                                                                                                                   |+-----------------------+|                                                                                        |
+---------------------------------------------------------------------------------------------------------------------------------------------------+-------------------------+----------------------------------------------------------------------------------------+

+---------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`'auto' type specifier is a C++11 extension`|
+---------------------------------------------------------------------------------+

+-----------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`enumeration types with a fixed underlying type are a C++11 extension`|
+-----------------------------------------------------------------------------------------------------------+

+---------------------------+-----------------------+--------------------------------------------------------------+
|:warning:`warning:` |nbsp| |+---------------------+| |nbsp| :diagtext:`function definitions are a C++11 extension`|
|                           ||:diagtext:`defaulted`||                                                              |
|                           |+---------------------+|                                                              |
|                           ||:diagtext:`deleted`  ||                                                              |
|                           |+---------------------+|                                                              |
+---------------------------+-----------------------+--------------------------------------------------------------+

+-----------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`befriending enumeration type` |nbsp| :placeholder:`A` |nbsp| :diagtext:`is a C++11 extension`|
+-----------------------------------------------------------------------------------------------------------------------------------+

+--------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`commas at the end of enumerator lists are a C++11 extension`|
+--------------------------------------------------------------------------------------------------+

+------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`explicit conversion functions are a C++11 extension`|
+------------------------------------------------------------------------------------------+

+-----------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`extern templates are a C++11 extension`|
+-----------------------------------------------------------------------------+

+--------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`range-based for loop is a C++11 extension`|
+--------------------------------------------------------------------------------+

+------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`generalized initializer lists are a C++11 extension`|
+------------------------------------------------------------------------------------------+

+---------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`use of enumeration in a nested name specifier is a C++11 extension`|
+---------------------------------------------------------------------------------------------------------+

+----------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`non-class friend type` |nbsp| :placeholder:`A` |nbsp| :diagtext:`is a C++11 extension`|
+----------------------------------------------------------------------------------------------------------------------------+

+-------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`in-class initialization of non-static data member is a C++11 extension`|
+-------------------------------------------------------------------------------------------------------------+

+--------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`'`:placeholder:`A`:diagtext:`' keyword is a C++11 extension`|
+--------------------------------------------------------------------------------------------------+

+----------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`reference qualifiers on functions are a C++11 extension`|
+----------------------------------------------------------------------------------------------+

+------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`rvalue references are a C++11 extension`|
+------------------------------------------------------------------------------+

+--------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`scoped enumerations are a C++11 extension`|
+--------------------------------------------------------------------------------+

+----------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`static data member` |nbsp| :placeholder:`A` |nbsp| :diagtext:`in union is a C++11 extension`|
+----------------------------------------------------------------------------------------------------------------------------------+

+--------------------------------------------------------------------------------------+----------------------+--------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`non-type template argument referring to` |nbsp| |+--------------------+| |nbsp| :placeholder:`B` |nbsp| :diagtext:`with internal linkage is a C++11 extension`|
|                                                                                      ||:diagtext:`function`||                                                                                      |
|                                                                                      |+--------------------+|                                                                                      |
|                                                                                      ||:diagtext:`object`  ||                                                                                      |
|                                                                                      |+--------------------+|                                                                                      |
+--------------------------------------------------------------------------------------+----------------------+--------------------------------------------------------------------------------------+

+-------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`'template' keyword outside of a template`|
+-------------------------------------------------------------------------------+

+---------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`default template arguments for a function template are a C++11 extension`|
+---------------------------------------------------------------------------------------------------------------+

+------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`'typename' occurs outside of a template`|
+------------------------------------------------------------------------------+

+------------------------------------------------------------------------------------------------------+-----------------------+-------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`unelaborated friend declaration is a C++11 extension; specify '`|+---------------------+|:diagtext:`' to befriend` |nbsp| :placeholder:`B`|
|                                                                                                      ||:diagtext:`struct`   ||                                                 |
|                                                                                                      |+---------------------+|                                                 |
|                                                                                                      ||:diagtext:`interface`||                                                 |
|                                                                                                      |+---------------------+|                                                 |
|                                                                                                      ||:diagtext:`union`    ||                                                 |
|                                                                                                      |+---------------------+|                                                 |
|                                                                                                      ||:diagtext:`class`    ||                                                 |
|                                                                                                      |+---------------------+|                                                 |
|                                                                                                      ||:diagtext:`enum`     ||                                                 |
|                                                                                                      |+---------------------+|                                                 |
+------------------------------------------------------------------------------------------------------+-----------------------+-------------------------------------------------+

+-------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`variadic templates are a C++11 extension`|
+-------------------------------------------------------------------------------+


-Wc++11-extra-semi
------------------
**Diagnostic text:**

+-------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`extra ';' outside of a function is a C++11 extension`|
+-------------------------------------------------------------------------------------------+


-Wc++11-inline-namespace
------------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+----------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`inline namespaces are a C++11 feature`|
+----------------------------------------------------------------------------+


-Wc++11-long-long
-----------------
**Diagnostic text:**

+-----------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`'long long' is a C++11 extension`|
+-----------------------------------------------------------------------+


-Wc++11-narrowing
-----------------
Some of the diagnostics controlled by this flag are enabled by default.

**Diagnostic text:**

+-----------------------+-----------------------------------------+--------+--------------------------------------------------------------------------------------------------------------------------+
|:error:`error:` |nbsp| |+---------------------------------------+| |nbsp| |+------------------------------------------------------------------------------------------------------------------------+|
|                       ||:diagtext:`case value`                 ||        ||+--------------------------------------------------------------------------------------------------------------+        ||
|                       |+---------------------------------------+|        |||:diagtext:`cannot be narrowed from type` |nbsp| :placeholder:`C` |nbsp| :diagtext:`to` |nbsp| :placeholder:`D`|        ||
|                       ||:diagtext:`enumerator value`           ||        ||+--------------------------------------------------------------------------------------------------------------+        ||
|                       |+---------------------------------------+|        |+------------------------------------------------------------------------------------------------------------------------+|
|                       ||:diagtext:`non-type template argument` ||        ||+----------------------------------------------------------------------------------------------------------------------+||
|                       |+---------------------------------------+|        |||:diagtext:`evaluates to` |nbsp| :placeholder:`C`:diagtext:`, which cannot be narrowed to type` |nbsp| :placeholder:`D`|||
|                       ||:diagtext:`array size`                 ||        ||+----------------------------------------------------------------------------------------------------------------------+||
|                       |+---------------------------------------+|        |+------------------------------------------------------------------------------------------------------------------------+|
|                       ||:diagtext:`constexpr if condition`     ||        |                                                                                                                          |
|                       |+---------------------------------------+|        |                                                                                                                          |
|                       ||:diagtext:`explicit specifier argument`||        |                                                                                                                          |
|                       |+---------------------------------------+|        |                                                                                                                          |
+-----------------------+-----------------------------------------+--------+--------------------------------------------------------------------------------------------------------------------------+

+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|:error:`error:` |nbsp| :diagtext:`constant expression evaluates to` |nbsp| :placeholder:`A` |nbsp| :diagtext:`which cannot be narrowed to type` |nbsp| :placeholder:`B`|
+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------+

+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|:error:`error:` |nbsp| :diagtext:`type` |nbsp| :placeholder:`A` |nbsp| :diagtext:`cannot be narrowed to` |nbsp| :placeholder:`B` |nbsp| :diagtext:`in initializer list`|
+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------+

+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|:error:`error:` |nbsp| :diagtext:`non-constant-expression cannot be narrowed from type` |nbsp| :placeholder:`A` |nbsp| :diagtext:`to` |nbsp| :placeholder:`B` |nbsp| :diagtext:`in initializer list`|
+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+

+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`constant expression evaluates to` |nbsp| :placeholder:`A` |nbsp| :diagtext:`which cannot be narrowed to type` |nbsp| :placeholder:`B` |nbsp| :diagtext:`in C++11`|
+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+

+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`type` |nbsp| :placeholder:`A` |nbsp| :diagtext:`cannot be narrowed to` |nbsp| :placeholder:`B` |nbsp| :diagtext:`in initializer list in C++11`|
+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+

+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`non-constant-expression cannot be narrowed from type` |nbsp| :placeholder:`A` |nbsp| :diagtext:`to` |nbsp| :placeholder:`B` |nbsp| :diagtext:`in initializer list in C++11`|
+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+


-Wc++14-binary-literal
----------------------
**Diagnostic text:**

+------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`binary integer literals are a C++14 extension`|
+------------------------------------------------------------------------------------+


-Wc++14-compat
--------------
Controls `-Wc++98-c++11-c++14-c++17-compat`_, `-Wc++98-c++11-c++14-compat`_.


-Wc++14-compat-pedantic
-----------------------
Controls `-Wc++14-compat`_, `-Wc++98-c++11-c++14-c++17-compat-pedantic`_, `-Wc++98-c++11-c++14-compat-pedantic`_.


-Wc++14-extensions
------------------
Some of the diagnostics controlled by this flag are enabled by default.

Also controls `-Wc++14-binary-literal`_.

**Diagnostic text:**

+-----------------------------------------------------------------------------------+-------------------------+----------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`use of this statement in a constexpr` |nbsp| |+-----------------------+| |nbsp| :diagtext:`is a C++14 extension`|
|                                                                                   ||:diagtext:`function`   ||                                        |
|                                                                                   |+-----------------------+|                                        |
|                                                                                   ||:diagtext:`constructor`||                                        |
|                                                                                   |+-----------------------+|                                        |
+-----------------------------------------------------------------------------------+-------------------------+----------------------------------------+

+------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`multiple return statements in constexpr function is a C++14 extension`|
+------------------------------------------------------------------------------------------------------------+

+----------------------------------------------------------------------------------+-------------------------+----------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`variable declaration in a constexpr` |nbsp| |+-----------------------+| |nbsp| :diagtext:`is a C++14 extension`|
|                                                                                  ||:diagtext:`function`   ||                                        |
|                                                                                  |+-----------------------+|                                        |
|                                                                                  ||:diagtext:`constructor`||                                        |
|                                                                                  |+-----------------------+|                                        |
+----------------------------------------------------------------------------------+-------------------------+----------------------------------------+

+-----------------------------------------------------------------------------+-------------------------+----------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`type definition in a constexpr` |nbsp| |+-----------------------+| |nbsp| :diagtext:`is a C++14 extension`|
|                                                                             ||:diagtext:`function`   ||                                        |
|                                                                             |+-----------------------+|                                        |
|                                                                             ||:diagtext:`constructor`||                                        |
|                                                                             |+-----------------------+|                                        |
+-----------------------------------------------------------------------------+-------------------------+----------------------------------------+

+---------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`use of the` |nbsp| :placeholder:`A` |nbsp| :diagtext:`attribute is a C++14 extension`|
+---------------------------------------------------------------------------------------------------------------------------+

+-------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`'decltype(auto)' type specifier is a C++14 extension`|
+-------------------------------------------------------------------------------------------+

+----------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`initialized lambda captures are a C++14 extension`|
+----------------------------------------------------------------------------------------+

+-------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`variable templates are a C++14 extension`|
+-------------------------------------------------------------------------------+


-Wc++17-compat
--------------
Some of the diagnostics controlled by this flag are enabled by default.

Controls `-Wc++17-compat-mangling`_, `-Wc++98-c++11-c++14-c++17-compat`_, `-Wdeprecated-increment-bool`_, `-Wdeprecated-register`_.


-Wc++17-compat-mangling
-----------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`mangled name of` |nbsp| :placeholder:`A` |nbsp| :diagtext:`will change in C++17 due to non-throwing exception specification in function signature`|
+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+


-Wc++17-compat-pedantic
-----------------------
Some of the diagnostics controlled by this flag are enabled by default.

Controls `-Wc++17-compat`_, `-Wc++98-c++11-c++14-c++17-compat-pedantic`_.


-Wc++17-extensions
------------------
Some of the diagnostics controlled by this flag are enabled by default.

**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`|
+------------------------------------------------------------------------+

+---------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`'constexpr' on lambda expressions is a C++17 extension`|
+---------------------------------------------------------------------------------------------+

+---------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`use of the` |nbsp| :placeholder:`A` |nbsp| :diagtext:`attribute is a C++17 extension`|
+---------------------------------------------------------------------------------------------------------------------------+

+---------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`decomposition declarations are a C++17 extension`|
+---------------------------------------------------------------------------------------+

+--------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`pack fold expression is a C++17 extension`|
+--------------------------------------------------------------------------------+

+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`'begin' and 'end' returning different types (`:placeholder:`A` |nbsp| :diagtext:`and` |nbsp| :placeholder:`B`:diagtext:`) is a C++17 extension`|
+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+

+----------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`hexadecimal floating literals are a C++17 feature`|
+----------------------------------------------------------------------------------------+

+----------------------------------------+--------------------+-------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`'`|+------------------+|:diagtext:`' initialization statements are a C++17 extension`|
|                                        ||:diagtext:`if`    ||                                                             |
|                                        |+------------------+|                                                             |
|                                        ||:diagtext:`switch`||                                                             |
|                                        |+------------------+|                                                             |
+----------------------------------------+--------------------+-------------------------------------------------------------+

+-----------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`inline variables are a C++17 extension`|
+-----------------------------------------------------------------------------+

+---------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`use of multiple declarators in a single using declaration is a C++17 extension`|
+---------------------------------------------------------------------------------------------------------------------+

+-------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`nested namespace definition is a C++17 extension; define each namespace separately`|
+-------------------------------------------------------------------------------------------------------------------------+

+------------------------------------------------------------+---------------------------+-----------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`attributes on` |nbsp| |+-------------------------+| |nbsp| :diagtext:`declaration are a C++17 extension`|
|                                                            ||:diagtext:`a namespace`  ||                                                     |
|                                                            |+-------------------------+|                                                     |
|                                                            ||:diagtext:`an enumerator`||                                                     |
|                                                            |+-------------------------+|                                                     |
+------------------------------------------------------------+---------------------------+-----------------------------------------------------+

+---------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`capture of '\*this' by copy is a C++17 extension`|
+---------------------------------------------------------------------------------------+

+------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`static\_assert with no message is a C++17 extension`|
+------------------------------------------------------------------------------------------+

+--------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`template template parameter using 'typename' is a C++17 extension`|
+--------------------------------------------------------------------------------------------------------+

+--------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`default scope specifier for attributes is a C++17 extension`|
+--------------------------------------------------------------------------------------------------+

+-----------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`pack expansion of using declaration is a C++17 extension`|
+-----------------------------------------------------------------------------------------------+


-Wc++1y-extensions
------------------
Synonym for `-Wc++14-extensions`_.


-Wc++1z-compat
--------------
Synonym for `-Wc++17-compat`_.


-Wc++1z-compat-mangling
-----------------------
Synonym for `-Wc++17-compat-mangling`_.


-Wc++1z-extensions
------------------
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:`consteval is incompatible with C++ standards before C++20`|
+------------------------------------------------------------------------------------------------+

+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|: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:`this expression will be parsed as explicit(bool) in 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`|
+-------------------------------------------------------------------------------------------+


-Wc++2a-compat-pedantic
-----------------------
Synonym for `-Wc++2a-compat`_.


-Wc++2a-extensions
------------------
Some of the diagnostics controlled by this flag are enabled by default.

**Diagnostic text:**

+---------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`use of function template name with no prior declaration in function call with explicit template arguments is a C++2a extension`|
+---------------------------------------------------------------------------------------------------------------------------------------------------------------------+

+----------------------------------------------------------------------------------------------------+
|: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:`decomposition declaration declared` |nbsp| |+------------------------------------------------------------+| |nbsp| :diagtext:`is a C++2a extension`|
|                                                                                 ||+------------------------------------------+                ||                                        |
|                                                                                 |||:diagtext:`'`:placeholder:`B`:diagtext:`'`|                ||                                        |
|                                                                                 ||+------------------------------------------+                ||                                        |
|                                                                                 |+------------------------------------------------------------+|                                        |
|                                                                                 ||+----------------------------------------------------------+||                                        |
|                                                                                 |||:diagtext:`with '`:placeholder:`B`:diagtext:`' specifiers`|||                                        |
|                                                                                 ||+----------------------------------------------------------+||                                        |
|                                                                                 |+------------------------------------------------------------+|                                        |
+---------------------------------------------------------------------------------+--------------------------------------------------------------+----------------------------------------+

+--------------------------------------------------------------------------------------------------------------------+
|: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:`initialized lambda pack captures are a C++2a extension`|
+---------------------------------------------------------------------------------------------+

+----------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`inline nested namespace definition is a C++2a extension`|
+----------------------------------------------------------------------------------------------+

+--------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`explicit template parameter list for lambdas 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`|
+--------------------------------------------------------------------------------------------------------------------------+


-Wc++98-c++11-c++14-c++17-compat
--------------------------------
**Diagnostic text:**

+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`use of function template name with no prior function template declaration in function call with explicit template arguments is incompatible with C++ standards before C++2a`|
+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+

+-------------------------------------------------------------------------------------------------------------------------------+
|: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:`virtual constexpr functions are incompatible with C++ standards before C++2a`|
+-------------------------------------------------------------------------------------------------------------------+

+---------------------------------------------------------------------------------+--------------------------------------------------------------+-------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`decomposition declaration declared` |nbsp| |+------------------------------------------------------------+| |nbsp| :diagtext:`is incompatible with C++ standards before C++2a`|
|                                                                                 ||+------------------------------------------+                ||                                                                   |
|                                                                                 |||:diagtext:`'`:placeholder:`B`:diagtext:`'`|                ||                                                                   |
|                                                                                 ||+------------------------------------------+                ||                                                                   |
|                                                                                 |+------------------------------------------------------------+|                                                                   |
|                                                                                 ||+----------------------------------------------------------+||                                                                   |
|                                                                                 |||:diagtext:`with '`:placeholder:`B`:diagtext:`' specifiers`|||                                                                   |
|                                                                                 ||+----------------------------------------------------------+||                                                                   |
|                                                                                 |+------------------------------------------------------------+|                                                                   |
+---------------------------------------------------------------------------------+--------------------------------------------------------------+-------------------------------------------------------------------+

+-------------------------------------------------------------------------+--------------------------------------+----------------------------------------------------------------------------------------------------------------+
|: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:`initialized lambda capture packs 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:`explicit template parameter list for lambdas is incompatible with C++ standards before C++2a`|
+-----------------------------------------------------------------------------------------------------------------------------------+

+-----------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`'<=>' operator is incompatible with C++ standards before C++2a`|
+-----------------------------------------------------------------------------------------------------+

+----------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`'char8\_t' type specifier is incompatible with C++ standards before C++20`|
+----------------------------------------------------------------------------------------------------------------+


-Wc++98-c++11-c++14-c++17-compat-pedantic
-----------------------------------------
Also controls `-Wc++98-c++11-c++14-c++17-compat`_.

**Diagnostic text:**

+-----------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`invoking a pointer to a 'const &' member function on an rvalue is incompatible with C++ standards before C++2a`|
+-----------------------------------------------------------------------------------------------------------------------------------------------------+


-Wc++98-c++11-c++14-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`|
+---------------------------------------------------------------------------------------------------+

+----------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`constexpr on lambda expressions is incompatible with C++ standards before C++17`|
+----------------------------------------------------------------------------------------------------------------------+

+------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`decomposition declarations are incompatible with C++ standards before C++17`|
+------------------------------------------------------------------------------------------------------------------+

+-----------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`pack fold expression is incompatible with C++ standards before C++17`|
+-----------------------------------------------------------------------------------------------------------+

+---------------------------+--------------------+----------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| |+------------------+| |nbsp| :diagtext:`initialization statements are incompatible with C++ standards before C++17`|
|                           ||:diagtext:`if`    ||                                                                                              |
|                           |+------------------+|                                                                                              |
|                           ||:diagtext:`switch`||                                                                                              |
|                           |+------------------+|                                                                                              |
+---------------------------+--------------------+----------------------------------------------------------------------------------------------+

+--------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`inline variables are incompatible with C++ standards before C++17`|
+--------------------------------------------------------------------------------------------------------+

+------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`nested namespace definition is incompatible with C++ standards before C++17`|
+------------------------------------------------------------------------------------------------------------------+

+-------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`by value capture of '\*this' is incompatible with C++ standards before C++17`|
+-------------------------------------------------------------------------------------------------------------------+

+---------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`static\_assert with no message is incompatible with C++ standards before C++17`|
+---------------------------------------------------------------------------------------------------------------------+

+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`non-type template parameters declared with` |nbsp| :placeholder:`A` |nbsp| :diagtext:`are incompatible with C++ standards before C++17`|
+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------+

+-----------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`template template parameter using 'typename' is incompatible with C++ standards before C++17`|
+-----------------------------------------------------------------------------------------------------------------------------------+

+--------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`unicode literals are incompatible with C++ standards before C++17`|
+--------------------------------------------------------------------------------------------------------+

+-----------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`default scope specifier for attributes is incompatible with C++ standards before C++17`|
+-----------------------------------------------------------------------------------------------------------------------------+

+------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`use of multiple declarators in a single using declaration is incompatible with C++ standards before C++17`|
+------------------------------------------------------------------------------------------------------------------------------------------------+

+-----------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`pack expansion using declaration is incompatible with C++ standards before C++17`|
+-----------------------------------------------------------------------------------------------------------------------+

+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`'begin' and 'end' returning different types (`:placeholder:`A` |nbsp| :diagtext:`and` |nbsp| :placeholder:`B`:diagtext:`) is incompatible with C++ standards before C++17`|
+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+


-Wc++98-c++11-c++14-compat-pedantic
-----------------------------------
Also controls `-Wc++98-c++11-c++14-compat`_.

**Diagnostic text:**

+------------------------------------------------------------+---------------------------+--------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`attributes on` |nbsp| |+-------------------------+| |nbsp| :diagtext:`declaration are incompatible with C++ standards before C++17`|
|                                                            ||:diagtext:`a namespace`  ||                                                                                |
|                                                            |+-------------------------+|                                                                                |
|                                                            ||:diagtext:`an enumerator`||                                                                                |
|                                                            |+-------------------------+|                                                                                |
+------------------------------------------------------------+---------------------------+--------------------------------------------------------------------------------+

+---------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`hexadecimal floating literals are incompatible with C++ standards before C++17`|
+---------------------------------------------------------------------------------------------------------------------+


-Wc++98-c++11-compat
--------------------
**Diagnostic text:**

+-----------------------------------------------------------------------------------+-------------------------+-------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`use of this statement in a constexpr` |nbsp| |+-----------------------+| |nbsp| :diagtext:`is incompatible with C++ standards before C++14`|
|                                                                                   ||:diagtext:`function`   ||                                                                   |
|                                                                                   |+-----------------------+|                                                                   |
|                                                                                   ||:diagtext:`constructor`||                                                                   |
|                                                                                   |+-----------------------+|                                                                   |
+-----------------------------------------------------------------------------------+-------------------------+-------------------------------------------------------------------+

+---------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`multiple return statements in constexpr function is incompatible with C++ standards before C++14`|
+---------------------------------------------------------------------------------------------------------------------------------------+

+-----------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`constexpr function with no return statements is incompatible with C++ standards before C++14`|
+-----------------------------------------------------------------------------------------------------------------------------------+

+----------------------------------------------------------------------------------+-------------------------+-------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`variable declaration in a constexpr` |nbsp| |+-----------------------+| |nbsp| :diagtext:`is incompatible with C++ standards before C++14`|
|                                                                                  ||:diagtext:`function`   ||                                                                   |
|                                                                                  |+-----------------------+|                                                                   |
|                                                                                  ||:diagtext:`constructor`||                                                                   |
|                                                                                  |+-----------------------+|                                                                   |
+----------------------------------------------------------------------------------+-------------------------+-------------------------------------------------------------------+

+-----------------------------------------------------------------------------+-------------------------+-------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`type definition in a constexpr` |nbsp| |+-----------------------+| |nbsp| :diagtext:`is incompatible with C++ standards before C++14`|
|                                                                             ||:diagtext:`function`   ||                                                                   |
|                                                                             |+-----------------------+|                                                                   |
|                                                                             ||:diagtext:`constructor`||                                                                   |
|                                                                             |+-----------------------+|                                                                   |
+-----------------------------------------------------------------------------+-------------------------+-------------------------------------------------------------------+

+----------------------------------------------------------------------------------------------------------------------+
|: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`|
+-------------------------------------------------------------------------------------------------------------------+

+----------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`variable templates are incompatible with C++ standards before C++14`|
+----------------------------------------------------------------------------------------------------------+


-Wc++98-c++11-compat-binary-literal
-----------------------------------
**Diagnostic text:**

+---------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`binary integer literals are incompatible with C++ standards before C++14`|
+---------------------------------------------------------------------------------------------------------------+


-Wc++98-c++11-compat-pedantic
-----------------------------
Controls `-Wc++98-c++11-compat`_, `-Wc++98-c++11-compat-binary-literal`_.


-Wc++98-compat
--------------
Also controls `-Wc++98-c++11-c++14-c++17-compat`_, `-Wc++98-c++11-c++14-compat`_, `-Wc++98-c++11-compat`_, `-Wc++98-compat-local-type-template-args`_, `-Wc++98-compat-unnamed-type-template-args`_.

**Diagnostic text:**

+-------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`alias declarations are incompatible with C++98`|
+-------------------------------------------------------------------------------------+

+---------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`'alignas' is incompatible with C++98`|
+---------------------------------------------------------------------------+

+--------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`alignof expressions are incompatible with C++98`|
+--------------------------------------------------------------------------------------+

+----------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`C++11 attribute syntax is incompatible with C++98`|
+----------------------------------------------------------------------------------------+

+---------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`'auto' type specifier is incompatible with C++98`|
+---------------------------------------------------------------------------------------+

+---------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`'constexpr' specifier is incompatible with C++98`|
+---------------------------------------------------------------------------------------+

+--------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`constructor call from initializer list is incompatible with C++98`|
+--------------------------------------------------------------------------------------------------------+

+-------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`'decltype' type specifier is incompatible with C++98`|
+-------------------------------------------------------------------------------------------+

+---------------------------+-----------------------+--------------------------------------------------------------------+
|:warning:`warning:` |nbsp| |+---------------------+| |nbsp| :diagtext:`function definitions are incompatible with C++98`|
|                           ||:diagtext:`defaulted`||                                                                    |
|                           |+---------------------+|                                                                    |
|                           ||:diagtext:`deleted`  ||                                                                    |
|                           |+---------------------+|                                                                    |
+---------------------------+-----------------------+--------------------------------------------------------------------+

+------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`delegating constructors are incompatible with C++98`|
+------------------------------------------------------------------------------------------+

+----------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`scalar initialized from empty initializer list is incompatible with C++98`|
+----------------------------------------------------------------------------------------------------------------+

+-----------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`enumeration types with a fixed underlying type are incompatible with C++98`|
+-----------------------------------------------------------------------------------------------------------------+

+-----------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`befriending enumeration type` |nbsp| :placeholder:`A` |nbsp| :diagtext:`is incompatible with C++98`|
+-----------------------------------------------------------------------------------------------------------------------------------------+

+-----------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`enumeration type in nested name specifier is incompatible with C++98`|
+-----------------------------------------------------------------------------------------------------------+

+------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`explicit conversion functions are incompatible with C++98`|
+------------------------------------------------------------------------------------------------+

+--------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`range-based for loop is incompatible with C++98`|
+--------------------------------------------------------------------------------------+

+---------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`friend declaration naming a member of the declaring class is incompatible with C++98`|
+---------------------------------------------------------------------------------------------------------------------------+

+------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`generalized initializer lists are incompatible with C++98`|
+------------------------------------------------------------------------------------------------+

+------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`jump from this goto statement to its label is incompatible with C++98`|
+------------------------------------------------------------------------------------------------------------+

+-------------------------------------------------------------+----------------------+--------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`jump from this` |nbsp| |+--------------------+| |nbsp| :diagtext:`goto statement to one of its possible targets is incompatible with C++98`|
|                                                             ||:diagtext:`indirect`||                                                                                            |
|                                                             |+--------------------+|                                                                                            |
|                                                             ||:diagtext:`asm`     ||                                                                                            |
|                                                             |+--------------------+|                                                                                            |
+-------------------------------------------------------------+----------------------+--------------------------------------------------------------------------------------------+

+------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`initialization of initializer\_list object is incompatible with C++98`|
+------------------------------------------------------------------------------------------------------------+

+------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`inline namespaces are incompatible with C++98`|
+------------------------------------------------------------------------------------+

+-------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`lambda expressions are incompatible with C++98`|
+-------------------------------------------------------------------------------------+

+-----------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`'<::' is treated as digraph '<:' (aka '\[') followed by ':' in C++98`|
+-----------------------------------------------------------------------------------------------------------+

+------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`literal operators are incompatible with C++98`|
+------------------------------------------------------------------------------------+

+---------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`universal character name referring to a control character is incompatible with C++98`|
+---------------------------------------------------------------------------------------------------------------------------+

+-----------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`specifying character '`:placeholder:`A`:diagtext:`' with a universal character name is incompatible with C++98`|
+-----------------------------------------------------------------------------------------------------------------------------------------------------+

+------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`noexcept specifications are incompatible with C++98`|
+------------------------------------------------------------------------------------------+

+---------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`noexcept expressions are incompatible with C++98`|
+---------------------------------------------------------------------------------------+

+--------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`use of non-static data member` |nbsp| :placeholder:`A` |nbsp| :diagtext:`in an unevaluated context is incompatible with C++98`|
+--------------------------------------------------------------------------------------------------------------------------------------------------------------------+

+----------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`non-class friend type` |nbsp| :placeholder:`A` |nbsp| :diagtext:`is incompatible with C++98`|
+----------------------------------------------------------------------------------------------------------------------------------+

+--------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`in-class initialization of non-static data members is incompatible with C++98`|
+--------------------------------------------------------------------------------------------------------------------+

+---------------------------+------------------------------+------------------------------------------------------------------------------------------------+--------------------------------------+----------------------------------------------+
|: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:`default constructor`     ||                                              |
|                           |+----------------------------+|                                                                                                |+------------------------------------+|                                              |
|                           ||:diagtext:`union`           ||                                                                                                ||:diagtext:`copy constructor`        ||                                              |
|                           |+----------------------------+|                                                                                                |+------------------------------------+|                                              |
|                           |                              |                                                                                                ||:diagtext:`move constructor`        ||                                              |
|                           |                              |                                                                                                |+------------------------------------+|                                              |
|                           |                              |                                                                                                ||:diagtext:`copy assignment operator`||                                              |
|                           |                              |                                                                                                |+------------------------------------+|                                              |
|                           |                              |                                                                                                ||:diagtext:`move assignment operator`||                                              |
|                           |                              |                                                                                                |+------------------------------------+|                                              |
|                           |                              |                                                                                                ||:diagtext:`destructor`              ||                                              |
|                           |                              |                                                                                                |+------------------------------------+|                                              |
+---------------------------+------------------------------+------------------------------------------------------------------------------------------------+--------------------------------------+----------------------------------------------+

+---------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`'nullptr' is incompatible with C++98`|
+---------------------------------------------------------------------------+

+--------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`'`:placeholder:`A`:diagtext:`' keyword is incompatible with C++98`|
+--------------------------------------------------------------------------------------------------------+

+-----------------------------------------------------------------------------------------------------------------------------------------------------+-------------------------+----------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`passing object of trivial but non-POD type` |nbsp| :placeholder:`A` |nbsp| :diagtext:`through variadic` |nbsp| |+-----------------------+| |nbsp| :diagtext:`is incompatible with C++98`|
|                                                                                                                                                     ||:diagtext:`function`   ||                                              |
|                                                                                                                                                     |+-----------------------+|                                              |
|                                                                                                                                                     ||:diagtext:`block`      ||                                              |
|                                                                                                                                                     |+-----------------------+|                                              |
|                                                                                                                                                     ||:diagtext:`method`     ||                                              |
|                                                                                                                                                     |+-----------------------+|                                              |
|                                                                                                                                                     ||:diagtext:`constructor`||                                              |
|                                                                                                                                                     |+-----------------------+|                                              |
+-----------------------------------------------------------------------------------------------------------------------------------------------------+-------------------------+----------------------------------------------+

+--------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`raw string literals are incompatible with C++98`|
+--------------------------------------------------------------------------------------+

+----------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`reference qualifiers on functions are incompatible with C++98`|
+----------------------------------------------------------------------------------------------------+

+-------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`reference initialized from initializer list is incompatible with C++98`|
+-------------------------------------------------------------------------------------------------------------+

+------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`rvalue references are incompatible with C++98`|
+------------------------------------------------------------------------------------+

+--------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`scoped enumerations are incompatible with C++98`|
+--------------------------------------------------------------------------------------+

+------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`substitution failure due to access control is incompatible with C++98`|
+------------------------------------------------------------------------------------------------------------+

+----------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`static\_assert declarations are incompatible with C++98`|
+----------------------------------------------------------------------------------------------+

+----------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`static data member` |nbsp| :placeholder:`A` |nbsp| :diagtext:`in union is incompatible with C++98`|
+----------------------------------------------------------------------------------------------------------------------------------------+

+---------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`jump from switch statement to this case label is incompatible with C++98`|
+---------------------------------------------------------------------------------------------------------------+

+---------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`redundant parentheses surrounding address non-type template argument are incompatible with C++98`|
+---------------------------------------------------------------------------------------------------------------------------------------+

+-------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`use of null pointer as non-type template argument is incompatible with C++98`|
+-------------------------------------------------------------------------------------------------------------------+

+--------------------------------------------------------------------------------------+----------------------+--------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`non-type template argument referring to` |nbsp| |+--------------------+| |nbsp| :placeholder:`B` |nbsp| :diagtext:`with internal linkage is incompatible with C++98`|
|                                                                                      ||:diagtext:`function`||                                                                                            |
|                                                                                      |+--------------------+|                                                                                            |
|                                                                                      ||:diagtext:`object`  ||                                                                                            |
|                                                                                      |+--------------------+|                                                                                            |
+--------------------------------------------------------------------------------------+----------------------+--------------------------------------------------------------------------------------------+

+-----------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`use of 'template' keyword outside of a template is incompatible with C++98`|
+-----------------------------------------------------------------------------------------------------------------+

+---------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`default template arguments for a function template are incompatible with C++98`|
+---------------------------------------------------------------------------------------------------------------------+

+----------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`trailing return types are incompatible with C++98`|
+----------------------------------------------------------------------------------------+

+---------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`consecutive right angle brackets are incompatible with C++98 (use '> >')`|
+---------------------------------------------------------------------------------------------------------------+

+---------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`use of 'typename' outside of a template is incompatible with C++98`|
+---------------------------------------------------------------------------------------------------------+

+-------------------------------------------------------------------------------------------------------+-----------------------+------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`befriending` |nbsp| :placeholder:`B` |nbsp| :diagtext:`without '`|+---------------------+|:diagtext:`' keyword is incompatible with C++98`|
|                                                                                                       ||:diagtext:`struct`   ||                                                |
|                                                                                                       |+---------------------+|                                                |
|                                                                                                       ||:diagtext:`interface`||                                                |
|                                                                                                       |+---------------------+|                                                |
|                                                                                                       ||:diagtext:`union`    ||                                                |
|                                                                                                       |+---------------------+|                                                |
|                                                                                                       ||:diagtext:`class`    ||                                                |
|                                                                                                       |+---------------------+|                                                |
|                                                                                                       ||:diagtext:`enum`     ||                                                |
|                                                                                                       |+---------------------+|                                                |
+-------------------------------------------------------------------------------------------------------+-----------------------+------------------------------------------------+

+-------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`using this character in an identifier is incompatible with C++98`|
+-------------------------------------------------------------------------------------------------------+

+-----------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`unicode literals are incompatible with C++98`|
+-----------------------------------------------------------------------------------+

+---------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`'`:placeholder:`A`:diagtext:`' type specifier is incompatible with C++98`|
+---------------------------------------------------------------------------------------------------------------+

+------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`inheriting constructors are incompatible with C++98`|
+------------------------------------------------------------------------------------------+

+-------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`variadic templates are incompatible with C++98`|
+-------------------------------------------------------------------------------------+


-Wc++98-compat-bind-to-temporary-copy
-------------------------------------
**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:`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:**

+--------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`local type` |nbsp| :placeholder:`A` |nbsp| :diagtext:`as template argument is incompatible with C++98`|
+--------------------------------------------------------------------------------------------------------------------------------------------+


-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`_, `-Wc++98-compat-extra-semi`_.

**Diagnostic text:**

+---------------------------------------------------------------------------------------------------------------------------------------------------+-------------------------+----------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`implicit conversion from array size expression of type` |nbsp| :placeholder:`A` |nbsp| :diagtext:`to` |nbsp| |+-----------------------+| |nbsp| :diagtext:`type` |nbsp| :placeholder:`C` |nbsp| :diagtext:`is incompatible with C++98`|
|                                                                                                                                                   ||:diagtext:`integral`   ||                                                                                              |
|                                                                                                                                                   |+-----------------------+|                                                                                              |
|                                                                                                                                                   ||:diagtext:`enumeration`||                                                                                              |
|                                                                                                                                                   |+-----------------------+|                                                                                              |
+---------------------------------------------------------------------------------------------------------------------------------------------------+-------------------------+----------------------------------------------------------------------------------------------+

+------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`cast between pointer-to-function and pointer-to-object is incompatible with C++98`|
+------------------------------------------------------------------------------------------------------------------------+

+----------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`empty macro arguments are incompatible with C++98`|
+----------------------------------------------------------------------------------------+

+--------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`commas at the end of enumerator lists are incompatible with C++98`|
+--------------------------------------------------------------------------------------------------------+

+-----------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`extern templates are incompatible with C++98`|
+-----------------------------------------------------------------------------------+

+-----------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`'long long' is incompatible with C++98`|
+-----------------------------------------------------------------------------+

+----------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`C++98 requires newline at end of file`|
+----------------------------------------------------------------------------+

+-------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`#line number greater than 32767 is incompatible with C++98`|
+-------------------------------------------------------------------------------------------------+

+----------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`variadic macros are incompatible with C++98`|
+----------------------------------------------------------------------------------+


-Wc++98-compat-unnamed-type-template-args
-----------------------------------------
**Diagnostic text:**

+---------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`unnamed type as template argument is incompatible with C++98`|
+---------------------------------------------------------------------------------------------------+


-Wc11-extensions
----------------
**Diagnostic text:**

+---------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`anonymous unions are a C11 extension`|
+---------------------------------------------------------------------------+

+----------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :placeholder:`A` |nbsp| :diagtext:`is a C11-specific feature`|
+----------------------------------------------------------------------------------------+

+----------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`anonymous structs are a C11 extension`|
+----------------------------------------------------------------------------+

+------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`generic selections are a C11-specific feature`|
+------------------------------------------------------------------------------------+

+--------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`\_Noreturn functions are a C11-specific feature`|
+--------------------------------------------------------------------------------------+

+---------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`\_Static\_assert is a C11-specific feature`|
+---------------------------------------------------------------------------------+


-Wc99-compat
------------
Some of the diagnostics controlled by this flag are enabled by default.

**Diagnostic text:**

+---------------------------+--------------------------------------------------------+--------------------------------------------+
|:warning:`warning:` |nbsp| |+------------------------------------------------------+| |nbsp| :diagtext:`is incompatible with C99`|
|                           ||:diagtext:`using this character in an identifier`     ||                                            |
|                           |+------------------------------------------------------+|                                            |
|                           ||:diagtext:`starting an identifier with this character`||                                            |
|                           |+------------------------------------------------------+|                                            |
+---------------------------+--------------------------------------------------------+--------------------------------------------+

+---------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`unicode literals are incompatible with C99`|
+---------------------------------------------------------------------------------+

+------------------------------------------------------------------------------------------------------------------------------------------------------------------------+-----------------------------------+----------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`integer literal is too large to be represented in type 'long', interpreting as 'unsigned long' per C89; this literal will` |nbsp| |+---------------------------------+| |nbsp| :diagtext:`in C99 onwards`|
|                                                                                                                                                                        ||:diagtext:`have type 'long long'`||                                  |
|                                                                                                                                                                        |+---------------------------------+|                                  |
|                                                                                                                                                                        ||:diagtext:`be ill-formed`        ||                                  |
|                                                                                                                                                                        |+---------------------------------+|                                  |
+------------------------------------------------------------------------------------------------------------------------------------------------------------------------+-----------------------------------+----------------------------------+


-Wc99-extensions
----------------
Some of the diagnostics controlled by this flag are enabled by default.

**Diagnostic text:**

+-----------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`initializer for aggregate is not a compile-time constant`|
+-----------------------------------------------------------------------------------------------+

+---------------------------+----------------------------------+------------------------------+-----------------------+----------------------------+
|:warning:`warning:` |nbsp| |+--------------------------------+|:diagtext:`array size` |nbsp| |+---------------------+|:diagtext:`is a C99 feature`|
|                           ||:diagtext:`qualifier in` |nbsp| ||                              ||                     ||                            |
|                           |+--------------------------------+|                              |+---------------------+|                            |
|                           ||:diagtext:`static` |nbsp|       ||                              ||                     ||                            |
|                           |+--------------------------------+|                              |+---------------------+|                            |
|                           ||                                ||                              ||:diagtext:`'\[\*\] '`||                            |
|                           |+--------------------------------+|                              |+---------------------+|                            |
+---------------------------+----------------------------------+------------------------------+-----------------------+----------------------------+

+-----------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`compound literals are a C99-specific feature`|
+-----------------------------------------------------------------------------------+

+-------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`flexible array members are a C99 feature`|
+-------------------------------------------------------------------------------+

+-------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`variable declaration in for loop is a C99-specific feature`|
+-------------------------------------------------------------------------------------------------+

+---------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`ISO C99 requires whitespace after the macro name`|
+---------------------------------------------------------------------------------------+

+--------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`designated initializers are a C99 feature`|
+--------------------------------------------------------------------------------+

+------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`empty macro arguments are a C99 feature`|
+------------------------------------------------------------------------------+

+-------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`commas at the end of enumerator lists are a C99-specific feature`|
+-------------------------------------------------------------------------------------------------------+

+---------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`hexadecimal floating constants are a C99 feature`|
+---------------------------------------------------------------------------------------+


-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:**

+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`cast from` |nbsp| :placeholder:`A` |nbsp| :diagtext:`to` |nbsp| :placeholder:`B` |nbsp| :diagtext:`increases required alignment from` |nbsp| :placeholder:`C` |nbsp| :diagtext:`to` |nbsp| :placeholder:`D`|
+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+


-Wcast-calling-convention
-------------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`cast between incompatible calling conventions '`:placeholder:`A`:diagtext:`' and '`:placeholder:`B`:diagtext:`'; calls through this pointer may abort at runtime`|
+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+


-Wcast-of-sel-type
------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`cast of type` |nbsp| :placeholder:`A` |nbsp| :diagtext:`to` |nbsp| :placeholder:`B` |nbsp| :diagtext:`is deprecated; use sel\_getName instead`|
+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+


-Wcast-qual
-----------
**Diagnostic text:**

+-------------------------------------------------------------------------------------------------------------------------------------------------------+-------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`cast from` |nbsp| :placeholder:`A` |nbsp| :diagtext:`to` |nbsp| :placeholder:`B` |nbsp| :diagtext:`drops` |nbsp| |+-----------------------------------------+|
|                                                                                                                                                       ||:diagtext:`const and volatile qualifiers`||
|                                                                                                                                                       |+-----------------------------------------+|
|                                                                                                                                                       ||:diagtext:`const qualifier`              ||
|                                                                                                                                                       |+-----------------------------------------+|
|                                                                                                                                                       ||:diagtext:`volatile qualifier`           ||
|                                                                                                                                                       |+-----------------------------------------+|
+-------------------------------------------------------------------------------------------------------------------------------------------------------+-------------------------------------------+

+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`cast from` |nbsp| :placeholder:`A` |nbsp| :diagtext:`to` |nbsp| :placeholder:`B` |nbsp| :diagtext:`must have all intermediate pointers const qualified to be safe`|
+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+


-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.

-Wchar-subscripts
-----------------
**Diagnostic text:**

+------------------------------------------------------------+-------------------------+-------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`array section` |nbsp| |+-----------------------+| |nbsp| :diagtext:`is of type 'char'`|
|                                                            ||:diagtext:`lower bound`||                                     |
|                                                            |+-----------------------+|                                     |
|                                                            ||:diagtext:`length`     ||                                     |
|                                                            |+-----------------------+|                                     |
+------------------------------------------------------------+-------------------------+-------------------------------------+

+------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`array subscript is of type 'char'`|
+------------------------------------------------------------------------+


-Wclang-cl-pch
--------------
This diagnostic is enabled by default.

**Diagnostic text:**

+-------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`support for '/Yc' with more than one source file not implemented yet; flag ignored`|
+-------------------------------------------------------------------------------------------------------------------------+

+------------------------------------------------------------------------------------------------------------------------------+
|: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 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.

Also controls `-Wnon-pod-varargs`_.

**Diagnostic text:**

+---------------------------------------------------------------------------------------------------------------------------------------+-------------------------+----------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`passing object of class type` |nbsp| :placeholder:`A` |nbsp| :diagtext:`through variadic` |nbsp| |+-----------------------+|+--------------------------------------------------------------------+|
|                                                                                                                                       ||:diagtext:`function`   |||                                                                    ||
|                                                                                                                                       |+-----------------------+|+--------------------------------------------------------------------+|
|                                                                                                                                       ||:diagtext:`block`      |||+------------------------------------------------------------------+||
|                                                                                                                                       |+-----------------------+|||:diagtext:`; did you mean to call '`:placeholder:`D`:diagtext:`'?`|||
|                                                                                                                                       ||:diagtext:`method`     |||+------------------------------------------------------------------+||
|                                                                                                                                       |+-----------------------+|+--------------------------------------------------------------------+|
|                                                                                                                                       ||:diagtext:`constructor`||                                                                      |
|                                                                                                                                       |+-----------------------+|                                                                      |
+---------------------------------------------------------------------------------------------------------------------------------------+-------------------------+----------------------------------------------------------------------+


-Wcomma
-------
**Diagnostic text:**

+-----------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`possible misuse of comma operator here`|
+-----------------------------------------------------------------------------+


-Wcomment
---------
Some of the diagnostics controlled by this flag are enabled by default.

**Diagnostic text:**

+--------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`escaped newline between \*/ characters at block comment end`|
+--------------------------------------------------------------------------------------------------+

+-----------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`// comments are not allowed in this language`|
+-----------------------------------------------------------------------------------+

+------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`multi-line // comment`|
+------------------------------------------------------------+

+-----------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`'/\*' within block comment`|
+-----------------------------------------------------------------+


-Wcomments
----------
Synonym for `-Wcomment`_.


-Wcompare-distinct-pointer-types
--------------------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+---------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`comparison of distinct pointer types`|
+---------------------------------------------------------------------------+


-Wcomplex-component-init
------------------------
**Diagnostic text:**

+----------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`complex initialization specifying real and imaginary components is an extension`|
+----------------------------------------------------------------------------------------------------------------------+


-Wconcepts-ts-compat
--------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+---------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`ISO C++2a does not permit the 'bool' keyword after 'concept'`|
+---------------------------------------------------------------------------------------------------+


-Wconditional-type-mismatch
---------------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+----------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`pointer/integer type mismatch in conditional expression`|
+----------------------------------------------------------------------------------------------+


-Wconditional-uninitialized
---------------------------
**Diagnostic text:**

+----------------------------------------------------------------------------------------------------------------------------+-------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`variable` |nbsp| :placeholder:`A` |nbsp| :diagtext:`may be uninitialized when` |nbsp| |+-----------------------------+|
|                                                                                                                            ||:diagtext:`used here`        ||
|                                                                                                                            |+-----------------------------+|
|                                                                                                                            ||:diagtext:`captured by block`||
|                                                                                                                            |+-----------------------------+|
+----------------------------------------------------------------------------------------------------------------------------+-------------------------------+


-Wconfig-macros
---------------
This diagnostic is enabled by default.

**Diagnostic text:**

+---------------------------+------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------+---------------------------------------------------------+
|:warning:`warning:` |nbsp| |+----------------------+| |nbsp| :diagtext:`of configuration macro '`:placeholder:`B`:diagtext:`' has no effect on the import of '`:placeholder:`C`:diagtext:`'; pass '`|+------------------------------------------------+|:diagtext:`' on the command line to configure the module`|
|                           ||:diagtext:`definition`||                                                                                                                                               ||+----------------------------------------------+||                                                         |
|                           |+----------------------+|                                                                                                                                               |||:diagtext:`-D`:placeholder:`B`:diagtext:`=...`|||                                                         |
|                           ||:diagtext:`#undef`    ||                                                                                                                                               ||+----------------------------------------------+||                                                         |
|                           |+----------------------+|                                                                                                                                               |+------------------------------------------------+|                                                         |
|                           |                        |                                                                                                                                               ||+------------------------------+                ||                                                         |
|                           |                        |                                                                                                                                               |||:diagtext:`-U`:placeholder:`B`|                ||                                                         |
|                           |                        |                                                                                                                                               ||+------------------------------+                ||                                                         |
|                           |                        |                                                                                                                                               |+------------------------------------------------+|                                                         |
+---------------------------+------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------+---------------------------------------------------------+


-Wconstant-conversion
---------------------
This diagnostic is enabled by default.

Also controls `-Wbitfield-constant-conversion`_, `-Wobjc-bool-constant-conversion`_.

**Diagnostic text:**

+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`implicit conversion from` |nbsp| :placeholder:`C` |nbsp| :diagtext:`to` |nbsp| :placeholder:`D` |nbsp| :diagtext:`changes value from` |nbsp| :placeholder:`A` |nbsp| :diagtext:`to` |nbsp| :placeholder:`B`|
+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+


-Wconstant-logical-operand
--------------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+----------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`use of logical '`:placeholder:`A`:diagtext:`' with constant operand`|
+----------------------------------------------------------------------------------------------------------+


-Wconstexpr-not-const
---------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+----------------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`'constexpr' non-static member function will not be implicitly 'const' in C++14; add 'const' to avoid a change in behavior`|
+----------------------------------------------------------------------------------------------------------------------------------------------------------------+


-Wconsumed
----------
**Diagnostic text:**

+-----------------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`consumed analysis attribute is attached to member of class '`:placeholder:`A`:diagtext:`' which isn't marked as consumable`|
+-----------------------------------------------------------------------------------------------------------------------------------------------------------------+

+--------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`state of variable '`:placeholder:`A`:diagtext:`' must match at the entry and exit of loop`|
+--------------------------------------------------------------------------------------------------------------------------------+

+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`parameter '`:placeholder:`A`:diagtext:`' not in expected state when the function returns: expected '`:placeholder:`B`:diagtext:`', observed '`:placeholder:`C`:diagtext:`'`|
+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+

+-------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`argument not in expected state; expected '`:placeholder:`A`:diagtext:`', observed '`:placeholder:`B`:diagtext:`'`|
+-------------------------------------------------------------------------------------------------------------------------------------------------------+

+---------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`return state set for an unconsumable type '`:placeholder:`A`:diagtext:`'`|
+---------------------------------------------------------------------------------------------------------------+

+-----------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`return value not in expected state; expected '`:placeholder:`A`:diagtext:`', observed '`:placeholder:`B`:diagtext:`'`|
+-----------------------------------------------------------------------------------------------------------------------------------------------------------+

+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`invalid invocation of method '`:placeholder:`A`:diagtext:`' on object '`:placeholder:`B`:diagtext:`' while it is in the '`:placeholder:`C`:diagtext:`' state`|
+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+

+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`invalid invocation of method '`:placeholder:`A`:diagtext:`' on a temporary object while it is in the '`:placeholder:`B`:diagtext:`' state`|
+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+


-Wconversion
------------
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`_, `-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:**

+--------------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`implicit conversion discards imaginary component:` |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`|
+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+

+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`non-type template argument value '`:placeholder:`A`:diagtext:`' truncated to '`:placeholder:`B`:diagtext:`' for template parameter of type` |nbsp| :placeholder:`C`|
+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+


-Wconversion-null
-----------------
Synonym for `-Wnull-conversion`_.


-Wcoroutine
-----------
Synonym for `-Wcoroutine-missing-unhandled-exception`_.


-Wcoroutine-missing-unhandled-exception
---------------------------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+-----------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :placeholder:`A` |nbsp| :diagtext:`is required to declare the member 'unhandled\_exception()' when exceptions are enabled`|
+-----------------------------------------------------------------------------------------------------------------------------------------------------+


-Wcovered-switch-default
------------------------
**Diagnostic text:**

+--------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`default label in switch which covers all enumeration values`|
+--------------------------------------------------------------------------------------------------+


-Wcpp
-----
Synonym for `-W#warnings`_.


-Wcstring-format-directive
--------------------------
**Diagnostic text:**

+------------------------------------------------------------------------------------------------------------+----------------------+--------------------------------------------------------------------------------------------+------------------------+
|:warning:`warning:` |nbsp| :diagtext:`using` |nbsp| :placeholder:`A` |nbsp| :diagtext:`directive in` |nbsp| |+--------------------+| |nbsp| :diagtext:`which is being passed as a formatting argument to the formatting` |nbsp| |+----------------------+|
|                                                                                                            ||:diagtext:`NSString`||                                                                                            ||:diagtext:`method`    ||
|                                                                                                            |+--------------------+|                                                                                            |+----------------------+|
|                                                                                                            ||:diagtext:`CFString`||                                                                                            ||:diagtext:`CFfunction`||
|                                                                                                            |+--------------------+|                                                                                            |+----------------------+|
+------------------------------------------------------------------------------------------------------------+----------------------+--------------------------------------------------------------------------------------------+------------------------+


-Wctad-maybe-unsupported
------------------------
**Diagnostic text:**

+--------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :placeholder:`A` |nbsp| :diagtext:`may not intend to support class template argument deduction`|
+--------------------------------------------------------------------------------------------------------------------------+


-Wctor-dtor-privacy
-------------------
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.

**Diagnostic text:**

+-------------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :placeholder:`A` |nbsp| :diagtext:`attribute parameter` |nbsp| :placeholder:`B` |nbsp| :diagtext:`is negative and will be ignored`|
+-------------------------------------------------------------------------------------------------------------------------------------------------------------+

+---------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`nvcc does not allow '\_\_`:placeholder:`A`:diagtext:`\_\_' to appear after '()' in lambdas`|
+---------------------------------------------------------------------------------------------------------------------------------+

+------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`ignored 'inline' attribute on kernel function` |nbsp| :placeholder:`A`|
+------------------------------------------------------------------------------------------------------------+

+--------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`kernel function` |nbsp| :placeholder:`A` |nbsp| :diagtext:`is a member function; this may not be accepted by nvcc`|
+--------------------------------------------------------------------------------------------------------------------------------------------------------+

+--------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`argument to '#pragma unroll' should not be in parentheses in CUDA C/C++`|
+--------------------------------------------------------------------------------------------------------------+


-Wcustom-atomic-properties
--------------------------
**Diagnostic text:**

+---------------------------------------------------------------------------------------------------------------------------------------+--------------------+----------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`atomic by default property` |nbsp| :placeholder:`A` |nbsp| :diagtext:`has a user defined` |nbsp| |+------------------+| |nbsp| :diagtext:`(property should be marked 'atomic' if this is intended)`|
|                                                                                                                                       ||:diagtext:`getter`||                                                                            |
|                                                                                                                                       |+------------------+|                                                                            |
|                                                                                                                                       ||:diagtext:`setter`||                                                                            |
|                                                                                                                                       |+------------------+|                                                                            |
+---------------------------------------------------------------------------------------------------------------------------------------+--------------------+----------------------------------------------------------------------------+


-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.

**Diagnostic text:**

+---------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`add explicit braces to avoid dangling else`|
+---------------------------------------------------------------------------------+


-Wdangling-field
----------------
This diagnostic is enabled by default.

**Diagnostic text:**

+-------------------------------------------------------------------------------------------------------------------------------------+-----------------------+------------------------+
|: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| |+------------------------------------------------------+| |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` |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` |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:**

+------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`expansion of date or time macro is not reproducible`|
+------------------------------------------------------------------------------------------+


-Wdealloc-in-category
---------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+---------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`-dealloc is being overridden in a category`|
+---------------------------------------------------------------------------------+


-Wdebug-compression-unavailable
-------------------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`cannot compress debug sections (zlib not installed)`|
+------------------------------------------------------------------------------------------+


-Wdeclaration-after-statement
-----------------------------
**Diagnostic text:**

+-----------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`ISO C90 forbids mixing declarations and code`|
+-----------------------------------------------------------------------------------+


-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.

**Diagnostic text:**

+------------------------------------------------------------------------------------------------------------------------+
|:error:`error:` |nbsp| :diagtext:`constructor for` |nbsp| :placeholder:`A` |nbsp| :diagtext:`creates a delegation cycle`|
+------------------------------------------------------------------------------------------------------------------------+


-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.

**Diagnostic text:**

+-------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`cannot delete expression with pointer-to-'void' type` |nbsp| :placeholder:`A`|
+-------------------------------------------------------------------------------------------------------------------+

+--------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`deleting pointer to incomplete type` |nbsp| :placeholder:`A` |nbsp| :diagtext:`may cause undefined behavior`|
+--------------------------------------------------------------------------------------------------------------------------------------------------+


-Wdelete-non-abstract-non-virtual-dtor
--------------------------------------
**Diagnostic text:**

+---------------------------+------------------------+----------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| |+----------------------+| |nbsp| :diagtext:`called on non-final` |nbsp| :placeholder:`B` |nbsp| :diagtext:`that has virtual functions but non-virtual destructor`|
|                           ||:diagtext:`delete`    ||                                                                                                                                        |
|                           |+----------------------+|                                                                                                                                        |
|                           ||:diagtext:`destructor`||                                                                                                                                        |
|                           |+----------------------+|                                                                                                                                        |
+---------------------------+------------------------+----------------------------------------------------------------------------------------------------------------------------------------+


-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-this-capture`_, `-Wdeprecated-writable-strings`_.

**Diagnostic text:**

+---------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`-O4 is equivalent to -O3`|
+---------------------------------------------------------------+

+---------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`access declarations are deprecated; use using declarations instead`|
+---------------------------------------------------------------------------------------------------------+

+--------------------------------------------------------------------------+---------------------------------+-----------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`definition of implicit copy` |nbsp| |+-------------------------------+| |nbsp| :diagtext:`for` |nbsp| :placeholder:`A` |nbsp| :diagtext:`is deprecated because it has a user-declared` |nbsp| |+------------------------------------------------------------+|
|                                                                          ||:diagtext:`constructor`        ||                                                                                                                       ||+------------------------+---------------------------------+||
|                                                                          |+-------------------------------+|                                                                                                                       |||:diagtext:`copy` |nbsp| |+-------------------------------+|||
|                                                                          ||:diagtext:`assignment operator`||                                                                                                                       |||                        ||:diagtext:`assignment operator`||||
|                                                                          |+-------------------------------+|                                                                                                                       |||                        |+-------------------------------+|||
|                                                                          |                                 |                                                                                                                       |||                        ||:diagtext:`constructor`        ||||
|                                                                          |                                 |                                                                                                                       |||                        |+-------------------------------+|||
|                                                                          |                                 |                                                                                                                       ||+------------------------+---------------------------------+||
|                                                                          |                                 |                                                                                                                       |+------------------------------------------------------------+|
|                                                                          |                                 |                                                                                                                       ||:diagtext:`destructor`                                      ||
|                                                                          |                                 |                                                                                                                       |+------------------------------------------------------------+|
+--------------------------------------------------------------------------+---------------------------------+-----------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------+

+-------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`out-of-line definition of constexpr static data member is redundant in C++17 and is deprecated`|
+-------------------------------------------------------------------------------------------------------------------------------------+

+----------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`argument '`:placeholder:`A`:diagtext:`' is deprecated, use '`:placeholder:`B`:diagtext:`' instead`|
+----------------------------------------------------------------------------------------------------------------------------------------+

+--------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`treating '`:placeholder:`A`:diagtext:`' input as '`:placeholder:`B`:diagtext:`' when in C++ mode, this behavior is deprecated`|
+--------------------------------------------------------------------------------------------------------------------------------------------------------------------+

+-----------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`OpenCL version` |nbsp| :placeholder:`A` |nbsp| :diagtext:`does not support the option '`:placeholder:`B`:diagtext:`'`|
+-----------------------------------------------------------------------------------------------------------------------------------------------------------+

+------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`Use of 'long' with '\_\_vector' is deprecated`|
+------------------------------------------------------------------------------------+


-Wdeprecated-attributes
-----------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`specifying vector types with the 'mode' attribute is deprecated; use the 'vector\_size' attribute instead`|
+------------------------------------------------------------------------------------------------------------------------------------------------+


-Wdeprecated-declarations
-------------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+--------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`specifying 'uuid' as an ATL attribute is deprecated; use \_\_declspec instead`|
+--------------------------------------------------------------------------------------------------------------------+

+-----------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`use of C-style parameters in Objective-C method declarations is deprecated`|
+-----------------------------------------------------------------------------------------------------------------+

+----------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :placeholder:`A` |nbsp| :diagtext:`is deprecated`|
+----------------------------------------------------------------------------+

+---------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :placeholder:`A` |nbsp| :diagtext:`may be deprecated because the receiver type is unknown`|
+---------------------------------------------------------------------------------------------------------------------+

+-----------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :placeholder:`A` |nbsp| :diagtext:`is deprecated:` |nbsp| :placeholder:`B`|
+-----------------------------------------------------------------------------------------------------+

+-------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`property access is using` |nbsp| :placeholder:`A` |nbsp| :diagtext:`method which is deprecated`|
+-------------------------------------------------------------------------------------------------------------------------------------+


-Wdeprecated-dynamic-exception-spec
-----------------------------------
**Diagnostic text:**

+--------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`dynamic exception specifications are deprecated`|
+--------------------------------------------------------------------------------------+


-Wdeprecated-implementations
----------------------------
**Diagnostic text:**

+----------------------------------------------------------------------+----------------------+
|:warning:`warning:` |nbsp| :diagtext:`implementing deprecated` |nbsp| |+--------------------+|
|                                                                      ||:diagtext:`method`  ||
|                                                                      |+--------------------+|
|                                                                      ||:diagtext:`class`   ||
|                                                                      |+--------------------+|
|                                                                      ||:diagtext:`category`||
|                                                                      |+--------------------+|
+----------------------------------------------------------------------+----------------------+

+----------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`implementing unavailable method`|
+----------------------------------------------------------------------+


-Wdeprecated-increment-bool
---------------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+---------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`incrementing expression of type bool is deprecated and incompatible with C++17`|
+---------------------------------------------------------------------------------------------------------------------+


-Wdeprecated-objc-isa-usage
---------------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+-------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`assignment to Objective-C's isa is deprecated in favor of object\_setClass()`|
+-------------------------------------------------------------------------------------------------------------------+

+----------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`direct access to Objective-C's isa is deprecated in favor of object\_getClass()`|
+----------------------------------------------------------------------------------------------------------------------+


-Wdeprecated-objc-pointer-introspection
---------------------------------------
This diagnostic is enabled by default.

Also controls `-Wdeprecated-objc-pointer-introspection-performSelector`_.

**Diagnostic text:**

+--------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`bitmasking for introspection of Objective-C object pointers is strongly discouraged`|
+--------------------------------------------------------------------------------------------------------------------------+


-Wdeprecated-objc-pointer-introspection-performSelector
-------------------------------------------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+--------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`bitmasking for introspection of Objective-C object pointers is strongly discouraged`|
+--------------------------------------------------------------------------------------------------------------------------+


-Wdeprecated-register
---------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+-------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`'register' storage class specifier is deprecated and incompatible with C++17`|
+-------------------------------------------------------------------------------------------------------------------+


-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`_.


-Wdirect-ivar-access
--------------------
**Diagnostic text:**

+------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`instance variable` |nbsp| :placeholder:`A` |nbsp| :diagtext:`is being directly accessed`|
+------------------------------------------------------------------------------------------------------------------------------+


-Wdisabled-macro-expansion
--------------------------
**Diagnostic text:**

+----------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`disabled expansion of recursive macro`|
+----------------------------------------------------------------------------+


-Wdisabled-optimization
-----------------------
This diagnostic flag exists for GCC compatibility, and has no effect in Clang.

-Wdiscard-qual
--------------
This diagnostic flag exists for GCC compatibility, and has no effect in Clang.

-Wdistributed-object-modifiers
------------------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+----------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`conflicting distributed object modifiers on parameter type in implementation of` |nbsp| :placeholder:`A`|
+----------------------------------------------------------------------------------------------------------------------------------------------+

+-------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`conflicting distributed object modifiers on return type in implementation of` |nbsp| :placeholder:`A`|
+-------------------------------------------------------------------------------------------------------------------------------------------+


-Wdiv-by-zero
-------------
Synonym for `-Wdivision-by-zero`_.


-Wdivision-by-zero
------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+---------------------------+-----------------------+----------------------------------------+
|:warning:`warning:` |nbsp| |+---------------------+| |nbsp| :diagtext:`by zero is undefined`|
|                           ||:diagtext:`remainder`||                                        |
|                           |+---------------------+|                                        |
|                           ||:diagtext:`division` ||                                        |
|                           |+---------------------+|                                        |
+---------------------------+-----------------------+----------------------------------------+


-Wdll-attribute-on-redeclaration
--------------------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+----------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`redeclaration of` |nbsp| :placeholder:`A` |nbsp| :diagtext:`should not add` |nbsp| :placeholder:`B` |nbsp| :diagtext:`attribute`|
+----------------------------------------------------------------------------------------------------------------------------------------------------------------------+


-Wdllexport-explicit-instantiation-decl
---------------------------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+---------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`explicit instantiation declaration should not be 'dllexport'`|
+---------------------------------------------------------------------------------------------------+


-Wdllimport-static-field-def
----------------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+---------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`definition of dllimport static field`|
+---------------------------------------------------------------------------+


-Wdocumentation
---------------
Also controls `-Wdocumentation-deprecated-sync`_, `-Wdocumentation-html`_.

**Diagnostic text:**

+----------------------------------------+----------------+-----------------------+------------------------------------------------------------------------+-----------------------+-------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`'`|+--------------+|+---------------------+|:diagtext:`' command should not be used in a comment attached to a non-`|+---------------------+| |nbsp| :diagtext:`declaration`|
|                                        ||:diagtext:`\\`|||:diagtext:`class`    ||                                                                        ||:diagtext:`class`    ||                               |
|                                        |+--------------+|+---------------------+|                                                                        |+---------------------+|                               |
|                                        ||:diagtext:`@` |||:diagtext:`interface`||                                                                        ||:diagtext:`interface`||                               |
|                                        |+--------------+|+---------------------+|                                                                        |+---------------------+|                               |
|                                        |                ||:diagtext:`protocol` ||                                                                        ||:diagtext:`protocol` ||                               |
|                                        |                |+---------------------+|                                                                        |+---------------------+|                               |
|                                        |                ||:diagtext:`struct`   ||                                                                        ||:diagtext:`struct`   ||                               |
|                                        |                |+---------------------+|                                                                        |+---------------------+|                               |
|                                        |                ||:diagtext:`union`    ||                                                                        ||:diagtext:`union`    ||                               |
|                                        |                |+---------------------+|                                                                        |+---------------------+|                               |
+----------------------------------------+----------------+-----------------------+------------------------------------------------------------------------+-----------------------+-------------------------------+

+-----------------------------------------------------------+----------------+-----------------------------+
|:warning:`warning:` |nbsp| :diagtext:`duplicated command '`|+--------------+|:placeholder:`B`:diagtext:`'`|
|                                                           ||:diagtext:`\\`||                             |
|                                                           |+--------------+|                             |
|                                                           ||:diagtext:`@` ||                             |
|                                                           |+--------------+|                             |
+-----------------------------------------------------------+----------------+-----------------------------+

+------------------------------------------------------------------+----------------+-------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`empty paragraph passed to '`|+--------------+|:placeholder:`B`:diagtext:`' command`|
|                                                                  ||:diagtext:`\\`||                                     |
|                                                                  |+--------------+|                                     |
|                                                                  ||:diagtext:`@` ||                                     |
|                                                                  |+--------------+|                                     |
+------------------------------------------------------------------+----------------+-------------------------------------+

+----------------------------------------+----------------+--------------------------+---------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`'`|+--------------+|+------------------------+|:diagtext:`' command should not be used in a comment attached to a non-container declaration`|
|                                        ||:diagtext:`\\`|||:diagtext:`classdesign` ||                                                                                             |
|                                        |+--------------+|+------------------------+|                                                                                             |
|                                        ||:diagtext:`@` |||:diagtext:`coclass`     ||                                                                                             |
|                                        |+--------------+|+------------------------+|                                                                                             |
|                                        |                ||:diagtext:`dependency`  ||                                                                                             |
|                                        |                |+------------------------+|                                                                                             |
|                                        |                ||:diagtext:`helper`      ||                                                                                             |
|                                        |                |+------------------------+|                                                                                             |
|                                        |                ||:diagtext:`helperclass` ||                                                                                             |
|                                        |                |+------------------------+|                                                                                             |
|                                        |                ||:diagtext:`helps`       ||                                                                                             |
|                                        |                |+------------------------+|                                                                                             |
|                                        |                ||:diagtext:`instancesize`||                                                                                             |
|                                        |                |+------------------------+|                                                                                             |
|                                        |                ||:diagtext:`ownership`   ||                                                                                             |
|                                        |                |+------------------------+|                                                                                             |
|                                        |                ||:diagtext:`performance` ||                                                                                             |
|                                        |                |+------------------------+|                                                                                             |
|                                        |                ||:diagtext:`security`    ||                                                                                             |
|                                        |                |+------------------------+|                                                                                             |
|                                        |                ||:diagtext:`superclass`  ||                                                                                             |
|                                        |                |+------------------------+|                                                                                             |
+----------------------------------------+----------------+--------------------------+---------------------------------------------------------------------------------------------+

+----------------------------------------+----------------+---------------------------+---------------------------------------------------------------------+-----------------------------------+-------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`'`|+--------------+|+-------------------------+|:diagtext:`' command should be used in a comment attached to` |nbsp| |+---------------------------------+| |nbsp| :diagtext:`declaration`|
|                                        ||:diagtext:`\\`|||:diagtext:`function`     ||                                                                     ||:diagtext:`a function`           ||                               |
|                                        |+--------------+|+-------------------------+|                                                                     |+---------------------------------+|                               |
|                                        ||:diagtext:`@` |||:diagtext:`functiongroup`||                                                                     ||:diagtext:`a function`           ||                               |
|                                        |+--------------+|+-------------------------+|                                                                     |+---------------------------------+|                               |
|                                        |                ||:diagtext:`method`       ||                                                                     ||:diagtext:`an Objective-C method`||                               |
|                                        |                |+-------------------------+|                                                                     |+---------------------------------+|                               |
|                                        |                ||:diagtext:`methodgroup`  ||                                                                     ||:diagtext:`an Objective-C method`||                               |
|                                        |                |+-------------------------+|                                                                     |+---------------------------------+|                               |
|                                        |                ||:diagtext:`callback`     ||                                                                     ||:diagtext:`a pointer to function`||                               |
|                                        |                |+-------------------------+|                                                                     |+---------------------------------+|                               |
+----------------------------------------+----------------+---------------------------+---------------------------------------------------------------------+-----------------------------------+-------------------------------+

+-------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`HTML start tag prematurely ended, expected attribute name or '>'`|
+-------------------------------------------------------------------------------------------------------+

+-------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`expected quoted string after equals sign`|
+-------------------------------------------------------------------------------+

+-----------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`parameter '`:placeholder:`A`:diagtext:`' is already documented`|
+-----------------------------------------------------------------------------------------------------+

+------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`unrecognized parameter passing direction, valid directions are '\[in\]', '\[out\]' and '\[in,out\]'`|
+------------------------------------------------------------------------------------------------------------------------------------------+

+----------------------------------------+----------------+-------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`'`|+--------------+|:diagtext:`param' command used in a comment that is not attached to a function declaration`|
|                                        ||:diagtext:`\\`||                                                                                           |
|                                        |+--------------+|                                                                                           |
|                                        ||:diagtext:`@` ||                                                                                           |
|                                        |+--------------+|                                                                                           |
+----------------------------------------+----------------+-------------------------------------------------------------------------------------------+

+---------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`parameter '`:placeholder:`A`:diagtext:`' not found in the function declaration`|
+---------------------------------------------------------------------------------------------------------------------+

+----------------------------------------+----------------+-------------------------------------------------------------------------------------+-------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`'`|+--------------+|:placeholder:`B`:diagtext:`' command used in a comment that is attached to a` |nbsp| |+-----------------------------------+|
|                                        ||:diagtext:`\\`||                                                                                     ||:diagtext:`function returning void`||
|                                        |+--------------+|                                                                                     |+-----------------------------------+|
|                                        ||:diagtext:`@` ||                                                                                     ||:diagtext:`constructor`            ||
|                                        |+--------------+|                                                                                     |+-----------------------------------+|
|                                        |                |                                                                                     ||:diagtext:`destructor`             ||
|                                        |                |                                                                                     |+-----------------------------------+|
|                                        |                |                                                                                     ||:diagtext:`method returning void`  ||
|                                        |                |                                                                                     |+-----------------------------------+|
+----------------------------------------+----------------+-------------------------------------------------------------------------------------+-------------------------------------+

+----------------------------------------+----------------+----------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`'`|+--------------+|:placeholder:`B`:diagtext:`' command used in a comment that is not attached to a function or method declaration`|
|                                        ||:diagtext:`\\`||                                                                                                                |
|                                        |+--------------+|                                                                                                                |
|                                        ||:diagtext:`@` ||                                                                                                                |
|                                        |+--------------+|                                                                                                                |
+----------------------------------------+----------------+----------------------------------------------------------------------------------------------------------------+

+--------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`template parameter '`:placeholder:`A`:diagtext:`' is already documented`|
+--------------------------------------------------------------------------------------------------------------+

+----------------------------------------+----------------+--------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`'`|+--------------+|:diagtext:`tparam' command used in a comment that is not attached to a template declaration`|
|                                        ||:diagtext:`\\`||                                                                                            |
|                                        |+--------------+|                                                                                            |
|                                        ||:diagtext:`@` ||                                                                                            |
|                                        |+--------------+|                                                                                            |
+----------------------------------------+----------------+--------------------------------------------------------------------------------------------+

+------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`template parameter '`:placeholder:`A`:diagtext:`' not found in the template declaration`|
+------------------------------------------------------------------------------------------------------------------------------+

+---------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`not a Doxygen trailing comment`|
+---------------------------------------------------------------------+

+----------------------------------------+----------------+------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`'`|+--------------+|:placeholder:`B`:diagtext:`' command does not terminate a verbatim text block`|
|                                        ||:diagtext:`\\`||                                                                              |
|                                        |+--------------+|                                                                              |
|                                        ||:diagtext:`@` ||                                                                              |
|                                        |+--------------+|                                                                              |
+----------------------------------------+----------------+------------------------------------------------------------------------------+


-Wdocumentation-deprecated-sync
-------------------------------
**Diagnostic text:**

+----------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`declaration is marked with '\\deprecated' command but does not have a deprecation attribute`|
+----------------------------------------------------------------------------------------------------------------------------------+


-Wdocumentation-html
--------------------
**Diagnostic text:**

+-----------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`HTML end tag '`:placeholder:`A`:diagtext:`' is forbidden`|
+-----------------------------------------------------------------------------------------------+

+--------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`HTML end tag does not match any start tag`|
+--------------------------------------------------------------------------------+

+--------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`HTML tag '`:placeholder:`A`:diagtext:`' requires an end tag`|
+--------------------------------------------------------------------------------------------------+

+-----------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`HTML start tag '`:placeholder:`A`:diagtext:`' closed by '`:placeholder:`B`:diagtext:`'`|
+-----------------------------------------------------------------------------------------------------------------------------+


-Wdocumentation-pedantic
------------------------
Also controls `-Wdocumentation-unknown-command`_.

**Diagnostic text:**

+-----------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`whitespace is not allowed in parameter passing direction`|
+-----------------------------------------------------------------------------------------------+


-Wdocumentation-unknown-command
-------------------------------
**Diagnostic text:**

+--------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`unknown command tag name '`:placeholder:`A`:diagtext:`'; did you mean '`:placeholder:`B`:diagtext:`'?`|
+--------------------------------------------------------------------------------------------------------------------------------------------+

+---------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`unknown command tag name`|
+---------------------------------------------------------------+


-Wdollar-in-identifier-extension
--------------------------------
**Diagnostic text:**

+--------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`'$' in identifier`|
+--------------------------------------------------------+


-Wdouble-promotion
------------------
**Diagnostic text:**

+--------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`implicit conversion increases floating-point precision:` |nbsp| :placeholder:`A` |nbsp| :diagtext:`to` |nbsp| :placeholder:`B`|
+--------------------------------------------------------------------------------------------------------------------------------------------------------------------+


-Wduplicate-decl-specifier
--------------------------
Some of the diagnostics controlled by this flag are enabled by default.

**Diagnostic text:**

+-----------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`duplicate '`:placeholder:`A`:diagtext:`' declaration specifier`|
+-----------------------------------------------------------------------------------------------------+

+-----------------------------------------------------------------------------------------------------+
|: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:**

+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`element` |nbsp| :placeholder:`A` |nbsp| :diagtext:`has been implicitly assigned` |nbsp| :placeholder:`B` |nbsp| :diagtext:`which another element has been assigned`|
+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+


-Wduplicate-method-arg
----------------------
**Diagnostic text:**

+------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`redeclaration of method parameter` |nbsp| :placeholder:`A`|
+------------------------------------------------------------------------------------------------+


-Wduplicate-method-match
------------------------
**Diagnostic text:**

+-----------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`multiple declarations of method` |nbsp| :placeholder:`A` |nbsp| :diagtext:`found and ignored`|
+-----------------------------------------------------------------------------------------------------------------------------------+


-Wduplicate-protocol
--------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+-----------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`duplicate protocol definition of` |nbsp| :placeholder:`A` |nbsp| :diagtext:`is ignored`|
+-----------------------------------------------------------------------------------------------------------------------------+


-Wdynamic-class-memaccess
-------------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+---------------------------+-------------------------------+------------------------------------------------------------------------------------------------+----------------------------------------+---------------------------------------------------------------------------------------------+-------------------------+
|:warning:`warning:` |nbsp| |+-----------------------------+| |nbsp| :diagtext:`this` |nbsp| :placeholder:`B` |nbsp| :diagtext:`call is a pointer to` |nbsp| |+--------------------------------------+|:diagtext:`dynamic class` |nbsp| :placeholder:`D`:diagtext:`; vtable pointer will be` |nbsp| |+-----------------------+|
|                           ||:diagtext:`destination for`  ||                                                                                                ||                                      ||                                                                                             ||:diagtext:`overwritten`||
|                           |+-----------------------------+|                                                                                                |+--------------------------------------+|                                                                                             |+-----------------------+|
|                           ||:diagtext:`source of`        ||                                                                                                ||:diagtext:`class containing a` |nbsp| ||                                                                                             ||:diagtext:`copied`     ||
|                           |+-----------------------------+|                                                                                                |+--------------------------------------+|                                                                                             |+-----------------------+|
|                           ||:diagtext:`first operand of` ||                                                                                                |                                        |                                                                                             ||:diagtext:`moved`      ||
|                           |+-----------------------------+|                                                                                                |                                        |                                                                                             |+-----------------------+|
|                           ||:diagtext:`second operand of`||                                                                                                |                                        |                                                                                             ||:diagtext:`compared`   ||
|                           |+-----------------------------+|                                                                                                |                                        |                                                                                             |+-----------------------+|
+---------------------------+-------------------------------+------------------------------------------------------------------------------------------------+----------------------------------------+---------------------------------------------------------------------------------------------+-------------------------+


-Wdynamic-exception-spec
------------------------
Some of the diagnostics controlled by this flag are enabled by default.

Also controls `-Wdeprecated-dynamic-exception-spec`_.

**Diagnostic text:**

+--------------------------------------------------------------------------------------------+
|:error:`error:` |nbsp| :diagtext:`ISO C++17 does not allow dynamic exception specifications`|
+--------------------------------------------------------------------------------------------+


-Weffc++
--------
Synonym for `-Wnon-virtual-dtor`_.


-Wembedded-directive
--------------------
**Diagnostic text:**

+----------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`embedding a directive within macro arguments has undefined behavior`|
+----------------------------------------------------------------------------------------------------------+


-Wempty-body
------------
This diagnostic is enabled by default.

**Diagnostic text:**

+--------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`for loop has empty body`|
+--------------------------------------------------------------+

+------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`if statement has empty body`|
+------------------------------------------------------------------+

+--------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`range-based for loop has empty body`|
+--------------------------------------------------------------------------+

+----------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`switch statement has empty body`|
+----------------------------------------------------------------------+

+----------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`while loop has empty body`|
+----------------------------------------------------------------+


-Wempty-decomposition
---------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+-------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`ISO C++17 does not allow a decomposition group to be empty`|
+-------------------------------------------------------------------------------------------------+


-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:**

+------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`ISO C requires a translation unit to contain at least one declaration`|
+------------------------------------------------------------------------------------------------------------+


-Wencode-type
-------------
This diagnostic is enabled by default.

**Diagnostic text:**

+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`encoding of` |nbsp| :placeholder:`A` |nbsp| :diagtext:`type is incomplete because` |nbsp| :placeholder:`B` |nbsp| :diagtext:`component has unknown encoding`|
+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+


-Wendif-labels
--------------
Synonym for `-Wextra-tokens`_.


-Wenum-compare
--------------
This diagnostic is enabled by default.

Also controls `-Wenum-compare-switch`_.

**Diagnostic text:**

+------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`comparison of two values with different enumeration types`|
+------------------------------------------------------------------------------------------------+


-Wenum-compare-switch
---------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+--------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`comparison of two values with different enumeration types in switch statement`|
+--------------------------------------------------------------------------------------------------------------------+


-Wenum-conversion
-----------------
This diagnostic is enabled by default.

**Diagnostic text:**

+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`implicit conversion from enumeration type` |nbsp| :placeholder:`A` |nbsp| :diagtext:`to different enumeration type` |nbsp| :placeholder:`B`|
+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+


-Wenum-too-large
----------------
This diagnostic is enabled by default.

**Diagnostic text:**

+-----------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`enumeration values exceed range of largest integer`|
+-----------------------------------------------------------------------------------------+

+---------------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`incremented enumerator value` |nbsp| :placeholder:`A` |nbsp| :diagtext:`is not representable in the largest integer type`|
+---------------------------------------------------------------------------------------------------------------------------------------------------------------+


-Wexceptions
------------
This diagnostic is enabled by default.

**Diagnostic text:**

+--------------------------------------------------------------------------------------------------------+-------------------------+--------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`cannot refer to a non-static member from the handler of a` |nbsp| |+-----------------------+| |nbsp| :diagtext:`function try block`|
|                                                                                                        ||:diagtext:`constructor`||                                      |
|                                                                                                        |+-----------------------+|                                      |
|                                                                                                        ||:diagtext:`destructor` ||                                      |
|                                                                                                        |+-----------------------+|                                      |
+--------------------------------------------------------------------------------------------------------+-------------------------+--------------------------------------+

+-------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`exception of type` |nbsp| :placeholder:`A` |nbsp| :diagtext:`will be caught by earlier handler`|
+-------------------------------------------------------------------------------------------------------------------------------------+

+-----------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :placeholder:`A` |nbsp| :diagtext:`has a non-throwing exception specification but can still throw`|
+-----------------------------------------------------------------------------------------------------------------------------+


-Wexit-time-destructors
-----------------------
**Diagnostic text:**

+-----------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`declaration requires an exit-time destructor`|
+-----------------------------------------------------------------------------------+


-Wexpansion-to-defined
----------------------
Some of the diagnostics controlled by this flag are enabled by default.

**Diagnostic text:**

+-------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`macro expansion producing 'defined' has undefined behavior`|
+-------------------------------------------------------------------------------------------------+

+-------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`macro expansion producing 'defined' has undefined behavior`|
+-------------------------------------------------------------------------------------------------+


-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.

**Diagnostic text:**

+------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`explicit call to +initialize results in duplicate call to +initialize`|
+------------------------------------------------------------------------------------------------------------+

+----------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`explicit call to \[super initialize\] should only be in implementation of +initialize`|
+----------------------------------------------------------------------------------------------------------------------------+


-Wexplicit-ownership-type
-------------------------
**Diagnostic text:**

+-------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`method parameter of type` |nbsp| :placeholder:`A` |nbsp| :diagtext:`with no explicit ownership`|
+-------------------------------------------------------------------------------------------------------------------------------------+


-Wexport-unnamed
----------------
This diagnostic is enabled by default.

**Diagnostic text:**

+------------------------------------------------------------------------+------------------------------+------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`ISO C++20 does not permit` |nbsp| |+----------------------------+| |nbsp| :diagtext:`declaration to appear in an export block`|
|                                                                        ||:diagtext:`an empty`        ||                                                            |
|                                                                        |+----------------------------+|                                                            |
|                                                                        ||:diagtext:`a static\_assert`||                                                            |
|                                                                        |+----------------------------+|                                                            |
+------------------------------------------------------------------------+------------------------------+------------------------------------------------------------+

+-------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`ISO C++20 does not permit a declaration that does not introduce any names to be exported`|
+-------------------------------------------------------------------------------------------------------------------------------+


-Wexport-using-directive
------------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+-----------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`ISO C++20 does not permit using directive to be exported`|
+-----------------------------------------------------------------------------------------------+


-Wextern-c-compat
-----------------
This diagnostic is enabled by default.

**Diagnostic text:**

+---------------------------+---------------------------+--------------------+--------------------------------------------+---------------------------+--------------------------+
|:warning:`warning:` |nbsp| |+-------------------------+|+------------------+| |nbsp| :diagtext:`has size 0 in C,` |nbsp| |+-------------------------+| |nbsp| :diagtext:`in C++`|
|                           ||                         |||:diagtext:`struct`||                                            ||:diagtext:`size 1`       ||                          |
|                           |+-------------------------+|+------------------+|                                            |+-------------------------+|                          |
|                           ||:diagtext:`empty` |nbsp| |||:diagtext:`union` ||                                            ||:diagtext:`non-zero size`||                          |
|                           |+-------------------------+|+------------------+|                                            |+-------------------------+|                          |
+---------------------------+---------------------------+--------------------+--------------------------------------------+---------------------------+--------------------------+


-Wextern-initializer
--------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+---------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`'extern' variable has an initializer`|
+---------------------------------------------------------------------------+


-Wextra
-------
Some of the diagnostics controlled by this flag are enabled by default.

Also controls `-Wempty-init-stmt`_, `-Wignored-qualifiers`_, `-Winitializer-overrides`_, `-Wmissing-field-initializers`_, `-Wmissing-method-return-type`_, `-Wnull-pointer-arithmetic`_, `-Wsemicolon-before-method-body`_, `-Wsign-compare`_, `-Wunused-parameter`_.

**Diagnostic text:**

+-----------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`call to function without interrupt attribute could clobber interruptee's VFP registers`|
+-----------------------------------------------------------------------------------------------------------------------------+


-Wextra-qualification
---------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+--------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`extra qualification on member` |nbsp| :placeholder:`A`|
+--------------------------------------------------------------------------------------------+


-Wextra-semi
------------
Also controls `-Wc++11-extra-semi`_, `-Wc++98-compat-extra-semi`_.

**Diagnostic text:**

+--------------------------------------------------------+------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`extra ';'` |nbsp| |+----------------------------------------------+|
|                                                        ||:diagtext:`outside of a function`             ||
|                                                        |+----------------------------------------------+|
|                                                        ||+--------------------------------------------+||
|                                                        |||:diagtext:`inside a` |nbsp| :placeholder:`B`|||
|                                                        ||+--------------------------------------------+||
|                                                        |+----------------------------------------------+|
|                                                        ||:diagtext:`inside instance variable list`     ||
|                                                        |+----------------------------------------------+|
|                                                        ||:diagtext:`after member function definition`  ||
|                                                        |+----------------------------------------------+|
+--------------------------------------------------------+------------------------------------------------+

+---------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`extra ';' after member function definition`|
+---------------------------------------------------------------------------------+


-Wextra-semi-stmt
-----------------
Also controls `-Wempty-init-stmt`_.

**Diagnostic text:**

+-------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`empty expression statement has no effect; remove unnecessary ';' to silence this warning`|
+-------------------------------------------------------------------------------------------------------------------------------+


-Wextra-tokens
--------------
This diagnostic is enabled by default.

**Diagnostic text:**

+------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`extra tokens at end of #`:placeholder:`A` |nbsp| :diagtext:`directive`|
+------------------------------------------------------------------------------------------------------------+

+-------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`extra tokens at the end of '#pragma omp` |nbsp| :placeholder:`A`:diagtext:`' are ignored`|
+-------------------------------------------------------------------------------------------------------------------------------+


-Wfallback
----------
This diagnostic is enabled by default.

**Diagnostic text:**

+------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`falling back to` |nbsp| :placeholder:`A`|
+------------------------------------------------------------------------------+


-Wfixed-enum-extension
----------------------
**Diagnostic text:**

+-----------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`enumeration types with a fixed underlying type are a Clang extension`|
+-----------------------------------------------------------------------------------------------------------+


-Wflag-enum
-----------
This diagnostic is enabled by default.

**Diagnostic text:**

+------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`enumeration value` |nbsp| :placeholder:`A` |nbsp| :diagtext:`is out of range of flags in enumeration type` |nbsp| :placeholder:`B`|
+------------------------------------------------------------------------------------------------------------------------------------------------------------------------+


-Wflexible-array-extensions
---------------------------
**Diagnostic text:**

+-------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :placeholder:`A` |nbsp| :diagtext:`may not be used as an array element due to flexible array member`|
+-------------------------------------------------------------------------------------------------------------------------------+

+-------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :placeholder:`A` |nbsp| :diagtext:`may not be nested in a struct due to flexible array member`|
+-------------------------------------------------------------------------------------------------------------------------+


-Wfloat-conversion
------------------
Also controls `-Wfloat-overflow-conversion`_, `-Wfloat-zero-conversion`_.

**Diagnostic text:**

+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`implicit conversion turns floating-point number into integer:` |nbsp| :placeholder:`A` |nbsp| :diagtext:`to` |nbsp| :placeholder:`B`|
+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------+


-Wfloat-equal
-------------
**Diagnostic text:**

+---------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`comparing floating point with == or != is unsafe`|
+---------------------------------------------------------------------------------------+


-Wfloat-overflow-conversion
---------------------------
**Diagnostic text:**

+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`implicit conversion from` |nbsp| :placeholder:`A` |nbsp| :diagtext:`to` |nbsp| :placeholder:`B` |nbsp| :diagtext:`changes value from` |nbsp| :placeholder:`C` |nbsp| :diagtext:`to` |nbsp| :placeholder:`D`|
+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+

+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`implicit conversion of out of range value from` |nbsp| :placeholder:`A` |nbsp| :diagtext:`to` |nbsp| :placeholder:`B` |nbsp| :diagtext:`is undefined`|
+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+


-Wfloat-zero-conversion
-----------------------
**Diagnostic text:**

+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`implicit conversion from` |nbsp| :placeholder:`A` |nbsp| :diagtext:`to` |nbsp| :placeholder:`B` |nbsp| :diagtext:`changes non-zero value from` |nbsp| :placeholder:`C` |nbsp| :diagtext:`to` |nbsp| :placeholder:`D`|
+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+


-Wfor-loop-analysis
-------------------
**Diagnostic text:**

+-----------------------------------------------------------------------------------------------------+-------------------------+----------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`variable` |nbsp| :placeholder:`A` |nbsp| :diagtext:`is` |nbsp| |+-----------------------+| |nbsp| :diagtext:`both in the loop header and in the loop body`|
|                                                                                                     ||:diagtext:`decremented`||                                                                |
|                                                                                                     |+-----------------------+|                                                                |
|                                                                                                     ||:diagtext:`incremented`||                                                                |
|                                                                                                     |+-----------------------+|                                                                |
+-----------------------------------------------------------------------------------------------------+-------------------------+----------------------------------------------------------------+

+-----------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`variable`|+----------------------------------------------------------------------------------------------------------------------------------------------------------+| |nbsp| :diagtext:`used in loop condition not modified in loop body`|
|                                               ||:diagtext:`s`                                                                                                                                             ||                                                                    |
|                                               |+----------------------------------------------------------------------------------------------------------------------------------------------------------+|                                                                    |
|                                               ||+------------------------+                                                                                                                                ||                                                                    |
|                                               ||| |nbsp| :placeholder:`B`|                                                                                                                                ||                                                                    |
|                                               ||+------------------------+                                                                                                                                ||                                                                    |
|                                               |+----------------------------------------------------------------------------------------------------------------------------------------------------------+|                                                                    |
|                                               ||+------------------------------------------------------------------------------------+                                                                    ||                                                                    |
|                                               |||:diagtext:`s` |nbsp| :placeholder:`B` |nbsp| :diagtext:`and` |nbsp| :placeholder:`C`|                                                                    ||                                                                    |
|                                               ||+------------------------------------------------------------------------------------+                                                                    ||                                                                    |
|                                               |+----------------------------------------------------------------------------------------------------------------------------------------------------------+|                                                                    |
|                                               ||+-------------------------------------------------------------------------------------------------------------------+                                     ||                                                                    |
|                                               |||:diagtext:`s` |nbsp| :placeholder:`B`:diagtext:`,` |nbsp| :placeholder:`C`:diagtext:`, and` |nbsp| :placeholder:`D`|                                     ||                                                                    |
|                                               ||+-------------------------------------------------------------------------------------------------------------------+                                     ||                                                                    |
|                                               |+----------------------------------------------------------------------------------------------------------------------------------------------------------+|                                                                    |
|                                               ||+--------------------------------------------------------------------------------------------------------------------------------------------------------+||                                                                    |
|                                               |||:diagtext:`s` |nbsp| :placeholder:`B`:diagtext:`,` |nbsp| :placeholder:`C`:diagtext:`,` |nbsp| :placeholder:`D`:diagtext:`, and` |nbsp| :placeholder:`E`|||                                                                    |
|                                               ||+--------------------------------------------------------------------------------------------------------------------------------------------------------+||                                                                    |
|                                               |+----------------------------------------------------------------------------------------------------------------------------------------------------------+|                                                                    |
+-----------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------+


-Wformat
--------
This diagnostic is enabled by default.

Also controls `-Wformat-extra-args`_, `-Wformat-invalid-specifier`_, `-Wformat-security`_, `-Wformat-y2k`_, `-Wformat-zero-length`_, `-Wnonnull`_.

**Diagnostic text:**

+-------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`using '%%P' format specifier without precision`|
+-------------------------------------------------------------------------------------+

+---------------------------+----------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| |+--------------------------------------------+| |nbsp| :diagtext:`'`:placeholder:`A`:diagtext:`' should not be used as format arguments; add an explicit cast to` |nbsp| :placeholder:`B` |nbsp| :diagtext:`instead`|
|                           ||:diagtext:`values of type`                  ||                                                                                                                                                                     |
|                           |+--------------------------------------------+|                                                                                                                                                                     |
|                           ||:diagtext:`enum values with underlying type`||                                                                                                                                                                     |
|                           |+--------------------------------------------+|                                                                                                                                                                     |
+---------------------------+----------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------+

+------------------------------------------------------------------------------------------------------------------------------------+-----------------------------+------------------------+
|:warning:`warning:` |nbsp| :diagtext:`format specifies type` |nbsp| :placeholder:`A` |nbsp| :diagtext:`but the argument has` |nbsp| |+---------------------------+| |nbsp| :placeholder:`B`|
|                                                                                                                                    ||:diagtext:`type`           ||                        |
|                                                                                                                                    |+---------------------------+|                        |
|                                                                                                                                    ||:diagtext:`underlying type`||                        |
|                                                                                                                                    |+---------------------------+|                        |
+------------------------------------------------------------------------------------------------------------------------------------+-----------------------------+------------------------+

+----------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`using '`:placeholder:`A`:diagtext:`' format specifier annotation outside of os\_log()/os\_trace()`|
+----------------------------------------------------------------------------------------------------------------------------------------+

+-----------------------------------------------------------------------------+-----------------------------+
|:warning:`warning:` |nbsp| :diagtext:`invalid position specified for` |nbsp| |+---------------------------+|
|                                                                             ||:diagtext:`field width`    ||
|                                                                             |+---------------------------+|
|                                                                             ||:diagtext:`field precision`||
|                                                                             |+---------------------------+|
+-----------------------------------------------------------------------------+-----------------------------+

+----------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`cannot mix positional and non-positional arguments in format string`|
+----------------------------------------------------------------------------------------------------------+

+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`length modifier '`:placeholder:`A`:diagtext:`' results in undefined behavior or no effect with '`:placeholder:`B`:diagtext:`' conversion specifier`|
+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+

+--------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`format string should not be a wide string`|
+--------------------------------------------------------------------------------+

+-------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`position arguments in format strings start counting at 1 (not 0)`|
+-------------------------------------------------------------------------------------------------------+

+------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`format string missing`|
+------------------------------------------------------------+

+----------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`object format flags cannot be used with '`:placeholder:`A`:diagtext:`' conversion specifier`|
+----------------------------------------------------------------------------------------------------------------------------------+

+----------------------------------------+-----------------+-------------------------------------+-----------------------+--------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`'`|+---------------+|:diagtext:`' specified field` |nbsp| |+---------------------+| |nbsp| :diagtext:`is missing a matching 'int' argument`|
|                                        ||:diagtext:`\*` ||                                     ||:diagtext:`width`    ||                                                        |
|                                        |+---------------+|                                     |+---------------------+|                                                        |
|                                        ||:diagtext:`.\*`||                                     ||:diagtext:`precision`||                                                        |
|                                        |+---------------+|                                     |+---------------------+|                                                        |
+----------------------------------------+-----------------+-------------------------------------+-----------------------+--------------------------------------------------------+

+----------------------------------------------------+-----------------------+-----------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`field` |nbsp| |+---------------------+| |nbsp| :diagtext:`should have type` |nbsp| :placeholder:`B`:diagtext:`, but argument has type` |nbsp| :placeholder:`C`|
|                                                    ||:diagtext:`width`    ||                                                                                                                       |
|                                                    |+---------------------+|                                                                                                                       |
|                                                    ||:diagtext:`precision`||                                                                                                                       |
|                                                    |+---------------------+|                                                                                                                       |
+----------------------------------------------------+-----------------------+-----------------------------------------------------------------------------------------------------------------------+

+-----------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`missing object format flag`|
+-----------------------------------------------------------------+

+------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`format string contains '\\0' within the string body`|
+------------------------------------------------------------------------------------------+

+---------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`format string is not null-terminated`|
+---------------------------------------------------------------------------+

+-----------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`flag '`:placeholder:`A`:diagtext:`' is ignored when flag '`:placeholder:`B`:diagtext:`' is present`|
+-----------------------------------------------------------------------------------------------------------------------------------------+

+------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`incomplete format specifier`|
+------------------------------------------------------------------+

+--------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`more '%%' conversions than data arguments`|
+--------------------------------------------------------------------------------+

+-------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`'`:placeholder:`A`:diagtext:`' is not a valid object format flag`|
+-------------------------------------------------------------------------------------------------------+

+-----------------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`flag '`:placeholder:`A`:diagtext:`' results in undefined behavior with '`:placeholder:`B`:diagtext:`' conversion specifier`|
+-----------------------------------------------------------------------------------------------------------------------------------------------------------------+

+---------------------------+-------------------------+------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| |+-----------------------+| |nbsp| :diagtext:`used with '`:placeholder:`B`:diagtext:`' conversion specifier, resulting in undefined behavior`|
|                           ||:diagtext:`field width`||                                                                                                                  |
|                           |+-----------------------+|                                                                                                                  |
|                           ||:diagtext:`precision`  ||                                                                                                                  |
|                           |+-----------------------+|                                                                                                                  |
+---------------------------+-------------------------+------------------------------------------------------------------------------------------------------------------+

+----------------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`data argument position '`:placeholder:`A`:diagtext:`' exceeds the number of data arguments (`:placeholder:`B`:diagtext:`)`|
+----------------------------------------------------------------------------------------------------------------------------------------------------------------+

+----------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`zero field width in scanf format string is unused`|
+----------------------------------------------------------------------------------------+

+----------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`no closing '\]' for '%%\[' in scanf format string`|
+----------------------------------------------------------------------------------------+


-Wformat-extra-args
-------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`data argument not used by format string`|
+------------------------------------------------------------------------------+


-Wformat-invalid-specifier
--------------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+--------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`invalid conversion specifier '`:placeholder:`A`:diagtext:`'`|
+--------------------------------------------------------------------------------------------------+


-Wformat-non-iso
----------------
**Diagnostic text:**

+-----------------------------------------------------------------------------+----------------------------------+---------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`'`:placeholder:`A`:diagtext:`'` |nbsp| |+--------------------------------+| |nbsp| :diagtext:`is not supported by ISO C`|
|                                                                             ||:diagtext:`length modifier`     ||                                             |
|                                                                             |+--------------------------------+|                                             |
|                                                                             ||:diagtext:`conversion specifier`||                                             |
|                                                                             |+--------------------------------+|                                             |
+-----------------------------------------------------------------------------+----------------------------------+---------------------------------------------+

+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`using length modifier '`:placeholder:`A`:diagtext:`' with conversion specifier '`:placeholder:`B`:diagtext:`' is not supported by ISO C`|
+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+

+--------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`positional arguments are not supported by ISO C`|
+--------------------------------------------------------------------------------------+


-Wformat-nonliteral
-------------------
**Diagnostic text:**

+----------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`format string is not a string literal`|
+----------------------------------------------------------------------------+


-Wformat-pedantic
-----------------
**Diagnostic text:**

+---------------------------+----------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| |+--------------------------------------------+| |nbsp| :diagtext:`'`:placeholder:`A`:diagtext:`' should not be used as format arguments; add an explicit cast to` |nbsp| :placeholder:`B` |nbsp| :diagtext:`instead`|
|                           ||:diagtext:`values of type`                  ||                                                                                                                                                                     |
|                           |+--------------------------------------------+|                                                                                                                                                                     |
|                           ||:diagtext:`enum values with underlying type`||                                                                                                                                                                     |
|                           |+--------------------------------------------+|                                                                                                                                                                     |
+---------------------------+----------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------+

+------------------------------------------------------------------------------------------------------------------------------------+-----------------------------+------------------------+
|:warning:`warning:` |nbsp| :diagtext:`format specifies type` |nbsp| :placeholder:`A` |nbsp| :diagtext:`but the argument has` |nbsp| |+---------------------------+| |nbsp| :placeholder:`B`|
|                                                                                                                                    ||:diagtext:`type`           ||                        |
|                                                                                                                                    |+---------------------------+|                        |
|                                                                                                                                    ||:diagtext:`underlying type`||                        |
|                                                                                                                                    |+---------------------------+|                        |
+------------------------------------------------------------------------------------------------------------------------------------+-----------------------------+------------------------+


-Wformat-security
-----------------
This diagnostic is enabled by default.

**Diagnostic text:**

+---------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`format string is not a string literal (potentially insecure)`|
+---------------------------------------------------------------------------------------------------+


-Wformat-y2k
------------
This diagnostic flag exists for GCC compatibility, and has no effect in Clang.

-Wformat-zero-length
--------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+-------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`format string is empty`|
+-------------------------------------------------------------+


-Wformat=2
----------
Some of the diagnostics controlled by this flag are enabled by default.

Controls `-Wformat-nonliteral`_, `-Wformat-security`_, `-Wformat-y2k`_.


-Wfortify-source
----------------
This diagnostic is enabled by default.

**Diagnostic text:**

+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|: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`|
+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+

+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`'`:placeholder:`A`:diagtext:`' size argument is too large; destination buffer has size` |nbsp| :placeholder:`B`:diagtext:`, but size argument is` |nbsp| :placeholder:`C`|
+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+


-Wfour-char-constants
---------------------
**Diagnostic text:**

+-------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`multi-character character constant`|
+-------------------------------------------------------------------------+


-Wframe-larger-than=
--------------------
This diagnostic is enabled by default.

**Diagnostic text:**

The text of this diagnostic is not controlled by Clang.

+--------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`stack frame size of` |nbsp| :placeholder:`A` |nbsp| :diagtext:`bytes in` |nbsp| :placeholder:`B`|
+--------------------------------------------------------------------------------------------------------------------------------------+


-Wframework-include-private-from-public
---------------------------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+-------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`public framework header includes private framework header '`:placeholder:`A`:diagtext:`'`|
+-------------------------------------------------------------------------------------------------------------------------------+


-Wfunction-def-in-objc-container
--------------------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+--------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`function definition inside an Objective-C container is deprecated`|
+--------------------------------------------------------------------------------------------------------+


-Wfunction-multiversion
-----------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+-------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`body of cpu\_dispatch function will be ignored`|
+-------------------------------------------------------------------------------------+

+---------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`CPU list contains duplicate entries; attribute ignored`|
+---------------------------------------------------------------------------------------------+


-Wfuture-compat
---------------
This diagnostic flag exists for GCC compatibility, and has no effect in Clang.

-Wgcc-compat
------------
Some of the diagnostics controlled by this flag are enabled by default.

**Diagnostic text:**

+--------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`'diagnose\_if' is a clang extension`|
+--------------------------------------------------------------------------+

+------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`'enable\_if' is a clang extension`|
+------------------------------------------------------------------------+

+-----------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`\_\_final is a GNU extension, consider using C++11 final`|
+-----------------------------------------------------------------------------------------------+

+--------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`GCC does not allow` |nbsp| :placeholder:`A` |nbsp| :diagtext:`attribute in this position on a function definition`|
+--------------------------------------------------------------------------------------------------------------------------------------------------------+

+---------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`'break' is bound to loop, GCC binds it to switch`|
+---------------------------------------------------------------------------------------+

+----------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`GCC does not allow the 'cleanup' attribute argument to be anything other than a simple identifier`|
+----------------------------------------------------------------------------------------------------------------------------------------+

+-----------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`GCC does not allow an attribute in this position on a function declaration`|
+-----------------------------------------------------------------------------------------------------------------+

+------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`GCC does not allow the` |nbsp| :placeholder:`A` |nbsp| :diagtext:`attribute to be written on a type`|
+------------------------------------------------------------------------------------------------------------------------------------------+

+-------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`GCC does not allow variable declarations in for loop initializers before C99`|
+-------------------------------------------------------------------------------------------------------------------+

+----------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`'`:placeholder:`A`:diagtext:`' is bound to current loop, GCC binds it to the enclosing loop`|
+----------------------------------------------------------------------------------------------------------------------------------+


-Wglobal-constructors
---------------------
**Diagnostic text:**

+--------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`declaration requires a global constructor`|
+--------------------------------------------------------------------------------+

+-------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`declaration requires a global destructor`|
+-------------------------------------------------------------------------------+


-Wgnu
-----
Some of the diagnostics controlled by this flag are enabled by default.

Controls `-Wgnu-alignof-expression`_, `-Wgnu-anonymous-struct`_, `-Wgnu-auto-type`_, `-Wgnu-binary-literal`_, `-Wgnu-case-range`_, `-Wgnu-complex-integer`_, `-Wgnu-compound-literal-initializer`_, `-Wgnu-conditional-omitted-operand`_, `-Wgnu-designator`_, `-Wgnu-empty-initializer`_, `-Wgnu-empty-struct`_, `-Wgnu-flexible-array-initializer`_, `-Wgnu-flexible-array-union-member`_, `-Wgnu-folding-constant`_, `-Wgnu-imaginary-constant`_, `-Wgnu-include-next`_, `-Wgnu-label-as-value`_, `-Wgnu-redeclared-enum`_, `-Wgnu-statement-expression`_, `-Wgnu-static-float-init`_, `-Wgnu-string-literal-operator-template`_, `-Wgnu-union-cast`_, `-Wgnu-variable-sized-type-not-at-end`_, `-Wgnu-zero-line-directive`_, `-Wgnu-zero-variadic-macro-arguments`_, `-Wredeclared-class-member`_, `-Wvla-extension`_, `-Wzero-length-array`_.


-Wgnu-alignof-expression
------------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+----------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :placeholder:`A` |nbsp| :diagtext:`applied to an expression is a GNU extension`|
+----------------------------------------------------------------------------------------------------------+


-Wgnu-anonymous-struct
----------------------
**Diagnostic text:**

+----------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`anonymous structs are a GNU extension`|
+----------------------------------------------------------------------------+


-Wgnu-array-member-paren-init
-----------------------------
This diagnostic is an error by default, but the flag ``-Wno-gnu-array-member-paren-init`` can be used to disable the error.

**Diagnostic text:**

+----------------------------------------------------------------------------------------------------+
|:error:`error:` |nbsp| :diagtext:`parenthesized initialization of a member array is a GNU extension`|
+----------------------------------------------------------------------------------------------------+


-Wgnu-auto-type
---------------
**Diagnostic text:**

+--------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`'\_\_auto\_type' is a GNU extension`|
+--------------------------------------------------------------------------+


-Wgnu-binary-literal
--------------------
**Diagnostic text:**

+----------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`binary integer literals are a GNU extension`|
+----------------------------------------------------------------------------------+


-Wgnu-case-range
----------------
**Diagnostic text:**

+----------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`use of GNU case range extension`|
+----------------------------------------------------------------------+


-Wgnu-complex-integer
---------------------
**Diagnostic text:**

+--------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`complex integer types are a GNU extension`|
+--------------------------------------------------------------------------------+


-Wgnu-compound-literal-initializer
----------------------------------
**Diagnostic text:**

+--------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`initialization of an array` |nbsp| :diagtext:`from a compound literal` |nbsp| :diagtext:`is a GNU extension`|
+--------------------------------------------------------------------------------------------------------------------------------------------------+


-Wgnu-conditional-omitted-operand
---------------------------------
**Diagnostic text:**

+--------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`use of GNU ?: conditional expression extension, omitting middle operand`|
+--------------------------------------------------------------------------------------------------------------+


-Wgnu-designator
----------------
Some of the diagnostics controlled by this flag are enabled by default.

**Diagnostic text:**

+-----------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`use of GNU array range extension`|
+-----------------------------------------------------------------------+

+-------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`use of GNU 'missing =' extension in designator`|
+-------------------------------------------------------------------------------------+

+--------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`use of GNU old-style field designator extension`|
+--------------------------------------------------------------------------------------+


-Wgnu-empty-initializer
-----------------------
**Diagnostic text:**

+-----------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`use of GNU empty initializer extension`|
+-----------------------------------------------------------------------------+


-Wgnu-empty-struct
------------------
**Diagnostic text:**

+----------------------------------------------------+--------------------+--------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`empty` |nbsp| |+------------------+| |nbsp| :diagtext:`is a GNU extension`|
|                                                    ||:diagtext:`struct`||                                      |
|                                                    |+------------------+|                                      |
|                                                    ||:diagtext:`union` ||                                      |
|                                                    |+------------------+|                                      |
+----------------------------------------------------+--------------------+--------------------------------------+

+----------------------------------------------------------------------------------------------------------------------------------+-----------------------+--------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`flexible array member` |nbsp| :placeholder:`A` |nbsp| :diagtext:`in otherwise empty` |nbsp| |+---------------------+| |nbsp| :diagtext:`is a GNU extension`|
|                                                                                                                                  ||:diagtext:`struct`   ||                                      |
|                                                                                                                                  |+---------------------+|                                      |
|                                                                                                                                  ||:diagtext:`interface`||                                      |
|                                                                                                                                  |+---------------------+|                                      |
|                                                                                                                                  ||:diagtext:`union`    ||                                      |
|                                                                                                                                  |+---------------------+|                                      |
|                                                                                                                                  ||:diagtext:`class`    ||                                      |
|                                                                                                                                  |+---------------------+|                                      |
|                                                                                                                                  ||:diagtext:`enum`     ||                                      |
|                                                                                                                                  |+---------------------+|                                      |
+----------------------------------------------------------------------------------------------------------------------------------+-----------------------+--------------------------------------+

+---------------------------+--------------------+------------------------------------------------------------+
|:warning:`warning:` |nbsp| |+------------------+| |nbsp| :diagtext:`without named members is a GNU extension`|
|                           ||:diagtext:`struct`||                                                            |
|                           |+------------------+|                                                            |
|                           ||:diagtext:`union` ||                                                            |
|                           |+------------------+|                                                            |
+---------------------------+--------------------+------------------------------------------------------------+


-Wgnu-flexible-array-initializer
--------------------------------
**Diagnostic text:**

+---------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`flexible array initialization is a GNU extension`|
+---------------------------------------------------------------------------------------+


-Wgnu-flexible-array-union-member
---------------------------------
**Diagnostic text:**

+-------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`flexible array member` |nbsp| :placeholder:`A` |nbsp| :diagtext:`in a union is a GNU extension`|
+-------------------------------------------------------------------------------------------------------------------------------------+


-Wgnu-folding-constant
----------------------
**Diagnostic text:**

+-------------------------------------------------------------------+----------------------+------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`expression is not an` |nbsp| |+--------------------+| |nbsp| :diagtext:`constant expression; folding it to a constant is a GNU extension`|
|                                                                   ||:diagtext:`integer` ||                                                                                    |
|                                                                   |+--------------------+|                                                                                    |
|                                                                   ||:diagtext:`integral`||                                                                                    |
|                                                                   |+--------------------+|                                                                                    |
+-------------------------------------------------------------------+----------------------+------------------------------------------------------------------------------------+

+------------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`in-class initializer for static data member is not a constant expression; folding it to a constant is a GNU extension`|
+------------------------------------------------------------------------------------------------------------------------------------------------------------+

+-----------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`variable length array folded to constant array as an extension`|
+-----------------------------------------------------------------------------------------------------+


-Wgnu-imaginary-constant
------------------------
**Diagnostic text:**

+------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`imaginary constants are a GNU extension`|
+------------------------------------------------------------------------------+


-Wgnu-include-next
------------------
**Diagnostic text:**

+-----------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`#include\_next is a language extension`|
+-----------------------------------------------------------------------------+


-Wgnu-label-as-value
--------------------
**Diagnostic text:**

+----------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`use of GNU address-of-label extension`|
+----------------------------------------------------------------------------+

+-------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`use of GNU indirect-goto extension`|
+-------------------------------------------------------------------------+


-Wgnu-redeclared-enum
---------------------
**Diagnostic text:**

+------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`redeclaration of already-defined enum` |nbsp| :placeholder:`A` |nbsp| :diagtext:`is a GNU extension`|
+------------------------------------------------------------------------------------------------------------------------------------------+


-Wgnu-statement-expression
--------------------------
**Diagnostic text:**

+--------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`use of GNU statement expression extension`|
+--------------------------------------------------------------------------------+


-Wgnu-static-float-init
-----------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+--------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`in-class initializer for static data member of type` |nbsp| :placeholder:`A` |nbsp| :diagtext:`is a GNU extension`|
+--------------------------------------------------------------------------------------------------------------------------------------------------------+


-Wgnu-string-literal-operator-template
--------------------------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+--------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`string literal operator templates are a GNU extension`|
+--------------------------------------------------------------------------------------------+


-Wgnu-union-cast
----------------
**Diagnostic text:**

+----------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`cast to union type is a GNU extension`|
+----------------------------------------------------------------------------+


-Wgnu-variable-sized-type-not-at-end
------------------------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`field` |nbsp| :placeholder:`A` |nbsp| :diagtext:`with variable sized type` |nbsp| :placeholder:`B` |nbsp| :diagtext:`not at the end of a struct or class is a GNU extension`|
+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+


-Wgnu-zero-line-directive
-------------------------
**Diagnostic text:**

+--------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`#line directive with zero argument is a GNU extension`|
+--------------------------------------------------------------------------------------------+


-Wgnu-zero-variadic-macro-arguments
-----------------------------------
**Diagnostic text:**

+---------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`must specify at least one argument for '...' parameter of variadic macro`|
+---------------------------------------------------------------------------------------------------------------+

+---------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`token pasting of ',' and \_\_VA\_ARGS\_\_ is a GNU extension`|
+---------------------------------------------------------------------------------------------------+


-Wheader-guard
--------------
This diagnostic is enabled by default.

**Diagnostic text:**

+---------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :placeholder:`A` |nbsp| :diagtext:`is used as a header guard here, followed by #define of a different macro`|
+---------------------------------------------------------------------------------------------------------------------------------------+


-Wheader-hygiene
----------------
**Diagnostic text:**

+--------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`using namespace directive in global context in header`|
+--------------------------------------------------------------------------------------------+


-Widiomatic-parentheses
-----------------------
**Diagnostic text:**

+-----------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`using the result of an assignment as a condition without parentheses`|
+-----------------------------------------------------------------------------------------------------------+


-Wignored-attributes
--------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+--------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`'trivial\_abi' cannot be applied to` |nbsp| :placeholder:`A`|
+--------------------------------------------------------------------------------------------------+

+---------------------------+-------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| |+-----------------+| |nbsp| :diagtext:`will always resolve to` |nbsp| :placeholder:`A` |nbsp| :diagtext:`even if weak definition of` |nbsp| :placeholder:`B` |nbsp| :diagtext:`is overridden`|
|                           ||:diagtext:`alias`||                                                                                                                                                                         |
|                           |+-----------------+|                                                                                                                                                                         |
|                           ||:diagtext:`ifunc`||                                                                                                                                                                         |
|                           |+-----------------+|                                                                                                                                                                         |
+---------------------------+-------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------+

+---------------------------+-------------------+----------------------------------------------------------------------------------------------------------------+----------------------+
|:warning:`warning:` |nbsp| |+-----------------+| |nbsp| :diagtext:`will not be in section '`:placeholder:`A`:diagtext:`' but in the same section as the` |nbsp| |+--------------------+|
|                           ||:diagtext:`alias`||                                                                                                                ||:diagtext:`aliasee` ||
|                           |+-----------------+|                                                                                                                |+--------------------+|
|                           ||:diagtext:`ifunc`||                                                                                                                ||:diagtext:`resolver`||
|                           |+-----------------+|                                                                                                                |+--------------------+|
+---------------------------+-------------------+----------------------------------------------------------------------------------------------------------------+----------------------+

+----------------------------------------------------------------------+------------------------+-------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`'abi\_tag' attribute on` |nbsp| |+----------------------+| |nbsp| :diagtext:`namespace ignored`|
|                                                                      ||:diagtext:`non-inline`||                                     |
|                                                                      |+----------------------+|                                     |
|                                                                      ||:diagtext:`anonymous` ||                                     |
|                                                                      |+----------------------+|                                     |
+----------------------------------------------------------------------+------------------------+-------------------------------------+

+-----------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`attribute` |nbsp| :placeholder:`A` |nbsp| :diagtext:`after definition is ignored`|
+-----------------------------------------------------------------------------------------------------------------------+

+---------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`'dllexport' attribute ignored on explicit instantiation definition`|
+---------------------------------------------------------------------------------------------------------+

+--------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :placeholder:`A` |nbsp| :diagtext:`attribute can only be applied to instance variables or properties`|
+--------------------------------------------------------------------------------------------------------------------------------+

+--------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :placeholder:`A` |nbsp| :diagtext:`attribute ignored`|
+--------------------------------------------------------------------------------+

+--------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :placeholder:`A` |nbsp| :diagtext:`attribute ignored for field of type` |nbsp| :placeholder:`B`|
+--------------------------------------------------------------------------------------------------------------------------+

+---------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :placeholder:`A` |nbsp| :diagtext:`attribute ignored on inline function`|
+---------------------------------------------------------------------------------------------------+

+-------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`'`:placeholder:`A`:diagtext:`' attribute cannot be specified on a definition`|
+-------------------------------------------------------------------------------------------------------------------+

+------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`attribute` |nbsp| :placeholder:`A` |nbsp| :diagtext:`ignored, because it is not attached to a declaration`|
+------------------------------------------------------------------------------------------------------------------------------------------------+

+--------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`'nonnull' attribute applied to function with no pointer arguments`|
+--------------------------------------------------------------------------------------------------------+

+-----------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`'nonnull' attribute when used on parameters takes no arguments`|
+-----------------------------------------------------------------------------------------------------+

+--------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :placeholder:`A` |nbsp| :diagtext:`attribute ignored when parsing type`|
+--------------------------------------------------------------------------------------------------+

+----------------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :placeholder:`A` |nbsp| :diagtext:`attribute only applies to a pointer or reference (`:placeholder:`B` |nbsp| :diagtext:`is invalid)`|
+----------------------------------------------------------------------------------------------------------------------------------------------------------------+

+----------------------------------------------------------------------------------------+------------------------------+-------------------------------------+
|:warning:`warning:` |nbsp| :placeholder:`A` |nbsp| :diagtext:`attribute only applies to`|+----------------------------+| |nbsp| :diagtext:`pointer arguments`|
|                                                                                        ||                            ||                                     |
|                                                                                        |+----------------------------+|                                     |
|                                                                                        || |nbsp| :diagtext:`constant`||                                     |
|                                                                                        |+----------------------------+|                                     |
+----------------------------------------------------------------------------------------+------------------------------+-------------------------------------+

+------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`attribute declaration must precede definition`|
+------------------------------------------------------------------------------------+

+------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :placeholder:`A` |nbsp| :diagtext:`attribute only applies to return values that are pointers`|
+------------------------------------------------------------------------------------------------------------------------+

+--------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :placeholder:`A` |nbsp| :diagtext:`attribute only applies to return values that are pointers or references`|
+--------------------------------------------------------------------------------------------------------------------------------------+

+------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`'sentinel' attribute requires named arguments`|
+------------------------------------------------------------------------------------+

+-----------------------------------------------------------------------------------------------+-----------------------+
|:warning:`warning:` |nbsp| :diagtext:`'sentinel' attribute only supported for variadic` |nbsp| |+---------------------+|
|                                                                                               ||:diagtext:`functions`||
|                                                                                               |+---------------------+|
|                                                                                               ||:diagtext:`blocks`   ||
|                                                                                               |+---------------------+|
+-----------------------------------------------------------------------------------------------+-----------------------+

+------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :placeholder:`A` |nbsp| :diagtext:`attribute argument not supported:` |nbsp| :placeholder:`B`|
+------------------------------------------------------------------------------------------------------------------------+

+---------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`unknown visibility` |nbsp| :placeholder:`A`|
+---------------------------------------------------------------------------------+

+------------------------------------------------------------------------------------------------------------------------+--------------------------------+----------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`attribute` |nbsp| :placeholder:`A` |nbsp| :diagtext:`cannot be applied to` |nbsp| |+------------------------------+| |nbsp| :diagtext:`without return value`|
|                                                                                                                        ||:diagtext:`functions`         ||                                        |
|                                                                                                                        |+------------------------------+|                                        |
|                                                                                                                        ||:diagtext:`Objective-C method`||                                        |
|                                                                                                                        |+------------------------------+|                                        |
+------------------------------------------------------------------------------------------------------------------------+--------------------------------+----------------------------------------+

+----------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`\_\_weak attribute cannot be specified on a field declaration`|
+----------------------------------------------------------------------------------------------------+

+------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`\_\_weak attribute cannot be specified on an automatic variable when ARC is not enabled`|
+------------------------------------------------------------------------------------------------------------------------------+

+------------------------------------------------------------------------------------------------+---------------------------------------------------+
|:warning:`warning:` |nbsp| :placeholder:`A` |nbsp| :diagtext:`attribute only applies to` |nbsp| |+-------------------------------------------------+|
|                                                                                                ||:diagtext:`functions`                            ||
|                                                                                                |+-------------------------------------------------+|
|                                                                                                ||:diagtext:`unions`                               ||
|                                                                                                |+-------------------------------------------------+|
|                                                                                                ||:diagtext:`variables and functions`              ||
|                                                                                                |+-------------------------------------------------+|
|                                                                                                ||:diagtext:`functions and methods`                ||
|                                                                                                |+-------------------------------------------------+|
|                                                                                                ||:diagtext:`functions, methods and blocks`        ||
|                                                                                                |+-------------------------------------------------+|
|                                                                                                ||:diagtext:`functions, methods, and parameters`   ||
|                                                                                                |+-------------------------------------------------+|
|                                                                                                ||:diagtext:`variables`                            ||
|                                                                                                |+-------------------------------------------------+|
|                                                                                                ||:diagtext:`variables and fields`                 ||
|                                                                                                |+-------------------------------------------------+|
|                                                                                                ||:diagtext:`variables, data members and tag types`||
|                                                                                                |+-------------------------------------------------+|
|                                                                                                ||:diagtext:`types and namespaces`                 ||
|                                                                                                |+-------------------------------------------------+|
|                                                                                                ||:diagtext:`variables, functions and classes`     ||
|                                                                                                |+-------------------------------------------------+|
|                                                                                                ||:diagtext:`kernel functions`                     ||
|                                                                                                |+-------------------------------------------------+|
|                                                                                                ||:diagtext:`non-K&R-style functions`              ||
|                                                                                                |+-------------------------------------------------+|
+------------------------------------------------------------------------------------------------+---------------------------------------------------+

+----------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :placeholder:`A` |nbsp| :diagtext:`attribute only applies to` |nbsp| :placeholder:`B`|
+----------------------------------------------------------------------------------------------------------------+

+--------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`attribute` |nbsp| :placeholder:`A` |nbsp| :diagtext:`ignored, because it cannot be applied to omitted return type`|
+--------------------------------------------------------------------------------------------------------------------------------------------------------+

+----------------------------------------------------------------------------------------------------------+---------------------------------------+
|:warning:`warning:` |nbsp| :placeholder:`A` |nbsp| :diagtext:`calling convention is not supported` |nbsp| |+-------------------------------------+|
|                                                                                                          ||:diagtext:`for this target`          ||
|                                                                                                          |+-------------------------------------+|
|                                                                                                          ||:diagtext:`on variadic function`     ||
|                                                                                                          |+-------------------------------------+|
|                                                                                                          ||:diagtext:`on constructor/destructor`||
|                                                                                                          |+-------------------------------------+|
|                                                                                                          ||:diagtext:`on builtin function`      ||
|                                                                                                          |+-------------------------------------+|
+----------------------------------------------------------------------------------------------------------+---------------------------------------+

+-------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`attribute` |nbsp| :placeholder:`A` |nbsp| :diagtext:`ignored, because it cannot be applied to a type`|
+-------------------------------------------------------------------------------------------------------------------------------------------+

+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`ignoring \_\_declspec(allocator) because the function return type` |nbsp| :placeholder:`A` |nbsp| :diagtext:`is not a pointer or reference type`|
+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+

+------------------------------------------------------------------------------------------------------------------------+-----------------------+----------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`attribute` |nbsp| :placeholder:`A` |nbsp| :diagtext:`is ignored, place it after "`|+---------------------+|:diagtext:`" to apply attribute to type declaration`|
|                                                                                                                        ||:diagtext:`class`    ||                                                    |
|                                                                                                                        |+---------------------+|                                                    |
|                                                                                                                        ||:diagtext:`struct`   ||                                                    |
|                                                                                                                        |+---------------------+|                                                    |
|                                                                                                                        ||:diagtext:`interface`||                                                    |
|                                                                                                                        |+---------------------+|                                                    |
|                                                                                                                        ||:diagtext:`union`    ||                                                    |
|                                                                                                                        |+---------------------+|                                                    |
|                                                                                                                        ||:diagtext:`enum`     ||                                                    |
|                                                                                                                        |+---------------------+|                                                    |
+------------------------------------------------------------------------------------------------------------------------+-----------------------+----------------------------------------------------+

+--------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`'deprecated' attribute on anonymous namespace ignored`|
+--------------------------------------------------------------------------------------------+

+----------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :placeholder:`A` |nbsp| :diagtext:`redeclared inline;` |nbsp| :placeholder:`B` |nbsp| :diagtext:`attribute ignored`|
+----------------------------------------------------------------------------------------------------------------------------------------------+

+----------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`attribute` |nbsp| :placeholder:`A` |nbsp| :diagtext:`is already applied with different parameters`|
+----------------------------------------------------------------------------------------------------------------------------------------+

+--------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`attribute` |nbsp| :placeholder:`A` |nbsp| :diagtext:`is already applied`|
+--------------------------------------------------------------------------------------------------------------+

+------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`Objective-C GC does not allow weak variables on the stack`|
+------------------------------------------------------------------------------------------------+

+-------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`'gnu\_inline' attribute requires function to be marked 'inline', attribute ignored`|
+-------------------------------------------------------------------------------------------------------------------------+

+---------------------------------------------------------------------------+------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`inheritance model ignored on` |nbsp| |+----------------------------------+|
|                                                                           ||:diagtext:`primary template`      ||
|                                                                           |+----------------------------------+|
|                                                                           ||:diagtext:`partial specialization`||
|                                                                           |+----------------------------------+|
+---------------------------------------------------------------------------+------------------------------------+

+------------------------------------------------------------------------------------------------------------------+-----------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`'objc\_externally\_retained' can only be applied to local variables` |nbsp| |+---------------------------------+|
|                                                                                                                  ||:diagtext:`of retainable type`   ||
|                                                                                                                  |+---------------------------------+|
|                                                                                                                  ||:diagtext:`with strong ownership`||
|                                                                                                                  |+---------------------------------+|
+------------------------------------------------------------------------------------------------------------------+-----------------------------------+

+--------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`'internal\_linkage' attribute on a non-static local variable is ignored`|
+--------------------------------------------------------------------------------------------------------------+

+---------------------------+--------------------+-------------------------------------------------------------------------------------+----------------------------------+
|:warning:`warning:` |nbsp| |+------------------+| |nbsp| :diagtext:`'interrupt' attribute only applies to functions that have` |nbsp| |+--------------------------------+|
|                           ||:diagtext:`MIPS`  ||                                                                                     ||:diagtext:`no parameters`       ||
|                           |+------------------+|                                                                                     |+--------------------------------+|
|                           ||:diagtext:`MSP430`||                                                                                     ||:diagtext:`a 'void' return type`||
|                           |+------------------+|                                                                                     |+--------------------------------+|
|                           ||:diagtext:`RISC-V`||                                                                                     |                                  |
|                           |+------------------+|                                                                                     |                                  |
+---------------------------+--------------------+-------------------------------------------------------------------------------------+----------------------------------+

+--------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`qualifiers after comma in declarator list are ignored`|
+--------------------------------------------------------------------------------------------+

+------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`'mig\_server\_routine' attribute only applies to routines that return a kern\_return\_t`|
+------------------------------------------------------------------------------------------------------------------------------+

+---------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`unknown attribute '`:placeholder:`A`:diagtext:`'`|
+---------------------------------------------------------------------------------------+

+-------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`'nocf\_check' attribute ignored; use -fcf-protection to enable the attribute`|
+-------------------------------------------------------------------------------------------------------------------+

+---------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`'noderef' can only be used on an array or pointer type`|
+---------------------------------------------------------------------------------------------+

+--------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`'nothrow' attribute conflicts with exception specification; attribute ignored`|
+--------------------------------------------------------------------------------------------------------------------+

+------------------------------------------------------------------------------------------------+---------------------------------------------------+------------------------------+
|:warning:`warning:` |nbsp| :placeholder:`A` |nbsp| :diagtext:`attribute only applies to` |nbsp| |+-------------------------------------------------+| |nbsp| :diagtext:`parameters`|
|                                                                                                ||:diagtext:`Objective-C object`                   ||                              |
|                                                                                                |+-------------------------------------------------+|                              |
|                                                                                                ||:diagtext:`pointer`                              ||                              |
|                                                                                                |+-------------------------------------------------+|                              |
|                                                                                                ||:diagtext:`pointer-to-CF-pointer`                ||                              |
|                                                                                                |+-------------------------------------------------+|                              |
|                                                                                                ||:diagtext:`pointer/reference-to-OSObject-pointer`||                              |
|                                                                                                |+-------------------------------------------------+|                              |
+------------------------------------------------------------------------------------------------+---------------------------------------------------+------------------------------+

+------------------------------------------------------------------------------------------------+------------------------+---------------------------------------+--------------------------------------+
|:warning:`warning:` |nbsp| :placeholder:`A` |nbsp| :diagtext:`attribute only applies to` |nbsp| |+----------------------+| |nbsp| :diagtext:`that return` |nbsp| |+------------------------------------+|
|                                                                                                ||:diagtext:`functions` ||                                       ||:diagtext:`an Objective-C object`   ||
|                                                                                                |+----------------------+|                                       |+------------------------------------+|
|                                                                                                ||:diagtext:`methods`   ||                                       ||:diagtext:`a pointer`               ||
|                                                                                                |+----------------------+|                                       |+------------------------------------+|
|                                                                                                ||:diagtext:`properties`||                                       ||:diagtext:`a non-retainable pointer`||
|                                                                                                |+----------------------+|                                       |+------------------------------------+|
+------------------------------------------------------------------------------------------------+------------------------+---------------------------------------+--------------------------------------+

+--------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :placeholder:`A` |nbsp| :diagtext:`attribute is deprecated and ignored in OpenCL version` |nbsp| :placeholder:`B`|
+--------------------------------------------------------------------------------------------------------------------------------------------+

+----------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`repeated RISC-V 'interrupt' attribute`|
+----------------------------------------------------------------------------+

+---------------------------+-----------------------+---------------------------------------------------------------------------------------------------------------------------------------------+-----------------------+-------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| |+---------------------+| |nbsp| :diagtext:`of field` |nbsp| :placeholder:`B` |nbsp| :diagtext:`(`:placeholder:`C` |nbsp| :diagtext:`bits) does not match the` |nbsp| |+---------------------+| |nbsp| :diagtext:`of the first field in transparent union; transparent\_union attribute ignored`|
|                           ||:diagtext:`alignment`||                                                                                                                                             ||:diagtext:`alignment`||                                                                                                 |
|                           |+---------------------+|                                                                                                                                             |+---------------------+|                                                                                                 |
|                           ||:diagtext:`size`     ||                                                                                                                                             ||:diagtext:`size`     ||                                                                                                 |
|                           |+---------------------+|                                                                                                                                             |+---------------------+|                                                                                                 |
+---------------------------+-----------------------+---------------------------------------------------------------------------------------------------------------------------------------------+-----------------------+-------------------------------------------------------------------------------------------------+

+---------------------------------------------------------------------------------------------+----------------------------+--------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`first field of a transparent union cannot have` |nbsp| |+--------------------------+| |nbsp| :diagtext:`type` |nbsp| :placeholder:`B`:diagtext:`; transparent\_union attribute ignored`|
|                                                                                             ||:diagtext:`floating point`||                                                                                                  |
|                                                                                             |+--------------------------+|                                                                                                  |
|                                                                                             ||:diagtext:`vector`        ||                                                                                                  |
|                                                                                             |+--------------------------+|                                                                                                  |
+---------------------------------------------------------------------------------------------+----------------------------+--------------------------------------------------------------------------------------------------+

+--------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`transparent\_union attribute can only be applied to a union definition; attribute ignored`|
+--------------------------------------------------------------------------------------------------------------------------------+

+-----------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`transparent union definition must contain at least one field; transparent\_union attribute ignored`|
+-----------------------------------------------------------------------------------------------------------------------------------------+

+---------------------------------------------------------------------------------------------+-------------------------------------------------+---------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`'`:placeholder:`A`:diagtext:`' only applies to` |nbsp| |+-----------------------------------------------+| |nbsp| :diagtext:`types; type here is` |nbsp| :placeholder:`C`|
|                                                                                             ||:diagtext:`function`                           ||                                                               |
|                                                                                             |+-----------------------------------------------+|                                                               |
|                                                                                             ||:diagtext:`pointer`                            ||                                                               |
|                                                                                             |+-----------------------------------------------+|                                                               |
|                                                                                             ||:diagtext:`Objective-C object or block pointer`||                                                               |
|                                                                                             |+-----------------------------------------------+|                                                               |
+---------------------------------------------------------------------------------------------+-------------------------------------------------+---------------------------------------------------------------+

+-------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`\_\_declspec attribute` |nbsp| :placeholder:`A` |nbsp| :diagtext:`is not supported`|
+-------------------------------------------------------------------------------------------------------------------------+

+---------------------------+-------------------------+----------------------------------+---------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| |+-----------------------+|+--------------------------------+| |nbsp| :diagtext:`'`:placeholder:`C`:diagtext:`' in the 'target' attribute string; 'target' attribute ignored`|
|                           ||:diagtext:`unsupported`|||                                ||                                                                                                               |
|                           |+-----------------------+|+--------------------------------+|                                                                                                               |
|                           ||:diagtext:`duplicate`  ||| |nbsp| :diagtext:`architecture`||                                                                                                               |
|                           |+-----------------------+|+--------------------------------+|                                                                                                               |
+---------------------------+-------------------------+----------------------------------+---------------------------------------------------------------------------------------------------------------+

+----------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`'\_\_clang\_\_' is a predefined macro name, not an attribute scope specifier; did you mean '\_Clang' instead?`|
+----------------------------------------------------------------------------------------------------------------------------------------------------+


-Wignored-optimization-argument
-------------------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+--------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`optimization flag '`:placeholder:`A`:diagtext:`' is not supported for target '`:placeholder:`B`:diagtext:`'`|
+--------------------------------------------------------------------------------------------------------------------------------------------------+

+--------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`optimization flag '`:placeholder:`A`:diagtext:`' is not supported`|
+--------------------------------------------------------------------------------------------------------+


-Wignored-pragma-intrinsic
--------------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+------------------------------------------------------------------------------------------+------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :placeholder:`A` |nbsp| :diagtext:`is not a recognized builtin`|+----------------------------------------------------------------------------+|
|                                                                                          ||                                                                            ||
|                                                                                          |+----------------------------------------------------------------------------+|
|                                                                                          ||:diagtext:`; consider including <intrin.h> to access non-builtin intrinsics`||
|                                                                                          |+----------------------------------------------------------------------------+|
+------------------------------------------------------------------------------------------+------------------------------------------------------------------------------+


-Wignored-pragma-optimize
-------------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+--------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`'#pragma optimize' is not supported`|
+--------------------------------------------------------------------------+


-Wignored-pragmas
-----------------
This diagnostic is enabled by default.

Also controls `-Wignored-pragma-intrinsic`_, `-Wignored-pragma-optimize`_.

**Diagnostic text:**

+------------------------------------------------------------------------------+---------------------------+-----------------------+
|:warning:`warning:` |nbsp| :diagtext:`expected '=' following '#pragma` |nbsp| |+-------------------------+|:diagtext:`' - ignored`|
|                                                                              ||:diagtext:`align`        ||                       |
|                                                                              |+-------------------------+|                       |
|                                                                              ||:diagtext:`options align`||                       |
|                                                                              |+-------------------------+|                       |
+------------------------------------------------------------------------------+---------------------------+-----------------------+

+-----------------------------------------------------------------------------------+---------------------------+-----------------------+
|:warning:`warning:` |nbsp| :diagtext:`invalid alignment option in '#pragma` |nbsp| |+-------------------------+|:diagtext:`' - ignored`|
|                                                                                   ||:diagtext:`align`        ||                       |
|                                                                                   |+-------------------------+|                       |
|                                                                                   ||:diagtext:`options align`||                       |
|                                                                                   |+-------------------------+|                       |
+-----------------------------------------------------------------------------------+---------------------------+-----------------------+

+-----------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`OpenCL extension end directive mismatches begin directive - ignoring`|
+-----------------------------------------------------------------------------------------------------------+

+----------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`'#pragma comment` |nbsp| :placeholder:`A`:diagtext:`' ignored`|
+----------------------------------------------------------------------------------------------------+

+-------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`missing argument to debug command '`:placeholder:`A`:diagtext:`'`|
+-------------------------------------------------------------------------------------------------------+

+----------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`unexpected debug command '`:placeholder:`A`:diagtext:`'`|
+----------------------------------------------------------------------------------------------+

+------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`unknown module '`:placeholder:`A`:diagtext:`'`|
+------------------------------------------------------------------------------------+

+------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`expected action or ')' in '#pragma` |nbsp| :placeholder:`A`:diagtext:`' - ignored`|
+------------------------------------------------------------------------------------------------------------------------+

+--------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`missing ':' after` |nbsp| :placeholder:`A` |nbsp| :diagtext:`- ignoring`|
+--------------------------------------------------------------------------------------------------------------+

+---------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`missing ':' or ')' after` |nbsp| :placeholder:`A` |nbsp| :diagtext:`- ignoring`|
+---------------------------------------------------------------------------------------------------------------------+

+----------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`expected ',' in '#pragma` |nbsp| :placeholder:`A`:diagtext:`'`|
+----------------------------------------------------------------------------------------------------+

+---------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`expected identifier in '#pragma` |nbsp| :placeholder:`A`:diagtext:`' - ignored`|
+---------------------------------------------------------------------------------------------------------------------+

+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`expected 'compiler', 'lib', 'user', or a string literal for the section name in '#pragma` |nbsp| :placeholder:`A`:diagtext:`' - ignored`|
+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+

+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`expected integer between` |nbsp| :placeholder:`A` |nbsp| :diagtext:`and` |nbsp| :placeholder:`B` |nbsp| :diagtext:`inclusive in '#pragma` |nbsp| :placeholder:`C`:diagtext:`' - ignored`|
+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+

+-----------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`missing '(' after '#pragma` |nbsp| :placeholder:`A`:diagtext:`' - ignoring`|
+-----------------------------------------------------------------------------------------------------------------+

+------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`expected non-wide string literal in '#pragma` |nbsp| :placeholder:`A`:diagtext:`'`|
+------------------------------------------------------------------------------------------------------------------------+

+-------------------------------------------------------+---------------------------------------------------+------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`expected` |nbsp| |+-------------------------------------------------+| |nbsp| :diagtext:`- ignoring`|
|                                                       ||:diagtext:`'enable', 'disable', 'begin' or 'end'`||                              |
|                                                       |+-------------------------------------------------+|                              |
|                                                       ||:diagtext:`'disable'`                            ||                              |
|                                                       |+-------------------------------------------------+|                              |
+-------------------------------------------------------+---------------------------------------------------+------------------------------+

+-----------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`expected ')' or ',' in '#pragma` |nbsp| :placeholder:`A`:diagtext:`'`|
+-----------------------------------------------------------------------------------------------------------+

+-----------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`missing ')' after '#pragma` |nbsp| :placeholder:`A`:diagtext:`' - ignoring`|
+-----------------------------------------------------------------------------------------------------------------+

+-----------------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`expected a stack label or a string literal for the section name in '#pragma` |nbsp| :placeholder:`A`:diagtext:`' - ignored`|
+-----------------------------------------------------------------------------------------------------------------------------------------------------------------+

+------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`expected a string literal for the section name in '#pragma` |nbsp| :placeholder:`A`:diagtext:`' - ignored`|
+------------------------------------------------------------------------------------------------------------------------------------------------+

+-------------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`expected push, pop or a string literal for the section name in '#pragma` |nbsp| :placeholder:`A`:diagtext:`' - ignored`|
+-------------------------------------------------------------------------------------------------------------------------------------------------------------+

+--------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`expected string literal in '#pragma` |nbsp| :placeholder:`A`:diagtext:`' - ignoring`|
+--------------------------------------------------------------------------------------------------------------------------+

+---------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`extra tokens at end of '#pragma` |nbsp| :placeholder:`A`:diagtext:`' - ignored`|
+---------------------------------------------------------------------------------------------------------------------+

+----------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`incorrect use of #pragma clang force\_cuda\_host\_device begin\|end`|
+----------------------------------------------------------------------------------------------------------+

+-------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`'#pragma init\_seg' is only supported when targeting a Microsoft environment`|
+-------------------------------------------------------------------------------------------------------------------+

+-----------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`unknown action for '#pragma` |nbsp| :placeholder:`A`:diagtext:`' - ignored`|
+-----------------------------------------------------------------------------------------------------------------+

+------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`unexpected argument '`:placeholder:`A`:diagtext:`' to '#pragma` |nbsp| :placeholder:`B`:diagtext:`'`|+------------------------------------------------+|
|                                                                                                                                          ||                                                ||
|                                                                                                                                          |+------------------------------------------------+|
|                                                                                                                                          ||+----------------------------------------------+||
|                                                                                                                                          |||:diagtext:`; expected` |nbsp| :placeholder:`D`|||
|                                                                                                                                          ||+----------------------------------------------+||
|                                                                                                                                          |+------------------------------------------------+|
+------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------+

+------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`unknown action '`:placeholder:`B`:diagtext:`' for '#pragma` |nbsp| :placeholder:`A`:diagtext:`' - ignored`|
+------------------------------------------------------------------------------------------------------------------------------------------------+

+--------------------------------------------------------------------------------------------------------+--------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`missing argument to '#pragma` |nbsp| :placeholder:`A`:diagtext:`'`|+------------------------------------------------+|
|                                                                                                        ||                                                ||
|                                                                                                        |+------------------------------------------------+|
|                                                                                                        ||+----------------------------------------------+||
|                                                                                                        |||:diagtext:`; expected` |nbsp| :placeholder:`C`|||
|                                                                                                        ||+----------------------------------------------+||
|                                                                                                        |+------------------------------------------------+|
+--------------------------------------------------------------------------------------------------------+--------------------------------------------------+

+----------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`incorrect use of '#pragma ms\_struct on\|off' - ignored`|
+----------------------------------------------------------------------------------------------+

+--------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`#pragma options align=reset failed:` |nbsp| :placeholder:`A`|
+--------------------------------------------------------------------------------------------------+

+---------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`expected 'align' following '#pragma options' - ignored`|
+---------------------------------------------------------------------------------------------+

+--------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`expected #pragma pack parameter to be '1', '2', '4', '8', or '16'`|
+--------------------------------------------------------------------------------------------------------+

+-------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`expected integer or identifier in '#pragma pack' - ignored`|
+-------------------------------------------------------------------------------------------------+

+----------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`#pragma` |nbsp| :placeholder:`A`:diagtext:`(pop, ...) failed:` |nbsp| :placeholder:`B`|
+----------------------------------------------------------------------------------------------------------------------------+

+------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`pragma pop\_macro could not pop '`:placeholder:`A`:diagtext:`', no matching push\_macro`|
+------------------------------------------------------------------------------------------------------------------------------+

+---------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`unknown OpenCL extension` |nbsp| :placeholder:`A` |nbsp| :diagtext:`- ignoring`|
+---------------------------------------------------------------------------------------------------------------------+

+--------------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`known but unsupported action '`:placeholder:`B`:diagtext:`' for '#pragma` |nbsp| :placeholder:`A`:diagtext:`' - ignored`|
+--------------------------------------------------------------------------------------------------------------------------------------------------------------+

+-------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`unsupported OpenCL extension` |nbsp| :placeholder:`A` |nbsp| :diagtext:`- ignoring`|
+-------------------------------------------------------------------------------------------------------------------------+

+-----------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`expected '#pragma unused' argument to be a variable name`|
+-----------------------------------------------------------------------------------------------+

+------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`only variables can be arguments to '#pragma unused'`|
+------------------------------------------------------------------------------------------+

+----------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`undeclared variable` |nbsp| :placeholder:`A` |nbsp| :diagtext:`used as an argument for '#pragma unused'`|
+----------------------------------------------------------------------------------------------------------------------------------------------+


-Wignored-qualifiers
--------------------
Some of the diagnostics controlled by this flag are enabled by default.

**Diagnostic text:**

+--------------------------------------------------+------------------------------------+----------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`ARC` |nbsp| |+----------------------------------+| |nbsp| :diagtext:`lifetime qualifier on return type is ignored`|
|                                                  ||:diagtext:`unused`                ||                                                                |
|                                                  |+----------------------------------+|                                                                |
|                                                  ||:diagtext:`\_\_unsafe\_unretained`||                                                                |
|                                                  |+----------------------------------+|                                                                |
|                                                  ||:diagtext:`\_\_strong`            ||                                                                |
|                                                  |+----------------------------------+|                                                                |
|                                                  ||:diagtext:`\_\_weak`              ||                                                                |
|                                                  |+----------------------------------+|                                                                |
|                                                  ||:diagtext:`\_\_autoreleasing`     ||                                                                |
|                                                  |+----------------------------------+|                                                                |
+--------------------------------------------------+------------------------------------+----------------------------------------------------------------+

+---------------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`'`:placeholder:`A`:diagtext:`' qualifier on omitted return type` |nbsp| :placeholder:`B` |nbsp| :diagtext:`has no effect`|
+---------------------------------------------------------------------------------------------------------------------------------------------------------------+

+------------------------------------------------------------------------------------+---------------+------------------------------------------+------------------+-----------------------------+
|:warning:`warning:` |nbsp| :diagtext:`'`:placeholder:`A`:diagtext:`' type qualifier`|+-------------+| |nbsp| :diagtext:`on return type` |nbsp| |+----------------+| |nbsp| :diagtext:`no effect`|
|                                                                                    ||             ||                                          ||:diagtext:`has` ||                             |
|                                                                                    |+-------------+|                                          |+----------------+|                             |
|                                                                                    ||:diagtext:`s`||                                          ||:diagtext:`have`||                             |
|                                                                                    |+-------------+|                                          |+----------------+|                             |
+------------------------------------------------------------------------------------+---------------+------------------------------------------+------------------+-----------------------------+

+---------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`'`:placeholder:`A`:diagtext:`' qualifier on function type` |nbsp| :placeholder:`B` |nbsp| :diagtext:`has no effect`|
+---------------------------------------------------------------------------------------------------------------------------------------------------------+

+----------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`'`:placeholder:`A`:diagtext:`' qualifier on reference type` |nbsp| :placeholder:`B` |nbsp| :diagtext:`has no effect`|
+----------------------------------------------------------------------------------------------------------------------------------------------------------+


-Wimplicit
----------
Some of the diagnostics controlled by this flag are enabled by default.

Controls `-Wimplicit-function-declaration`_, `-Wimplicit-int`_.


-Wimplicit-atomic-properties
----------------------------
**Diagnostic text:**

+-----------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`property is assumed atomic when auto-synthesizing the property`|
+-----------------------------------------------------------------------------------------------------+

+----------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`property is assumed atomic by default`|
+----------------------------------------------------------------------------+


-Wimplicit-conversion-floating-point-to-bool
--------------------------------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`implicit conversion turns floating-point number into bool:` |nbsp| :placeholder:`A` |nbsp| :diagtext:`to` |nbsp| :placeholder:`B`|
+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------+


-Wimplicit-exception-spec-mismatch
----------------------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+-----------------------------------------------------------------------------------+----------------------+----------------------------------------------------------------------+----------------------+-------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`function previously declared with an` |nbsp| |+--------------------+| |nbsp| :diagtext:`exception specification redeclared with an` |nbsp| |+--------------------+| |nbsp| :diagtext:`exception specification`|
|                                                                                   ||:diagtext:`explicit`||                                                                      ||:diagtext:`implicit`||                                           |
|                                                                                   |+--------------------+|                                                                      |+--------------------+|                                           |
|                                                                                   ||:diagtext:`implicit`||                                                                      ||:diagtext:`explicit`||                                           |
|                                                                                   |+--------------------+|                                                                      |+--------------------+|                                           |
+-----------------------------------------------------------------------------------+----------------------+----------------------------------------------------------------------+----------------------+-------------------------------------------+


-Wimplicit-fallthrough
----------------------
Also controls `-Wimplicit-fallthrough-per-function`_.

**Diagnostic text:**

+---------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`fallthrough annotation in unreachable code`|
+---------------------------------------------------------------------------------+

+-------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`unannotated fall-through between switch labels`|
+-------------------------------------------------------------------------------------+


-Wimplicit-fallthrough-per-function
-----------------------------------
**Diagnostic text:**

+------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`unannotated fall-through between switch labels in partly-annotated function`|
+------------------------------------------------------------------------------------------------------------------+


-Wimplicit-fixed-point-conversion
---------------------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`implicit conversion from` |nbsp| :placeholder:`A` |nbsp| :diagtext:`cannot fit within the range of values for` |nbsp| :placeholder:`B`|
+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------+


-Wimplicit-float-conversion
---------------------------
**Diagnostic text:**

+----------------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`implicit conversion loses floating-point precision:` |nbsp| :placeholder:`A` |nbsp| :diagtext:`to` |nbsp| :placeholder:`B`|
+----------------------------------------------------------------------------------------------------------------------------------------------------------------+

+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`implicit conversion when assigning computation result loses floating-point precision:` |nbsp| :placeholder:`A` |nbsp| :diagtext:`to` |nbsp| :placeholder:`B`|
+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+


-Wimplicit-function-declaration
-------------------------------
Some of the diagnostics controlled by this flag are enabled by default.

**Diagnostic text:**

+------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`implicit declaration of function` |nbsp| :placeholder:`A` |nbsp| :diagtext:`is invalid in C99`|
+------------------------------------------------------------------------------------------------------------------------------------+

+---------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`implicitly declaring library function '`:placeholder:`A`:diagtext:`' with type` |nbsp| :placeholder:`B`|
+---------------------------------------------------------------------------------------------------------------------------------------------+

+---------------------------------------------------------------------------------+
|:error:`error:` |nbsp| :diagtext:`use of unknown builtin` |nbsp| :placeholder:`A`|
+---------------------------------------------------------------------------------+

+-----------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`implicit declaration of function` |nbsp| :placeholder:`A`|
+-----------------------------------------------------------------------------------------------+


-Wimplicit-int
--------------
This diagnostic is enabled by default.

**Diagnostic text:**

+--------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`type specifier missing, defaults to 'int'`|
+--------------------------------------------------------------------------------+


-Wimplicit-int-conversion
-------------------------
**Diagnostic text:**

+---------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`higher order bits are zeroes after implicit conversion`|
+---------------------------------------------------------------------------------------------+

+---------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`implicit conversion loses integer precision:` |nbsp| :placeholder:`A` |nbsp| :diagtext:`to` |nbsp| :placeholder:`B`|
+---------------------------------------------------------------------------------------------------------------------------------------------------------+


-Wimplicit-retain-self
----------------------
**Diagnostic text:**

+---------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`block implicitly retains 'self'; explicitly mention 'self' to indicate this is intended behavior`|
+---------------------------------------------------------------------------------------------------------------------------------------+


-Wimplicitly-unsigned-literal
-----------------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+----------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`integer literal is too large to be represented in a signed integer type, interpreting as unsigned`|
+----------------------------------------------------------------------------------------------------------------------------------------+


-Wimport
--------
This diagnostic flag exists for GCC compatibility, and has no effect in Clang.

-Wimport-preprocessor-directive-pedantic
----------------------------------------
**Diagnostic text:**

+----------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`#import is a language extension`|
+----------------------------------------------------------------------+


-Winaccessible-base
-------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+-----------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`direct base` |nbsp| :placeholder:`A` |nbsp| :diagtext:`is inaccessible due to ambiguity:`:placeholder:`B`|
+-----------------------------------------------------------------------------------------------------------------------------------------------+


-Winclude-next-absolute-path
----------------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+---------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`#include\_next in file found relative to primary source file or found by absolute path; will search from start of include path`|
+---------------------------------------------------------------------------------------------------------------------------------------------------------------------+


-Winclude-next-outside-header
-----------------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+--------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`#include\_next in primary source file; will search from start of include path`|
+--------------------------------------------------------------------------------------------------------------------+


-Wincompatible-exception-spec
-----------------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+--------------------------------------------------------------------------+----------------------+--------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`exception specifications of` |nbsp| |+--------------------+| |nbsp| :diagtext:`types differ`|
|                                                                          ||:diagtext:`return`  ||                                |
|                                                                          |+--------------------+|                                |
|                                                                          ||:diagtext:`argument`||                                |
|                                                                          |+--------------------+|                                |
+--------------------------------------------------------------------------+----------------------+--------------------------------+

+-----------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`target exception specification is not superset of source`|
+-----------------------------------------------------------------------------------------------+


-Wincompatible-function-pointer-types
-------------------------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+----------------------------------------------------------------------------------+----------------------------------------------------------------+---------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`incompatible function pointer types` |nbsp| |+--------------------------------------------------------------+|+-------------------------------------+|
|                                                                                  ||:diagtext:`assigning to different types`                      |||                                     ||
|                                                                                  |+--------------------------------------------------------------+|+-------------------------------------+|
|                                                                                  ||:diagtext:`passing to parameter of different type`            |||:diagtext:`; dereference with \*`    ||
|                                                                                  |+--------------------------------------------------------------+|+-------------------------------------+|
|                                                                                  ||:diagtext:`returning from function with different return type`|||:diagtext:`; take the address with &`||
|                                                                                  |+--------------------------------------------------------------+|+-------------------------------------+|
|                                                                                  ||:diagtext:`converting between types`                          |||:diagtext:`; remove \*`              ||
|                                                                                  |+--------------------------------------------------------------+|+-------------------------------------+|
|                                                                                  ||:diagtext:`initializing with expression of different type`    |||:diagtext:`; remove &`               ||
|                                                                                  |+--------------------------------------------------------------+|+-------------------------------------+|
|                                                                                  ||:diagtext:`sending to parameter of different type`            ||                                       |
|                                                                                  |+--------------------------------------------------------------+|                                       |
|                                                                                  ||:diagtext:`casting between types`                             ||                                       |
|                                                                                  |+--------------------------------------------------------------+|                                       |
+----------------------------------------------------------------------------------+----------------------------------------------------------------+---------------------------------------+


-Wincompatible-library-redeclaration
------------------------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+-------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`incompatible redeclaration of library function` |nbsp| :placeholder:`A`|
+-------------------------------------------------------------------------------------------------------------+


-Wincompatible-ms-struct
------------------------
This diagnostic is an error by default, but the flag ``-Wno-incompatible-ms-struct`` can be used to disable the error.

**Diagnostic text:**

+---------------------------------------------------------------------------------------------------------------------------------------------+
|:error:`error:` |nbsp| :diagtext:`ms\_struct may not produce Microsoft-compatible layouts for classes with base classes or virtual functions`|
+---------------------------------------------------------------------------------------------------------------------------------------------+

+------------------------------------------------------------------------------------------------------------------------------------------------------------+
|:error:`error:` |nbsp| :diagtext:`ms\_struct may not produce Microsoft-compatible layouts with fundamental data types with sizes that aren't a power of two`|
+------------------------------------------------------------------------------------------------------------------------------------------------------------+


-Wincompatible-pointer-types
----------------------------
This diagnostic is enabled by default.

Also controls `-Wincompatible-function-pointer-types`_, `-Wincompatible-pointer-types-discards-qualifiers`_.

**Diagnostic text:**

+-------------------------------------------------------------------------+----------------------------------------------------------------+---------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`incompatible pointer types` |nbsp| |+--------------------------------------------------------------+|+-------------------------------------+|
|                                                                         ||:diagtext:`assigning to different types`                      |||                                     ||
|                                                                         |+--------------------------------------------------------------+|+-------------------------------------+|
|                                                                         ||:diagtext:`passing to parameter of different type`            |||:diagtext:`; dereference with \*`    ||
|                                                                         |+--------------------------------------------------------------+|+-------------------------------------+|
|                                                                         ||:diagtext:`returning from function with different return type`|||:diagtext:`; take the address with &`||
|                                                                         |+--------------------------------------------------------------+|+-------------------------------------+|
|                                                                         ||:diagtext:`converting between types`                          |||:diagtext:`; remove \*`              ||
|                                                                         |+--------------------------------------------------------------+|+-------------------------------------+|
|                                                                         ||:diagtext:`initializing with expression of different type`    |||:diagtext:`; remove &`               ||
|                                                                         |+--------------------------------------------------------------+|+-------------------------------------+|
|                                                                         ||:diagtext:`sending to parameter of different type`            ||                                       |
|                                                                         |+--------------------------------------------------------------+|                                       |
|                                                                         ||:diagtext:`casting between types`                             ||                                       |
|                                                                         |+--------------------------------------------------------------+|                                       |
+-------------------------------------------------------------------------+----------------------------------------------------------------+---------------------------------------+


-Wincompatible-pointer-types-discards-qualifiers
------------------------------------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+---------------------------+----------------------------------------------------------------+---------------------------------------------------------------+
|:warning:`warning:` |nbsp| |+--------------------------------------------------------------+| |nbsp| :diagtext:`discards qualifiers in nested pointer types`|
|                           ||:diagtext:`assigning to different types`                      ||                                                               |
|                           |+--------------------------------------------------------------+|                                                               |
|                           ||:diagtext:`passing to parameter of different type`            ||                                                               |
|                           |+--------------------------------------------------------------+|                                                               |
|                           ||:diagtext:`returning from function with different return type`||                                                               |
|                           |+--------------------------------------------------------------+|                                                               |
|                           ||:diagtext:`converting between types`                          ||                                                               |
|                           |+--------------------------------------------------------------+|                                                               |
|                           ||:diagtext:`initializing with expression of different type`    ||                                                               |
|                           |+--------------------------------------------------------------+|                                                               |
|                           ||:diagtext:`sending to parameter of different type`            ||                                                               |
|                           |+--------------------------------------------------------------+|                                                               |
|                           ||:diagtext:`casting between types`                             ||                                                               |
|                           |+--------------------------------------------------------------+|                                                               |
+---------------------------+----------------------------------------------------------------+---------------------------------------------------------------+

+---------------------------+----------------------------------------------------------------+---------------------------------------+
|:warning:`warning:` |nbsp| |+--------------------------------------------------------------+| |nbsp| :diagtext:`discards qualifiers`|
|                           ||:diagtext:`assigning to different types`                      ||                                       |
|                           |+--------------------------------------------------------------+|                                       |
|                           ||:diagtext:`passing to parameter of different type`            ||                                       |
|                           |+--------------------------------------------------------------+|                                       |
|                           ||:diagtext:`returning from function with different return type`||                                       |
|                           |+--------------------------------------------------------------+|                                       |
|                           ||:diagtext:`converting between types`                          ||                                       |
|                           |+--------------------------------------------------------------+|                                       |
|                           ||:diagtext:`initializing with expression of different type`    ||                                       |
|                           |+--------------------------------------------------------------+|                                       |
|                           ||:diagtext:`sending to parameter of different type`            ||                                       |
|                           |+--------------------------------------------------------------+|                                       |
|                           ||:diagtext:`casting between types`                             ||                                       |
|                           |+--------------------------------------------------------------+|                                       |
+---------------------------+----------------------------------------------------------------+---------------------------------------+


-Wincompatible-property-type
----------------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`property type` |nbsp| :placeholder:`A` |nbsp| :diagtext:`is incompatible with type` |nbsp| :placeholder:`B` |nbsp| :diagtext:`inherited from` |nbsp| :placeholder:`C`|
+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+


-Wincompatible-sysroot
----------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`using sysroot for '`:placeholder:`A`:diagtext:`' but targeting '`:placeholder:`B`:diagtext:`'`|
+------------------------------------------------------------------------------------------------------------------------------------+


-Wincomplete-framework-module-declaration
-----------------------------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`skipping '`:placeholder:`A`:diagtext:`' because module declaration of '`:placeholder:`B`:diagtext:`' lacks the 'framework' qualifier`|
+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------+


-Wincomplete-implementation
---------------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+-----------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`method definition for` |nbsp| :placeholder:`A` |nbsp| :diagtext:`not found`|
+-----------------------------------------------------------------------------------------------------------------+


-Wincomplete-module
-------------------
Some of the diagnostics controlled by this flag are enabled by default.

Controls `-Wincomplete-umbrella`_, `-Wnon-modular-include-in-module`_.


-Wincomplete-setjmp-declaration
-------------------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`declaration of built-in function '`:placeholder:`A`:diagtext:`' requires the declaration of the 'jmp\_buf' type, commonly provided in the header <setjmp.h>.`|
+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+


-Wincomplete-umbrella
---------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+---------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`missing submodule '`:placeholder:`A`:diagtext:`'`|
+---------------------------------------------------------------------------------------+

+--------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`umbrella directory '`:placeholder:`A`:diagtext:`' not found`|
+--------------------------------------------------------------------------------------------------+

+-------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`umbrella header for module '`:placeholder:`A`:diagtext:`' does not include header '`:placeholder:`B`:diagtext:`'`|
+-------------------------------------------------------------------------------------------------------------------------------------------------------+


-Winconsistent-dllimport
------------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :placeholder:`A` |nbsp| :diagtext:`redeclared without` |nbsp| :placeholder:`B` |nbsp| :diagtext:`attribute: previous` |nbsp| :placeholder:`B` |nbsp| :diagtext:`ignored`|
+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+

+------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :placeholder:`A` |nbsp| :diagtext:`redeclared without 'dllimport' attribute: 'dllexport' attribute added`|
+------------------------------------------------------------------------------------------------------------------------------------+


-Winconsistent-missing-destructor-override
------------------------------------------
**Diagnostic text:**

+------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :placeholder:`A` |nbsp| :diagtext:`overrides a destructor but is not marked 'override'`|
+------------------------------------------------------------------------------------------------------------------+


-Winconsistent-missing-override
-------------------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+-----------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :placeholder:`A` |nbsp| :diagtext:`overrides a member function but is not marked 'override'`|
+-----------------------------------------------------------------------------------------------------------------------+


-Wincrement-bool
----------------
This diagnostic is enabled by default.

Also controls `-Wdeprecated-increment-bool`_.

**Diagnostic text:**

+------------------------------------------------------------------------------------------------+
|:error:`error:` |nbsp| :diagtext:`ISO C++17 does not allow incrementing expression of type bool`|
+------------------------------------------------------------------------------------------------+


-Winfinite-recursion
--------------------
**Diagnostic text:**

+---------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`all paths through this function will call itself`|
+---------------------------------------------------------------------------------------+


-Winit-self
-----------
This diagnostic flag exists for GCC compatibility, and has no effect in Clang.

-Winitializer-overrides
-----------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+---------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`initializer overrides prior initialization of this subobject`|
+---------------------------------------------------------------------------------------------------+

+---------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`subobject initialization overrides initialization of other fields within its enclosing subobject`|
+---------------------------------------------------------------------------------------------------------------------------------------+


-Winjected-class-name
---------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------+---------------------------+--------------------------------------------------------------+------------------------+---------------------------+
|:warning:`warning:` |nbsp| :diagtext:`ISO C++ specifies that qualified reference to` |nbsp| :placeholder:`A` |nbsp| :diagtext:`is a constructor name rather than a` |nbsp| |+-------------------------+| |nbsp| :diagtext:`in this context, despite preceding` |nbsp| |+----------------------+| |nbsp| :diagtext:`keyword`|
|                                                                                                                                                                           ||:diagtext:`template name`||                                                              ||:diagtext:`'typename'`||                           |
|                                                                                                                                                                           |+-------------------------+|                                                              |+----------------------+|                           |
|                                                                                                                                                                           ||:diagtext:`type`         ||                                                              ||:diagtext:`'template'`||                           |
|                                                                                                                                                                           |+-------------------------+|                                                              |+----------------------+|                           |
+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------+---------------------------+--------------------------------------------------------------+------------------------+---------------------------+


-Winline
--------
This diagnostic flag exists for GCC compatibility, and has no effect in Clang.

-Winline-asm
------------
This diagnostic is enabled by default.

**Diagnostic text:**

The text of this diagnostic is not controlled by Clang.


-Winline-new-delete
-------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+----------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`replacement function` |nbsp| :placeholder:`A` |nbsp| :diagtext:`cannot be declared 'inline'`|
+----------------------------------------------------------------------------------------------------------------------------------+


-Winstantiation-after-specialization
------------------------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+----------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`explicit instantiation of` |nbsp| :placeholder:`A` |nbsp| :diagtext:`that occurs after an explicit specialization has no effect`|
+----------------------------------------------------------------------------------------------------------------------------------------------------------------------+


-Wint-conversion
----------------
This diagnostic is enabled by default.

**Diagnostic text:**

+-----------------------------------------------------------------------------------------+----------------------------------------------------------------+---------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`incompatible integer to pointer conversion` |nbsp| |+--------------------------------------------------------------+|+-------------------------------------+|
|                                                                                         ||:diagtext:`assigning to different types`                      |||                                     ||
|                                                                                         |+--------------------------------------------------------------+|+-------------------------------------+|
|                                                                                         ||:diagtext:`passing to parameter of different type`            |||:diagtext:`; dereference with \*`    ||
|                                                                                         |+--------------------------------------------------------------+|+-------------------------------------+|
|                                                                                         ||:diagtext:`returning from function with different return type`|||:diagtext:`; take the address with &`||
|                                                                                         |+--------------------------------------------------------------+|+-------------------------------------+|
|                                                                                         ||:diagtext:`converting between types`                          |||:diagtext:`; remove \*`              ||
|                                                                                         |+--------------------------------------------------------------+|+-------------------------------------+|
|                                                                                         ||:diagtext:`initializing with expression of different type`    |||:diagtext:`; remove &`               ||
|                                                                                         |+--------------------------------------------------------------+|+-------------------------------------+|
|                                                                                         ||:diagtext:`sending to parameter of different type`            ||                                       |
|                                                                                         |+--------------------------------------------------------------+|                                       |
|                                                                                         ||:diagtext:`casting between types`                             ||                                       |
|                                                                                         |+--------------------------------------------------------------+|                                       |
+-----------------------------------------------------------------------------------------+----------------------------------------------------------------+---------------------------------------+

+-----------------------------------------------------------------------------------------+----------------------------------------------------------------+---------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`incompatible pointer to integer conversion` |nbsp| |+--------------------------------------------------------------+|+-------------------------------------+|
|                                                                                         ||:diagtext:`assigning to different types`                      |||                                     ||
|                                                                                         |+--------------------------------------------------------------+|+-------------------------------------+|
|                                                                                         ||:diagtext:`passing to parameter of different type`            |||:diagtext:`; dereference with \*`    ||
|                                                                                         |+--------------------------------------------------------------+|+-------------------------------------+|
|                                                                                         ||:diagtext:`returning from function with different return type`|||:diagtext:`; take the address with &`||
|                                                                                         |+--------------------------------------------------------------+|+-------------------------------------+|
|                                                                                         ||:diagtext:`converting between types`                          |||:diagtext:`; remove \*`              ||
|                                                                                         |+--------------------------------------------------------------+|+-------------------------------------+|
|                                                                                         ||:diagtext:`initializing with expression of different type`    |||:diagtext:`; remove &`               ||
|                                                                                         |+--------------------------------------------------------------+|+-------------------------------------+|
|                                                                                         ||:diagtext:`sending to parameter of different type`            ||                                       |
|                                                                                         |+--------------------------------------------------------------+|                                       |
|                                                                                         ||:diagtext:`casting between types`                             ||                                       |
|                                                                                         |+--------------------------------------------------------------+|                                       |
+-----------------------------------------------------------------------------------------+----------------------------------------------------------------+---------------------------------------+


-Wint-conversions
-----------------
Synonym for `-Wint-conversion`_.


-Wint-to-pointer-cast
---------------------
This diagnostic is enabled by default.

Also controls `-Wint-to-void-pointer-cast`_.

**Diagnostic text:**

+-------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`cast to` |nbsp| :placeholder:`B` |nbsp| :diagtext:`from smaller integer type` |nbsp| :placeholder:`A`|
+-------------------------------------------------------------------------------------------------------------------------------------------+


-Wint-to-void-pointer-cast
--------------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+-------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`cast to` |nbsp| :placeholder:`B` |nbsp| :diagtext:`from smaller integer type` |nbsp| :placeholder:`A`|
+-------------------------------------------------------------------------------------------------------------------------------------------+


-Winteger-overflow
------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+-----------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`overflow in expression; result is` |nbsp| :placeholder:`A` |nbsp| :diagtext:`with type` |nbsp| :placeholder:`B`|
+-----------------------------------------------------------------------------------------------------------------------------------------------------+


-Winvalid-command-line-argument
-------------------------------
This diagnostic is enabled by default.

Also controls `-Wignored-optimization-argument`_.

**Diagnostic text:**

+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`the given MCU supports` |nbsp| :placeholder:`A` |nbsp| :diagtext:`hardware multiply, but -mhwmult is set to` |nbsp| :placeholder:`B`:diagtext:`.`|
+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+

+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`no MCU device specified, but '-mhwmult' is set to 'auto', assuming no hardware multiply. Use -mmcu to specify a MSP430 device, or -mhwmult to set hardware multiply type explicitly.`|
+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+

+----------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`the given MCU does not support hardware multiply, but -mhwmult is set to` |nbsp| :placeholder:`A`:diagtext:`.`|
+----------------------------------------------------------------------------------------------------------------------------------------------------+

+-----------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`the object size sanitizer has no effect at -O0, but is explicitly enabled:` |nbsp| :placeholder:`A`|
+-----------------------------------------------------------------------------------------------------------------------------------------+

+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`optimization level '`:placeholder:`A`:diagtext:`' is not supported; using '`:placeholder:`B`:placeholder:`C`:diagtext:`' instead`|
+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------+


-Winvalid-constexpr
-------------------
This diagnostic is an error by default, but the flag ``-Wno-invalid-constexpr`` can be used to disable the error.

**Diagnostic text:**

+----------------------------------------------------+-------------------------+--------------------------------------------------------+
|:error:`error:` |nbsp| :diagtext:`constexpr` |nbsp| |+-----------------------+| |nbsp| :diagtext:`never produces a constant expression`|
|                                                    ||:diagtext:`function`   ||                                                        |
|                                                    |+-----------------------+|                                                        |
|                                                    ||:diagtext:`constructor`||                                                        |
|                                                    |+-----------------------+|                                                        |
+----------------------------------------------------+-------------------------+--------------------------------------------------------+


-Winvalid-iboutlet
------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+---------------------------+-------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| |+-----------------------------+| |nbsp| :diagtext:`with` |nbsp| :placeholder:`A` |nbsp| :diagtext:`attribute must be an object type (invalid` |nbsp| :placeholder:`B`:diagtext:`)`|
|                           ||:diagtext:`instance variable`||                                                                                                                                                  |
|                           |+-----------------------------+|                                                                                                                                                  |
|                           ||:diagtext:`property`         ||                                                                                                                                                  |
|                           |+-----------------------------+|                                                                                                                                                  |
+---------------------------+-------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------+

+---------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`IBOutletCollection properties should be copy/strong and not assign`|
+---------------------------------------------------------------------------------------------------------+


-Winvalid-initializer-from-system-header
----------------------------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+--------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`invalid constructor form class in system header, should not be explicit`|
+--------------------------------------------------------------------------------------------------------------+


-Winvalid-ios-deployment-target
-------------------------------
This diagnostic is an error by default, but the flag ``-Wno-invalid-ios-deployment-target`` can be used to disable the error.

**Diagnostic text:**

+------------------------------------------------------------------------------------------------------------------------------------------------------------+
|:error:`error:` |nbsp| :diagtext:`invalid iOS deployment version '`:placeholder:`A`:diagtext:`', iOS 10 is the maximum deployment target for 32-bit targets`|
+------------------------------------------------------------------------------------------------------------------------------------------------------------+


-Winvalid-noreturn
------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+-------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`function declared 'noreturn' should not return`|
+-------------------------------------------------------------------------------------+

+--------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`function` |nbsp| :placeholder:`A` |nbsp| :diagtext:`declared 'noreturn' should not return`|
+--------------------------------------------------------------------------------------------------------------------------------+


-Winvalid-offsetof
------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+----------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`offset of on non-POD type` |nbsp| :placeholder:`A`|
+----------------------------------------------------------------------------------------+

+----------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`offset of on non-standard-layout type` |nbsp| :placeholder:`A`|
+----------------------------------------------------------------------------------------------------+


-Winvalid-or-nonexistent-directory
----------------------------------
Some of the diagnostics controlled by this flag are enabled by default.

**Diagnostic text:**

+----------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`environment variable SCE\_ORBIS\_SDK\_DIR is set, but points to invalid or nonexistent directory '`:placeholder:`A`:diagtext:`'`|
+----------------------------------------------------------------------------------------------------------------------------------------------------------------------+

+------------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`unable to find` |nbsp| :placeholder:`A` |nbsp| :diagtext:`directory, expected to be in '`:placeholder:`B`:diagtext:`'`|
+------------------------------------------------------------------------------------------------------------------------------------------------------------+


-Winvalid-partial-specialization
--------------------------------
This diagnostic is an error by default, but the flag ``-Wno-invalid-partial-specialization`` can be used to disable the error.

**Diagnostic text:**

+-----------------------+----------------------+-----------------------------------------------------------------------------------------------------+
|:error:`error:` |nbsp| |+--------------------+| |nbsp| :diagtext:`template partial specialization is not more specialized than the primary template`|
|                       ||:diagtext:`class`   ||                                                                                                     |
|                       |+--------------------+|                                                                                                     |
|                       ||:diagtext:`variable`||                                                                                                     |
|                       |+--------------------+|                                                                                                     |
+-----------------------+----------------------+-----------------------------------------------------------------------------------------------------+


-Winvalid-pch
-------------
This diagnostic flag exists for GCC compatibility, and has no effect in Clang.

-Winvalid-pp-token
------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+---------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`empty character constant`|
+---------------------------------------------------------------+

+------------------------------------------------------------------+-----------------+-----------------------------+
|:warning:`warning:` |nbsp| :diagtext:`missing terminating` |nbsp| |+---------------+| |nbsp| :diagtext:`character`|
|                                                                  ||:diagtext:`'`  ||                             |
|                                                                  |+---------------+|                             |
|                                                                  ||:diagtext:`'"'`||                             |
|                                                                  |+---------------+|                             |
+------------------------------------------------------------------+-----------------+-----------------------------+


-Winvalid-source-encoding
-------------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+--------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`illegal character encoding in character literal`|
+--------------------------------------------------------------------------------------+

+-----------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`illegal character encoding in string literal`|
+-----------------------------------------------------------------------------------+


-Winvalid-token-paste
---------------------
This diagnostic is an error by default, but the flag ``-Wno-invalid-token-paste`` can be used to disable the error.

**Diagnostic text:**

+----------------------------------------------------------------------------------------------------------------+
|:error:`error:` |nbsp| :diagtext:`pasting formed '`:placeholder:`A`:diagtext:`', an invalid preprocessing token`|
+----------------------------------------------------------------------------------------------------------------+


-Wjump-seh-finally
------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+-------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`jump out of \_\_finally block has undefined behavior`|
+-------------------------------------------------------------------------------------------+


-Wkeyword-compat
----------------
This diagnostic is enabled by default.

**Diagnostic text:**

+-----------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`keyword '`:placeholder:`A`:diagtext:`' will be made available as an identifier` |nbsp| |+-----------------------------------------------------+|
|                                                                                                                             ||:diagtext:`here`                                     ||
|                                                                                                                             |+-----------------------------------------------------+|
|                                                                                                                             ||:diagtext:`for the remainder of the translation unit`||
|                                                                                                                             |+-----------------------------------------------------+|
+-----------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------+


-Wkeyword-macro
---------------
**Diagnostic text:**

+----------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`keyword is hidden by macro definition`|
+----------------------------------------------------------------------------+


-Wknr-promoted-parameter
------------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`promoted type of K&R function parameter is not compatible with parameter type` |nbsp| :diagtext:`declared in a previous prototype`|
+------------------------------------------------------------------------------------------------------------------------------------------------------------------------+


-Wlanguage-extension-token
--------------------------
**Diagnostic text:**

+-----------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`extension used`|
+-----------------------------------------------------+


-Wlarge-by-value-copy
---------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :placeholder:`A` |nbsp| :diagtext:`is a large (`:placeholder:`B` |nbsp| :diagtext:`bytes) pass-by-value argument; pass it by reference instead ?`|
+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------+

+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`return value of` |nbsp| :placeholder:`A` |nbsp| :diagtext:`is a large (`:placeholder:`B` |nbsp| :diagtext:`bytes) pass-by-value object; pass it by reference instead ?`|
+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+


-Wliblto
--------
This diagnostic flag exists for GCC compatibility, and has no effect in Clang.

-Wliteral-conversion
--------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`implicit conversion from` |nbsp| :placeholder:`A` |nbsp| :diagtext:`to` |nbsp| :placeholder:`B` |nbsp| :diagtext:`changes value from` |nbsp| :placeholder:`C` |nbsp| :diagtext:`to` |nbsp| :placeholder:`D`|
+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+

+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`implicit conversion of out of range value from` |nbsp| :placeholder:`A` |nbsp| :diagtext:`to` |nbsp| :placeholder:`B` |nbsp| :diagtext:`is undefined`|
+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+


-Wliteral-range
---------------
This diagnostic is enabled by default.

**Diagnostic text:**

+----------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`magnitude of floating-point constant too large for type` |nbsp| :placeholder:`A`:diagtext:`; maximum is` |nbsp| :placeholder:`B`|
+----------------------------------------------------------------------------------------------------------------------------------------------------------------------+

+----------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`magnitude of floating-point constant too small for type` |nbsp| :placeholder:`A`:diagtext:`; minimum is` |nbsp| :placeholder:`B`|
+----------------------------------------------------------------------------------------------------------------------------------------------------------------------+


-Wlocal-type-template-args
--------------------------
Some of the diagnostics controlled by this flag are enabled by default.

Also controls `-Wc++98-compat-local-type-template-args`_.

**Diagnostic text:**

+------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`template argument uses local type` |nbsp| :placeholder:`A`|
+------------------------------------------------------------------------------------------------+


-Wlogical-not-parentheses
-------------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+--------------------------------------------------------------------------------------------------------+------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`logical not is only applied to the left hand side of this` |nbsp| |+----------------------------+|
|                                                                                                        ||:diagtext:`comparison`      ||
|                                                                                                        |+----------------------------+|
|                                                                                                        ||:diagtext:`bitwise operator`||
|                                                                                                        |+----------------------------+|
+--------------------------------------------------------------------------------------------------------+------------------------------+


-Wlogical-op-parentheses
------------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+---------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`'&&' within '\|\|'`|
+---------------------------------------------------------+


-Wlong-long
-----------
Also controls `-Wc++11-long-long`_.

**Diagnostic text:**

+-----------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`'long long' is an extension when C99 mode is not enabled`|
+-----------------------------------------------------------------------------------------------+


-Wloop-analysis
---------------
Controls `-Wfor-loop-analysis`_, `-Wrange-loop-analysis`_.


-Wmacro-redefined
-----------------
This diagnostic is enabled by default.

**Diagnostic text:**

+------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :placeholder:`A` |nbsp| :diagtext:`macro redefined`|
+------------------------------------------------------------------------------+


-Wmain
------
Some of the diagnostics controlled by this flag are enabled by default.

**Diagnostic text:**

+--------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`ISO C++ does not allow 'main' to be used by a program`|
+--------------------------------------------------------------------------------------------+

+--------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`'main' is not allowed to be declared \_Noreturn`|
+--------------------------------------------------------------------------------------+

+------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`'main' is not allowed to be declared variadic`|
+------------------------------------------------------------------------------------+

+-------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`only one parameter on 'main' declaration`|
+-------------------------------------------------------------------------------+

+---------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`variable named 'main' with external linkage has undefined behavior`|
+---------------------------------------------------------------------------------------------------------+

+------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`bool literal returned from 'main'`|
+------------------------------------------------------------------------+

+---------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`'main' should not be declared static`|
+---------------------------------------------------------------------------+


-Wmain-return-type
------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+-------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`return type of 'main' is not 'int'`|
+-------------------------------------------------------------------------+


-Wmalformed-warning-check
-------------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+---------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`\_\_has\_warning expected option name (e.g. "-Wundef")`|
+---------------------------------------------------------------------------------------------+


-Wmany-braces-around-scalar-init
--------------------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+--------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`too many braces around scalar initializer`|
+--------------------------------------------------------------------------------+


-Wmax-unsigned-zero
-------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+----------------------------------------------------------------+---------------------------------------+------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`taking the max of` |nbsp| |+-------------------------------------+| |nbsp| :diagtext:`is always equal to the other value`|
|                                                                ||:diagtext:`a value and unsigned zero`||                                                      |
|                                                                |+-------------------------------------+|                                                      |
|                                                                ||:diagtext:`unsigned zero and a value`||                                                      |
|                                                                |+-------------------------------------+|                                                      |
+----------------------------------------------------------------+---------------------------------------+------------------------------------------------------+


-Wmemset-transposed-args
------------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+---------------------------+-----------------------------------------------------+---------------------------------------------------------------+
|:warning:`warning:` |nbsp| |+---------------------------------------------------+|:diagtext:`; did you mean to transpose the last two arguments?`|
|                           ||:diagtext:`'size' argument to memset is '0'`       ||                                                               |
|                           |+---------------------------------------------------+|                                                               |
|                           ||:diagtext:`setting buffer to a 'sizeof' expression`||                                                               |
|                           |+---------------------------------------------------+|                                                               |
+---------------------------+-----------------------------------------------------+---------------------------------------------------------------+


-Wmemsize-comparison
--------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+-----------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`size argument in` |nbsp| :placeholder:`A` |nbsp| :diagtext:`call is a comparison`|
+-----------------------------------------------------------------------------------------------------------------------+


-Wmethod-signatures
-------------------
**Diagnostic text:**

+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`conflicting parameter types in implementation of` |nbsp| :placeholder:`A`:diagtext:`:` |nbsp| :placeholder:`B` |nbsp| :diagtext:`vs` |nbsp| :placeholder:`C`|
+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+

+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`conflicting return type in implementation of` |nbsp| :placeholder:`A`:diagtext:`:` |nbsp| :placeholder:`B` |nbsp| :diagtext:`vs` |nbsp| :placeholder:`C`|
+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+


-Wmicrosoft
-----------
Some of the diagnostics controlled by this flag are enabled by default.

Controls `-Winconsistent-dllimport`_, `-Wmicrosoft-anon-tag`_, `-Wmicrosoft-cast`_, `-Wmicrosoft-charize`_, `-Wmicrosoft-comment-paste`_, `-Wmicrosoft-const-init`_, `-Wmicrosoft-cpp-macro`_, `-Wmicrosoft-default-arg-redefinition`_, `-Wmicrosoft-drectve-section`_, `-Wmicrosoft-end-of-file`_, `-Wmicrosoft-enum-forward-reference`_, `-Wmicrosoft-enum-value`_, `-Wmicrosoft-exception-spec`_, `-Wmicrosoft-explicit-constructor-call`_, `-Wmicrosoft-extra-qualification`_, `-Wmicrosoft-fixed-enum`_, `-Wmicrosoft-flexible-array`_, `-Wmicrosoft-goto`_, `-Wmicrosoft-include`_, `-Wmicrosoft-mutable-reference`_, `-Wmicrosoft-pure-definition`_, `-Wmicrosoft-redeclare-static`_, `-Wmicrosoft-sealed`_, `-Wmicrosoft-template`_, `-Wmicrosoft-union-member-reference`_, `-Wmicrosoft-unqualified-friend`_, `-Wmicrosoft-using-decl`_, `-Wmicrosoft-void-pseudo-dtor`_.


-Wmicrosoft-anon-tag
--------------------
Some of the diagnostics controlled by this flag are enabled by default.

**Diagnostic text:**

+-----------------------------------------------------------------------------+--------------------+---------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`types declared in an anonymous` |nbsp| |+------------------+| |nbsp| :diagtext:`are a Microsoft extension`|
|                                                                             ||:diagtext:`struct`||                                             |
|                                                                             |+------------------+|                                             |
|                                                                             ||:diagtext:`union` ||                                             |
|                                                                             |+------------------+|                                             |
+-----------------------------------------------------------------------------+--------------------+---------------------------------------------+

+--------------------------------------------------------+---------------------+---------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`anonymous` |nbsp| |+-------------------+| |nbsp| :diagtext:`are a Microsoft extension`|
|                                                        ||:diagtext:`structs`||                                             |
|                                                        |+-------------------+|                                             |
|                                                        ||:diagtext:`unions` ||                                             |
|                                                        |+-------------------+|                                             |
+--------------------------------------------------------+---------------------+---------------------------------------------+


-Wmicrosoft-cast
----------------
This diagnostic is enabled by default.

**Diagnostic text:**

+------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`static\_cast between pointer-to-function and pointer-to-object is a Microsoft extension`|
+------------------------------------------------------------------------------------------------------------------------------+

+-------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`implicit conversion between pointer-to-function and pointer-to-object is a Microsoft extension`|
+-------------------------------------------------------------------------------------------------------------------------------------+


-Wmicrosoft-charize
-------------------
**Diagnostic text:**

+-------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`charizing operator #@ is a Microsoft extension`|
+-------------------------------------------------------------------------------------+


-Wmicrosoft-comment-paste
-------------------------
**Diagnostic text:**

+----------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`pasting two '/' tokens into a '//' comment is a Microsoft extension`|
+----------------------------------------------------------------------------------------------------------+


-Wmicrosoft-const-init
----------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+----------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------+--------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`default initialization of an object of const type` |nbsp| :placeholder:`A`|+---------------------------------------------------------------+| |nbsp| :diagtext:`is a Microsoft extension`|
|                                                                                                                ||                                                               ||                                            |
|                                                                                                                |+---------------------------------------------------------------+|                                            |
|                                                                                                                || |nbsp| :diagtext:`without a user-provided default constructor`||                                            |
|                                                                                                                |+---------------------------------------------------------------+|                                            |
+----------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------+--------------------------------------------+


-Wmicrosoft-cpp-macro
---------------------
**Diagnostic text:**

+-------------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`C++ operator` |nbsp| :placeholder:`A` |nbsp| :diagtext:`(aka` |nbsp| :placeholder:`B`:diagtext:`) used as a macro name`|
+-------------------------------------------------------------------------------------------------------------------------------------------------------------+


-Wmicrosoft-default-arg-redefinition
------------------------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+-----------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`redefinition of default argument`|
+-----------------------------------------------------------------------+


-Wmicrosoft-drectve-section
---------------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+---------------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`#pragma` |nbsp| :placeholder:`A`:diagtext:`(".drectve") has undefined behavior, use #pragma comment(linker, ...) instead`|
+---------------------------------------------------------------------------------------------------------------------------------------------------------------+


-Wmicrosoft-end-of-file
-----------------------
**Diagnostic text:**

+----------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`treating Ctrl-Z as end-of-file is a Microsoft extension`|
+----------------------------------------------------------------------------------------------+


-Wmicrosoft-enum-forward-reference
----------------------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+---------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`forward references to 'enum' types are a Microsoft extension`|
+---------------------------------------------------------------------------------------------------+


-Wmicrosoft-enum-value
----------------------
**Diagnostic text:**

+---------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`enumerator value is not representable in the underlying type` |nbsp| :placeholder:`A`|
+---------------------------------------------------------------------------------------------------------------------------+


-Wmicrosoft-exception-spec
--------------------------
Some of the diagnostics controlled by this flag are enabled by default.

**Diagnostic text:**

+------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`exception specification of '...' is a Microsoft extension`|
+------------------------------------------------------------------------------------------------+

+---------------------------+----------------------------------+----------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| |+--------------------------------+|:diagtext:`incomplete type` |nbsp| :placeholder:`B` |nbsp| :diagtext:`is not allowed in exception specification`|
|                           ||                                ||                                                                                                                |
|                           |+--------------------------------+|                                                                                                                |
|                           ||:diagtext:`pointer to` |nbsp|   ||                                                                                                                |
|                           |+--------------------------------+|                                                                                                                |
|                           ||:diagtext:`reference to` |nbsp| ||                                                                                                                |
|                           |+--------------------------------+|                                                                                                                |
+---------------------------+----------------------------------+----------------------------------------------------------------------------------------------------------------+

+-----------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`exception specification in declaration does not match previous declaration`|
+-----------------------------------------------------------------------------------------------------------------+

+------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`exception specification in explicit instantiation does not match instantiated one`|
+------------------------------------------------------------------------------------------------------------------------+

+--------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :placeholder:`A` |nbsp| :diagtext:`is missing exception specification '`:placeholder:`B`:diagtext:`'`|
+--------------------------------------------------------------------------------------------------------------------------------+

+-------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`exception specification of overriding function is more lax than base version`|
+-------------------------------------------------------------------------------------------------------------------+


-Wmicrosoft-exists
------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+--------------------------------------------------------+---------------------------------+--------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`dependent` |nbsp| |+-------------------------------+| |nbsp| :diagtext:`declarations are ignored`|
|                                                        ||:diagtext:`\_\_if\_not\_exists`||                                            |
|                                                        |+-------------------------------+|                                            |
|                                                        ||:diagtext:`\_\_if\_exists`     ||                                            |
|                                                        |+-------------------------------+|                                            |
+--------------------------------------------------------+---------------------------------+--------------------------------------------+


-Wmicrosoft-explicit-constructor-call
-------------------------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+-------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`explicit constructor calls are a Microsoft extension`|
+-------------------------------------------------------------------------------------------+


-Wmicrosoft-extra-qualification
-------------------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+--------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`extra qualification on member` |nbsp| :placeholder:`A`|
+--------------------------------------------------------------------------------------------+


-Wmicrosoft-fixed-enum
----------------------
**Diagnostic text:**

+---------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`enumeration types with a fixed underlying type are a Microsoft extension`|
+---------------------------------------------------------------------------------------------------------------+


-Wmicrosoft-flexible-array
--------------------------
**Diagnostic text:**

+----------------------------------------------------------------------------------------------------------------------------------+-----------------------+--------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`flexible array member` |nbsp| :placeholder:`A` |nbsp| :diagtext:`in otherwise empty` |nbsp| |+---------------------+| |nbsp| :diagtext:`is a Microsoft extension`|
|                                                                                                                                  ||:diagtext:`struct`   ||                                            |
|                                                                                                                                  |+---------------------+|                                            |
|                                                                                                                                  ||:diagtext:`interface`||                                            |
|                                                                                                                                  |+---------------------+|                                            |
|                                                                                                                                  ||:diagtext:`union`    ||                                            |
|                                                                                                                                  |+---------------------+|                                            |
|                                                                                                                                  ||:diagtext:`class`    ||                                            |
|                                                                                                                                  |+---------------------+|                                            |
|                                                                                                                                  ||:diagtext:`enum`     ||                                            |
|                                                                                                                                  |+---------------------+|                                            |
+----------------------------------------------------------------------------------------------------------------------------------+-----------------------+--------------------------------------------+

+-------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`flexible array member` |nbsp| :placeholder:`A` |nbsp| :diagtext:`in a union is a Microsoft extension`|
+-------------------------------------------------------------------------------------------------------------------------------------------+


-Wmicrosoft-goto
----------------
This diagnostic is enabled by default.

**Diagnostic text:**

+----------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`jump from this goto statement to its label is a Microsoft extension`|
+----------------------------------------------------------------------------------------------------------+


-Wmicrosoft-inaccessible-base
-----------------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`accessing inaccessible direct base` |nbsp| :placeholder:`A` |nbsp| :diagtext:`of` |nbsp| :placeholder:`B` |nbsp| :diagtext:`is a Microsoft extension`|
+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+


-Wmicrosoft-include
-------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`#include resolved using non-portable Microsoft search rules as:` |nbsp| :placeholder:`A`|
+------------------------------------------------------------------------------------------------------------------------------+


-Wmicrosoft-mutable-reference
-----------------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+---------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`'mutable' on a reference type is a Microsoft extension`|
+---------------------------------------------------------------------------------------------+


-Wmicrosoft-pure-definition
---------------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+-------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`function definition with pure-specifier is a Microsoft extension`|
+-------------------------------------------------------------------------------------------------------+


-Wmicrosoft-redeclare-static
----------------------------
**Diagnostic text:**

+-------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`redeclaring non-static` |nbsp| :placeholder:`A` |nbsp| :diagtext:`as static is a Microsoft extension`|
+-------------------------------------------------------------------------------------------------------------------------------------------+


-Wmicrosoft-sealed
------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+--------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`'sealed' keyword is a Microsoft extension`|
+--------------------------------------------------------------------------------+


-Wmicrosoft-template
--------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`duplicate explicit instantiation of` |nbsp| :placeholder:`A` |nbsp| :diagtext:`ignored as a Microsoft extension`|
+------------------------------------------------------------------------------------------------------------------------------------------------------+

+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`use of identifier` |nbsp| :placeholder:`A` |nbsp| :diagtext:`found via unqualified lookup into dependent bases of class templates is a Microsoft extension`|
+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+

+-------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`using the undeclared type` |nbsp| :placeholder:`A` |nbsp| :diagtext:`as a default template argument is a Microsoft extension`|
+-------------------------------------------------------------------------------------------------------------------------------------------------------------------+

+-----------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`non-type template argument containing a dereference operation is a Microsoft extension`|
+-----------------------------------------------------------------------------------------------------------------------------+

+---------------------------+---------------------------------------+-----------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------+--------------------------------------------+
|:warning:`warning:` |nbsp| |+-------------------------------------+| |nbsp| :diagtext:`specialization of` |nbsp| :placeholder:`B` |nbsp| :diagtext:`not in` |nbsp| |+----------------------------------------------------------------------------------------+| |nbsp| :diagtext:`is a Microsoft extension`|
|                           ||:diagtext:`class template`           ||                                                                                               ||+---------------------------------------------------------+                             ||                                            |
|                           |+-------------------------------------+|                                                                                               |||:diagtext:`a namespace enclosing` |nbsp| :placeholder:`C`|                             ||                                            |
|                           ||:diagtext:`class template partial`   ||                                                                                               ||+---------------------------------------------------------+                             ||                                            |
|                           |+-------------------------------------+|                                                                                               |+----------------------------------------------------------------------------------------+|                                            |
|                           ||:diagtext:`variable template`        ||                                                                                               ||+--------------------------------------------------------------------------------------+||                                            |
|                           |+-------------------------------------+|                                                                                               |||:diagtext:`class` |nbsp| :placeholder:`C` |nbsp| :diagtext:`or an enclosing namespace`|||                                            |
|                           ||:diagtext:`variable template partial`||                                                                                               ||+--------------------------------------------------------------------------------------+||                                            |
|                           |+-------------------------------------+|                                                                                               |+----------------------------------------------------------------------------------------+|                                            |
|                           ||:diagtext:`function template`        ||                                                                                               |                                                                                          |                                            |
|                           |+-------------------------------------+|                                                                                               |                                                                                          |                                            |
|                           ||:diagtext:`member function`          ||                                                                                               |                                                                                          |                                            |
|                           |+-------------------------------------+|                                                                                               |                                                                                          |                                            |
|                           ||:diagtext:`static data member`       ||                                                                                               |                                                                                          |                                            |
|                           |+-------------------------------------+|                                                                                               |                                                                                          |                                            |
|                           ||:diagtext:`member class`             ||                                                                                               |                                                                                          |                                            |
|                           |+-------------------------------------+|                                                                                               |                                                                                          |                                            |
|                           ||:diagtext:`member enumeration`       ||                                                                                               |                                                                                          |                                            |
|                           |+-------------------------------------+|                                                                                               |                                                                                          |                                            |
+---------------------------+---------------------------------------+-----------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------+--------------------------------------------+

+------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`template argument for template type parameter must be a type; omitted 'typename' is a Microsoft extension`|
+------------------------------------------------------------------------------------------------------------------------------------------------+

+-------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`'static' can only be specified inside the class definition`|
+-------------------------------------------------------------------------------------------------+

+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`use of undeclared identifier` |nbsp| :placeholder:`A`:diagtext:`; unqualified lookup into dependent bases of class template` |nbsp| :placeholder:`B` |nbsp| :diagtext:`is a Microsoft extension`|
+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+


-Wmicrosoft-union-member-reference
----------------------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`union member` |nbsp| :placeholder:`A` |nbsp| :diagtext:`has reference type` |nbsp| :placeholder:`B`:diagtext:`, which is a Microsoft extension`|
+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+


-Wmicrosoft-unqualified-friend
------------------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`unqualified friend declaration referring to type outside of the nearest enclosing namespace is a Microsoft extension; add a nested name specifier`|
+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+


-Wmicrosoft-using-decl
----------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`using declaration referring to inaccessible member '`:placeholder:`A`:diagtext:`' (which refers to accessible member '`:placeholder:`B`:diagtext:`') is a Microsoft compatibility extension`|
+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+


-Wmicrosoft-void-pseudo-dtor
----------------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`pseudo-destructors on type void are a Microsoft extension`|
+------------------------------------------------------------------------------------------------+


-Wmismatched-new-delete
-----------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+----------------------------------------------+------------------+---------------------------------------------------------------+------------------+-----------------------------------+------------------+--------------+
|:warning:`warning:` |nbsp| :diagtext:`'delete`|+----------------+|:diagtext:`' applied to a pointer that was allocated with 'new`|+----------------+|:diagtext:`'; did you mean 'delete`|+----------------+|:diagtext:`'?`|
|                                              ||                ||                                                               ||:diagtext:`\[\]`||                                   ||:diagtext:`\[\]`||              |
|                                              |+----------------+|                                                               |+----------------+|                                   |+----------------+|              |
|                                              ||:diagtext:`\[\]`||                                                               ||                ||                                   ||                ||              |
|                                              |+----------------+|                                                               |+----------------+|                                   |+----------------+|              |
+----------------------------------------------+------------------+---------------------------------------------------------------+------------------+-----------------------------------+------------------+--------------+


-Wmismatched-parameter-types
----------------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+---------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`conflicting parameter types in implementation of` |nbsp| :placeholder:`A`|
+---------------------------------------------------------------------------------------------------------------+


-Wmismatched-return-types
-------------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+-----------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`conflicting return type in implementation of` |nbsp| :placeholder:`A`|
+-----------------------------------------------------------------------------------------------------------+


-Wmismatched-tags
-----------------
**Diagnostic text:**

+---------------------------------------------------------------------------------+--------------------------+------------------------------+-----------------------------------------------------------+--------------------------+------------------------------+----------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :placeholder:`C` |nbsp| :diagtext:`defined as` |nbsp| |+------------------------+|+----------------------------+| |nbsp| :diagtext:`here but previously declared as` |nbsp| |+------------------------+|+----------------------------+|:diagtext:`; this is valid, but may result in linker errors under the Microsoft C++ ABI`|
|                                                                                 ||:diagtext:`a struct`    |||                            ||                                                           ||:diagtext:`a struct`    |||                            ||                                                                                        |
|                                                                                 |+------------------------+|+----------------------------+|                                                           |+------------------------+|+----------------------------+|                                                                                        |
|                                                                                 ||:diagtext:`an interface`||| |nbsp| :diagtext:`template`||                                                           ||:diagtext:`an interface`||| |nbsp| :diagtext:`template`||                                                                                        |
|                                                                                 |+------------------------+|+----------------------------+|                                                           |+------------------------+|+----------------------------+|                                                                                        |
|                                                                                 ||:diagtext:`a class`     ||                              |                                                           ||:diagtext:`a class`     ||                              |                                                                                        |
|                                                                                 |+------------------------+|                              |                                                           |+------------------------+|                              |                                                                                        |
+---------------------------------------------------------------------------------+--------------------------+------------------------------+-----------------------------------------------------------+--------------------------+------------------------------+----------------------------------------------------------------------------------------+

+---------------------------+-----------------------+------------------------------+--------------------------------------------------------------------------------+-----------------------+------------------------------+----------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| |+---------------------+|+----------------------------+| |nbsp| :placeholder:`C` |nbsp| :diagtext:`was previously declared as a` |nbsp| |+---------------------+|+----------------------------+|:diagtext:`; this is valid, but may result in linker errors under the Microsoft C++ ABI`|
|                           ||:diagtext:`struct`   |||                            ||                                                                                ||:diagtext:`struct`   |||                            ||                                                                                        |
|                           |+---------------------+|+----------------------------+|                                                                                |+---------------------+|+----------------------------+|                                                                                        |
|                           ||:diagtext:`interface`||| |nbsp| :diagtext:`template`||                                                                                ||:diagtext:`interface`||| |nbsp| :diagtext:`template`||                                                                                        |
|                           |+---------------------+|+----------------------------+|                                                                                |+---------------------+|+----------------------------+|                                                                                        |
|                           ||:diagtext:`class`    ||                              |                                                                                ||:diagtext:`class`    ||                              |                                                                                        |
|                           |+---------------------+|                              |                                                                                |+---------------------+|                              |                                                                                        |
+---------------------------+-----------------------+------------------------------+--------------------------------------------------------------------------------+-----------------------+------------------------------+----------------------------------------------------------------------------------------+


-Wmissing-braces
----------------
**Diagnostic text:**

+----------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`suggest braces around initialization of subobject`|
+----------------------------------------------------------------------------------------+


-Wmissing-declarations
----------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+----------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`declaration does not declare anything`|
+----------------------------------------------------------------------------+

+-----------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`'`:placeholder:`A`:diagtext:`' is not permitted on a declaration of a type`|
+-----------------------------------------------------------------------------------------------------------------+

+--------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`typedef requires a name`|
+--------------------------------------------------------------+

+-------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`'`:placeholder:`A`:diagtext:`' ignored on this declaration`|
+-------------------------------------------------------------------------------------------------+


-Wmissing-exception-spec
------------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+--------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :placeholder:`A` |nbsp| :diagtext:`is missing exception specification '`:placeholder:`B`:diagtext:`'`|
+--------------------------------------------------------------------------------------------------------------------------------+


-Wmissing-field-initializers
----------------------------
**Diagnostic text:**

+-----------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`missing field` |nbsp| :placeholder:`A` |nbsp| :diagtext:`initializer`|
+-----------------------------------------------------------------------------------------------------------+


-Wmissing-format-attribute
--------------------------
This diagnostic flag exists for GCC compatibility, and has no effect in Clang.

-Wmissing-include-dirs
----------------------
This diagnostic flag exists for GCC compatibility, and has no effect in Clang.

-Wmissing-method-return-type
----------------------------
**Diagnostic text:**

+--------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`method has no return type specified; defaults to 'id'`|
+--------------------------------------------------------------------------------------------+


-Wmissing-noescape
------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+----------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`parameter of overriding method should be annotated with \_\_attribute\_\_((noescape))`|
+----------------------------------------------------------------------------------------------------------------------------+


-Wmissing-noreturn
------------------
**Diagnostic text:**

+----------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`block could be declared with attribute 'noreturn'`|
+----------------------------------------------------------------------------------------+

+---------------------------+----------------------+---------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| |+--------------------+| |nbsp| :placeholder:`B` |nbsp| :diagtext:`could be declared with attribute 'noreturn'`|
|                           ||:diagtext:`function`||                                                                                       |
|                           |+--------------------+|                                                                                       |
|                           ||:diagtext:`method`  ||                                                                                       |
|                           |+--------------------+|                                                                                       |
+---------------------------+----------------------+---------------------------------------------------------------------------------------+


-Wmissing-prototype-for-cc
--------------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+----------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`function with no prototype cannot use the` |nbsp| :placeholder:`A` |nbsp| :diagtext:`calling convention`|
+----------------------------------------------------------------------------------------------------------------------------------------------+


-Wmissing-prototypes
--------------------
**Diagnostic text:**

+-------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`no previous prototype for function` |nbsp| :placeholder:`A`|
+-------------------------------------------------------------------------------------------------+


-Wmissing-selector-name
-----------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+---------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :placeholder:`A` |nbsp| :diagtext:`used as the name of the previous parameter rather than as part of the selector`|
+---------------------------------------------------------------------------------------------------------------------------------------------+


-Wmissing-sysroot
-----------------
This diagnostic is enabled by default.

**Diagnostic text:**

+------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`no such sysroot directory: '`:placeholder:`A`:diagtext:`'`|
+------------------------------------------------------------------------------------------------+


-Wmissing-variable-declarations
-------------------------------
**Diagnostic text:**

+---------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`no previous extern declaration for non-static variable` |nbsp| :placeholder:`A`|
+---------------------------------------------------------------------------------------------------------------------+


-Rmodule-build
--------------
**Diagnostic text:**

+---------------------------------------------------------------------------------------------------------------------+
|:remark:`remark:` |nbsp| :diagtext:`building module '`:placeholder:`A`:diagtext:`' as '`:placeholder:`B`:diagtext:`'`|
+---------------------------------------------------------------------------------------------------------------------+

+--------------------------------------------------------------------------------------------+
|:remark:`remark:` |nbsp| :diagtext:`finished building module '`:placeholder:`A`:diagtext:`'`|
+--------------------------------------------------------------------------------------------+

+-----------------------------------------------------------------------------------------------------------------------------------+
|:remark:`remark:` |nbsp| :diagtext:`could not acquire lock file for module '`:placeholder:`A`:diagtext:`':` |nbsp| :placeholder:`B`|
+-----------------------------------------------------------------------------------------------------------------------------------+

+---------------------------------------------------------------------------------------------------------------------+
|:remark:`remark:` |nbsp| :diagtext:`timed out waiting to acquire lock file for module '`:placeholder:`A`:diagtext:`'`|
+---------------------------------------------------------------------------------------------------------------------+


-Wmodule-conflict
-----------------
This diagnostic is enabled by default.

**Diagnostic text:**

+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`module '`:placeholder:`A`:diagtext:`' conflicts with already-imported module '`:placeholder:`B`:diagtext:`':` |nbsp| :placeholder:`C`|
+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------+

+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`module file '`:placeholder:`A`:diagtext:`' was validated as a system module and is now being imported as a non-system module; any difference in diagnostic options will be ignored`|
+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+


-Wmodule-file-config-mismatch
-----------------------------
This diagnostic is an error by default, but the flag ``-Wno-module-file-config-mismatch`` can be used to disable the error.

**Diagnostic text:**

+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|:error:`error:` |nbsp| :diagtext:`module file` |nbsp| :placeholder:`A` |nbsp| :diagtext:`cannot be loaded due to a configuration mismatch with the current compilation`|
+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------+


-Wmodule-file-extension
-----------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+----------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`duplicate module file extension block name '`:placeholder:`A`:diagtext:`'`|
+----------------------------------------------------------------------------------------------------------------+


-Rmodule-import
---------------
**Diagnostic text:**

+------------------------------------------------------------------------------------+-----------------------------------------------------------+-------------------------------------------------------+
|:remark:`remark:` |nbsp| :diagtext:`importing module '`:placeholder:`A`:diagtext:`'`|+---------------------------------------------------------+| |nbsp| :diagtext:`from '`:placeholder:`B`:diagtext:`'`|
|                                                                                    ||                                                         ||                                                       |
|                                                                                    |+---------------------------------------------------------+|                                                       |
|                                                                                    ||+-------------------------------------------------------+||                                                       |
|                                                                                    ||| |nbsp| :diagtext:`into '`:placeholder:`D`:diagtext:`'`|||                                                       |
|                                                                                    ||+-------------------------------------------------------+||                                                       |
|                                                                                    |+---------------------------------------------------------+|                                                       |
+------------------------------------------------------------------------------------+-----------------------------------------------------------+-------------------------------------------------------+


-Wmodule-import-in-extern-c
---------------------------
This diagnostic is an error by default, but the flag ``-Wno-module-import-in-extern-c`` can be used to disable the error.

**Diagnostic text:**

+-----------------------------------------------------------------------------------------------------------------------------------------------+
|:error:`error:` |nbsp| :diagtext:`import of C++ module '`:placeholder:`A`:diagtext:`' appears within extern "C" language linkage specification`|
+-----------------------------------------------------------------------------------------------------------------------------------------------+


-Wmodules-ambiguous-internal-linkage
------------------------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+-----------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`ambiguous use of internal linkage declaration` |nbsp| :placeholder:`A` |nbsp| :diagtext:`defined in multiple modules`|
+-----------------------------------------------------------------------------------------------------------------------------------------------------------+


-Wmodules-import-nested-redundant
---------------------------------
This diagnostic is an error by default, but the flag ``-Wno-modules-import-nested-redundant`` can be used to disable the error.

**Diagnostic text:**

+-------------------------------------------------------------------------------------------------------------------------------------+
|:error:`error:` |nbsp| :diagtext:`redundant #include of module '`:placeholder:`A`:diagtext:`' appears within` |nbsp| :placeholder:`B`|
+-------------------------------------------------------------------------------------------------------------------------------------+


-Wmost
------
Some of the diagnostics controlled by this flag are enabled by default.

Controls `-Wcast-of-sel-type`_, `-Wchar-subscripts`_, `-Wcomment`_, `-Wdelete-non-virtual-dtor`_, `-Wextern-c-compat`_, `-Wfor-loop-analysis`_, `-Wformat`_, `-Wimplicit`_, `-Winfinite-recursion`_, `-Wmismatched-tags`_, `-Wmissing-braces`_, `-Wmove`_, `-Wmultichar`_, `-Wobjc-designated-initializers`_, `-Wobjc-flexible-array`_, `-Wobjc-missing-super-calls`_, `-Woverloaded-virtual`_, `-Wprivate-extern`_, `-Wreorder`_, `-Wreturn-type`_, `-Wself-assign`_, `-Wself-move`_, `-Wsizeof-array-argument`_, `-Wsizeof-array-decay`_, `-Wstring-plus-int`_, `-Wtrigraphs`_, `-Wuninitialized`_, `-Wunknown-pragmas`_, `-Wunused`_, `-Wuser-defined-warnings`_, `-Wvolatile-register-var`_.


-Wmove
------
Controls `-Wpessimizing-move`_, `-Wredundant-move`_, `-Wreturn-std-move`_, `-Wself-move`_.


-Wmsvc-include
--------------
Synonym for `-Wmicrosoft-include`_.


-Wmsvc-not-found
----------------
This diagnostic is enabled by default.

**Diagnostic text:**

+-------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`unable to find a Visual Studio installation; try running Clang from a developer command prompt`|
+-------------------------------------------------------------------------------------------------------------------------------------+


-Wmultichar
-----------
This diagnostic is enabled by default.

**Diagnostic text:**

+-------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`multi-character character constant`|
+-------------------------------------------------------------------------+


-Wmultiple-move-vbase
---------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`defaulted move assignment operator of` |nbsp| :placeholder:`A` |nbsp| :diagtext:`will move assign virtual base class` |nbsp| :placeholder:`B` |nbsp| :diagtext:`multiple times`|
+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+


-Wnarrowing
-----------
Synonym for `-Wc++11-narrowing`_.


-Wnested-anon-types
-------------------
**Diagnostic text:**

+---------------------------------------------------------------------------------------+--------------------+------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`anonymous types declared in an anonymous` |nbsp| |+------------------+| |nbsp| :diagtext:`are an extension`|
|                                                                                       ||:diagtext:`struct`||                                    |
|                                                                                       |+------------------+|                                    |
|                                                                                       ||:diagtext:`union` ||                                    |
|                                                                                       |+------------------+|                                    |
+---------------------------------------------------------------------------------------+--------------------+------------------------------------+


-Wnested-externs
----------------
This diagnostic flag exists for GCC compatibility, and has no effect in Clang.

-Wnew-returns-null
------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+-------------------------------------------------------------------------------------------------------------------------------+-----------------------------------+
|:warning:`warning:` |nbsp| :placeholder:`A` |nbsp| :diagtext:`should not return a null pointer unless it is declared 'throw()'`|+---------------------------------+|
|                                                                                                                               ||                                 ||
|                                                                                                                               |+---------------------------------+|
|                                                                                                                               || |nbsp| :diagtext:`or 'noexcept'`||
|                                                                                                                               |+---------------------------------+|
+-------------------------------------------------------------------------------------------------------------------------------+-----------------------------------+


-Wnewline-eof
-------------
**Diagnostic text:**

+----------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`no newline at end of file`|
+----------------------------------------------------------------+

+----------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`no newline at end of file`|
+----------------------------------------------------------------+


-Wnoderef
---------
This diagnostic is enabled by default.

**Diagnostic text:**

+----------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`dereferencing` |nbsp| :placeholder:`A`:diagtext:`; was declared with a 'noderef' type`|
+----------------------------------------------------------------------------------------------------------------------------+

+-----------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`dereferencing expression marked as 'noderef'`|
+-----------------------------------------------------------------------------------+

+-----------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`casting to dereferenceable pointer removes 'noderef' attribute`|
+-----------------------------------------------------------------------------------------------------+


-Wnoexcept-type
---------------
Synonym for `-Wc++17-compat-mangling`_.


-Wnon-gcc
---------
Some of the diagnostics controlled by this flag are enabled by default.

Controls `-Wconversion`_, `-Wliteral-range`_, `-Wsign-compare`_.


-Wnon-literal-null-conversion
-----------------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+--------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`expression which evaluates to zero treated as a null pointer constant of type` |nbsp| :placeholder:`A`|
+--------------------------------------------------------------------------------------------------------------------------------------------+


-Wnon-modular-include-in-framework-module
-----------------------------------------
**Diagnostic text:**

+-----------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`include of non-modular header inside framework module '`:placeholder:`A`:diagtext:`': '`:placeholder:`B`:diagtext:`'`|
+-----------------------------------------------------------------------------------------------------------------------------------------------------------+


-Wnon-modular-include-in-module
-------------------------------
Also controls `-Wnon-modular-include-in-framework-module`_.

**Diagnostic text:**

+-------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`include of non-modular header inside module '`:placeholder:`A`:diagtext:`': '`:placeholder:`B`:diagtext:`'`|
+-------------------------------------------------------------------------------------------------------------------------------------------------+


-Wnon-pod-varargs
-----------------
This diagnostic is an error by default, but the flag ``-Wno-non-pod-varargs`` can be used to disable the error.

**Diagnostic text:**

+----------------------------------------------------------------+-------------------------+--------------------------------------------------------------------------------------------+-------------------------+----------------------------------------+
|:error:`error:` |nbsp| :diagtext:`cannot pass object of` |nbsp| |+-----------------------+| |nbsp| :diagtext:`type` |nbsp| :placeholder:`B` |nbsp| :diagtext:`through variadic` |nbsp| |+-----------------------+|:diagtext:`; call will abort at runtime`|
|                                                                ||:diagtext:`non-POD`    ||                                                                                            ||:diagtext:`function`   ||                                        |
|                                                                |+-----------------------+|                                                                                            |+-----------------------+|                                        |
|                                                                ||:diagtext:`non-trivial`||                                                                                            ||:diagtext:`block`      ||                                        |
|                                                                |+-----------------------+|                                                                                            |+-----------------------+|                                        |
|                                                                |                         |                                                                                            ||:diagtext:`method`     ||                                        |
|                                                                |                         |                                                                                            |+-----------------------+|                                        |
|                                                                |                         |                                                                                            ||:diagtext:`constructor`||                                        |
|                                                                |                         |                                                                                            |+-----------------------+|                                        |
+----------------------------------------------------------------+-------------------------+--------------------------------------------------------------------------------------------+-------------------------+----------------------------------------+

+------------------------------------------------------+-------------------------+-------------------------------------------------------------------------------------------------+-------------------------+--------------------------------------------------------------------------+
|:error:`error:` |nbsp| :diagtext:`cannot pass` |nbsp| |+-----------------------+| |nbsp| :diagtext:`object of type` |nbsp| :placeholder:`B` |nbsp| :diagtext:`to variadic` |nbsp| |+-----------------------+|:diagtext:`; expected type from format string was` |nbsp| :placeholder:`D`|
|                                                      ||:diagtext:`non-POD`    ||                                                                                                 ||:diagtext:`function`   ||                                                                          |
|                                                      |+-----------------------+|                                                                                                 |+-----------------------+|                                                                          |
|                                                      ||:diagtext:`non-trivial`||                                                                                                 ||:diagtext:`block`      ||                                                                          |
|                                                      |+-----------------------+|                                                                                                 |+-----------------------+|                                                                          |
|                                                      |                         |                                                                                                 ||:diagtext:`method`     ||                                                                          |
|                                                      |                         |                                                                                                 |+-----------------------+|                                                                          |
|                                                      |                         |                                                                                                 ||:diagtext:`constructor`||                                                                          |
|                                                      |                         |                                                                                                 |+-----------------------+|                                                                          |
+------------------------------------------------------+-------------------------+-------------------------------------------------------------------------------------------------+-------------------------+--------------------------------------------------------------------------+

+----------------------------------------------------------------------------------------------------------+
|:error:`error:` |nbsp| :diagtext:`second argument to 'va\_arg' is of non-POD type` |nbsp| :placeholder:`A`|
+----------------------------------------------------------------------------------------------------------+

+--------------------------------------------------------------------------------------------------------------------------+
|:error:`error:` |nbsp| :diagtext:`second argument to 'va\_arg' is of ARC ownership-qualified type` |nbsp| :placeholder:`A`|
+--------------------------------------------------------------------------------------------------------------------------+


-Wnon-virtual-dtor
------------------
**Diagnostic text:**

+---------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :placeholder:`A` |nbsp| :diagtext:`has virtual functions but non-virtual destructor`|
+---------------------------------------------------------------------------------------------------------------+


-Wnonnull
---------
This diagnostic is enabled by default.

**Diagnostic text:**

+------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`null passed to a callee that requires a non-null argument`|
+------------------------------------------------------------------------------------------------+

+-----------------------------------------------------------------+----------------------+---------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`null returned from` |nbsp| |+--------------------+| |nbsp| :diagtext:`that requires a non-null return value`|
|                                                                 ||:diagtext:`function`||                                                         |
|                                                                 |+--------------------+|                                                         |
|                                                                 ||:diagtext:`method`  ||                                                         |
|                                                                 |+--------------------+|                                                         |
+-----------------------------------------------------------------+----------------------+---------------------------------------------------------+


-Wnonportable-cfstrings
-----------------------
This diagnostic flag exists for GCC compatibility, and has no effect in Clang.

-Wnonportable-include-path
--------------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`non-portable path to file '`:placeholder:`A`:diagtext:`'; specified path differs in case from file name on disk`|
+------------------------------------------------------------------------------------------------------------------------------------------------------+


-Wnonportable-system-include-path
---------------------------------
**Diagnostic text:**

+------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`non-portable path to file '`:placeholder:`A`:diagtext:`'; specified path differs in case from file name on disk`|
+------------------------------------------------------------------------------------------------------------------------------------------------------+


-Wnonportable-vector-initialization
-----------------------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+---------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`vector initializers are not compatible with NEON intrinsics in big endian mode`|
+---------------------------------------------------------------------------------------------------------------------+


-Wnontrivial-memaccess
----------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+---------------------------+-------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------+------------------------------------------+
|:warning:`warning:` |nbsp| |+-----------------------------+| |nbsp| :diagtext:`this` |nbsp| :placeholder:`B` |nbsp| :diagtext:`call is a pointer to record` |nbsp| :placeholder:`C` |nbsp| :diagtext:`that is not trivial to` |nbsp| |+----------------------------------------+|
|                           ||:diagtext:`destination for`  ||                                                                                                                                                                         ||:diagtext:`primitive-default-initialize`||
|                           |+-----------------------------+|                                                                                                                                                                         |+----------------------------------------+|
|                           ||:diagtext:`source of`        ||                                                                                                                                                                         ||:diagtext:`primitive-copy`              ||
|                           |+-----------------------------+|                                                                                                                                                                         |+----------------------------------------+|
|                           ||:diagtext:`first operand of` ||                                                                                                                                                                         |                                          |
|                           |+-----------------------------+|                                                                                                                                                                         |                                          |
|                           ||:diagtext:`second operand of`||                                                                                                                                                                         |                                          |
|                           |+-----------------------------+|                                                                                                                                                                         |                                          |
+---------------------------+-------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------+------------------------------------------+


-Wnsconsumed-mismatch
---------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+---------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`overriding method has mismatched ns\_consumed attribute on its parameter`|
+---------------------------------------------------------------------------------------------------------------+


-Wnsreturns-mismatch
--------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+-------------------------------------------------------------------------------------+---------------------------+------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`overriding method has mismatched ns\_returns\_`|+-------------------------+| |nbsp| :diagtext:`attributes`|
|                                                                                     ||:diagtext:`not\_retained`||                              |
|                                                                                     |+-------------------------+|                              |
|                                                                                     ||:diagtext:`retained`     ||                              |
|                                                                                     |+-------------------------+|                              |
+-------------------------------------------------------------------------------------+---------------------------+------------------------------+


-Wnull-arithmetic
-----------------
This diagnostic is enabled by default.

**Diagnostic text:**

+--------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`use of NULL in arithmetic operation`|
+--------------------------------------------------------------------------+

+--------------------------------------------------------------------------------------+--------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`comparison between NULL and non-pointer` |nbsp| |+------------------------------------------------------------+|
|                                                                                      ||+----------------------------------------------------------+||
|                                                                                      |||:diagtext:`(`:placeholder:`B` |nbsp| :diagtext:`and NULL)`|||
|                                                                                      ||+----------------------------------------------------------+||
|                                                                                      |+------------------------------------------------------------+|
|                                                                                      ||+----------------------------------------------------------+||
|                                                                                      |||:diagtext:`(NULL and` |nbsp| :placeholder:`B`:diagtext:`)`|||
|                                                                                      ||+----------------------------------------------------------+||
|                                                                                      |+------------------------------------------------------------+|
+--------------------------------------------------------------------------------------+--------------------------------------------------------------+


-Wnull-character
----------------
This diagnostic is enabled by default.

**Diagnostic text:**

+-----------------------------------------------------------------------------+--------------------+---------------------------+
|:warning:`warning:` |nbsp| :diagtext:`null character(s) preserved in` |nbsp| |+------------------+| |nbsp| :diagtext:`literal`|
|                                                                             ||:diagtext:`char`  ||                           |
|                                                                             |+------------------+|                           |
|                                                                             ||:diagtext:`string`||                           |
|                                                                             |+------------------+|                           |
+-----------------------------------------------------------------------------+--------------------+---------------------------+

+-------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`null character ignored`|
+-------------------------------------------------------------+


-Wnull-conversion
-----------------
This diagnostic is enabled by default.

**Diagnostic text:**

+---------------------------------------------------------------------+---------------------+-------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`implicit conversion of` |nbsp| |+-------------------+| |nbsp| :diagtext:`constant to` |nbsp| :placeholder:`B`|
|                                                                     ||:diagtext:`NULL`   ||                                                       |
|                                                                     |+-------------------+|                                                       |
|                                                                     ||:diagtext:`nullptr`||                                                       |
|                                                                     |+-------------------+|                                                       |
+---------------------------------------------------------------------+---------------------+-------------------------------------------------------+


-Wnull-dereference
------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`binding dereferenced null pointer to reference has undefined behavior`|
+------------------------------------------------------------------------------------------------------------+

+---------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`indirection of non-volatile null pointer will be deleted, not trap`|
+---------------------------------------------------------------------------------------------------------+


-Wnull-pointer-arithmetic
-------------------------
**Diagnostic text:**

+--------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`arithmetic on a null pointer treated as a cast from integer to pointer is a GNU extension`|
+--------------------------------------------------------------------------------------------------------------------------------+

+-------------------------------------------------------------------------------------------------------------+----------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`performing pointer arithmetic on a null pointer has undefined behavior`|+--------------------------------------------+|
|                                                                                                             ||                                            ||
|                                                                                                             |+--------------------------------------------+|
|                                                                                                             || |nbsp| :diagtext:`if the offset is nonzero`||
|                                                                                                             |+--------------------------------------------+|
+-------------------------------------------------------------------------------------------------------------+----------------------------------------------+


-Wnullability
-------------
This diagnostic is enabled by default.

**Diagnostic text:**

+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`conflicting nullability specifier on parameter types,` |nbsp| :placeholder:`A` |nbsp| :diagtext:`conflicts with existing specifier` |nbsp| :placeholder:`B`|
+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+

+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`conflicting nullability specifier on return types,` |nbsp| :placeholder:`A` |nbsp| :diagtext:`conflicts with existing specifier` |nbsp| :placeholder:`B`|
+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+

+-----------------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`nullability specifier` |nbsp| :placeholder:`A` |nbsp| :diagtext:`conflicts with existing specifier` |nbsp| :placeholder:`B`|
+-----------------------------------------------------------------------------------------------------------------------------------------------------------------+

+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`synthesized setter` |nbsp| :placeholder:`A` |nbsp| :diagtext:`for null\_resettable property` |nbsp| :placeholder:`B` |nbsp| :diagtext:`does not handle nil`|
+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+

+----------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`duplicate nullability specifier` |nbsp| :placeholder:`A`|
+----------------------------------------------------------------------------------------------+


-Wnullability-completeness
--------------------------
This diagnostic is enabled by default.

Also controls `-Wnullability-completeness-on-arrays`_.

**Diagnostic text:**

+---------------------------+----------------------------+-----------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| |+--------------------------+| |nbsp| :diagtext:`is missing a nullability type specifier (\_Nonnull, \_Nullable, or \_Null\_unspecified)`|
|                           ||:diagtext:`pointer`       ||                                                                                                           |
|                           |+--------------------------+|                                                                                                           |
|                           ||:diagtext:`block pointer` ||                                                                                                           |
|                           |+--------------------------+|                                                                                                           |
|                           ||:diagtext:`member pointer`||                                                                                                           |
|                           |+--------------------------+|                                                                                                           |
+---------------------------+----------------------------+-----------------------------------------------------------------------------------------------------------+


-Wnullability-completeness-on-arrays
------------------------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+----------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`array parameter is missing a nullability type specifier (\_Nonnull, \_Nullable, or \_Null\_unspecified)`|
+----------------------------------------------------------------------------------------------------------------------------------------------+


-Wnullability-declspec
----------------------
This diagnostic is an error by default, but the flag ``-Wno-nullability-declspec`` can be used to disable the error.

**Diagnostic text:**

+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+-------------------------------------+-------------+
|:error:`error:` |nbsp| :diagtext:`nullability specifier` |nbsp| :placeholder:`A` |nbsp| :diagtext:`cannot be applied to non-pointer type` |nbsp| :placeholder:`B`:diagtext:`; did you mean to apply the specifier to the` |nbsp| |+-----------------------------------+|:diagtext:`?`|
|                                                                                                                                                                                                                                 ||:diagtext:`pointer`                ||             |
|                                                                                                                                                                                                                                 |+-----------------------------------+|             |
|                                                                                                                                                                                                                                 ||:diagtext:`block pointer`          ||             |
|                                                                                                                                                                                                                                 |+-----------------------------------+|             |
|                                                                                                                                                                                                                                 ||:diagtext:`member pointer`         ||             |
|                                                                                                                                                                                                                                 |+-----------------------------------+|             |
|                                                                                                                                                                                                                                 ||:diagtext:`function pointer`       ||             |
|                                                                                                                                                                                                                                 |+-----------------------------------+|             |
|                                                                                                                                                                                                                                 ||:diagtext:`member function pointer`||             |
|                                                                                                                                                                                                                                 |+-----------------------------------+|             |
+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+-------------------------------------+-------------+


-Wnullability-extension
-----------------------
**Diagnostic text:**

+---------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`type nullability specifier` |nbsp| :placeholder:`A` |nbsp| :diagtext:`is a Clang extension`|
+---------------------------------------------------------------------------------------------------------------------------------+


-Wnullability-inferred-on-nested-type
-------------------------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+--------------------------------------------------------------------------------------------+-----------------------+---------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`inferring '\_Nonnull' for pointer type within` |nbsp| |+---------------------+| |nbsp| :diagtext:`is deprecated`|
|                                                                                            ||:diagtext:`array`    ||                                 |
|                                                                                            |+---------------------+|                                 |
|                                                                                            ||:diagtext:`reference`||                                 |
|                                                                                            |+---------------------+|                                 |
+--------------------------------------------------------------------------------------------+-----------------------+---------------------------------+


-Wnullable-to-nonnull-conversion
--------------------------------
**Diagnostic text:**

+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`implicit conversion from nullable pointer` |nbsp| :placeholder:`A` |nbsp| :diagtext:`to non-nullable pointer type` |nbsp| :placeholder:`B`|
+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+


-Wobjc-autosynthesis-property-ivar-name-match
---------------------------------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+---------------------------------------------------------------------------------------------------------------------------+-------------------------+---------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`autosynthesized property` |nbsp| :placeholder:`A` |nbsp| :diagtext:`will use` |nbsp| |+-----------------------+| |nbsp| :diagtext:`instance variable` |nbsp| :placeholder:`C`:diagtext:`, not existing instance variable` |nbsp| :placeholder:`D`|
|                                                                                                                           ||                       ||                                                                                                                                 |
|                                                                                                                           |+-----------------------+|                                                                                                                                 |
|                                                                                                                           ||:diagtext:`synthesized`||                                                                                                                                 |
|                                                                                                                           |+-----------------------+|                                                                                                                                 |
+---------------------------------------------------------------------------------------------------------------------------+-------------------------+---------------------------------------------------------------------------------------------------------------------------------+


-Wobjc-bool-constant-conversion
-------------------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`implicit conversion from constant value` |nbsp| :placeholder:`A` |nbsp| :diagtext:`to BOOL; the only well defined values for BOOL are YES and NO`|
+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+


-Wobjc-boxing
-------------
This diagnostic is enabled by default.

**Diagnostic text:**

+-------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`string is ill-formed as UTF-8 and will become a null` |nbsp| :placeholder:`A` |nbsp| :diagtext:`when boxed`|
+-------------------------------------------------------------------------------------------------------------------------------------------------+


-Wobjc-circular-container
-------------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`adding` |nbsp| :placeholder:`A` |nbsp| :diagtext:`to` |nbsp| :placeholder:`B` |nbsp| :diagtext:`might cause circular dependency in container`|
+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+


-Wobjc-cocoa-api
----------------
Synonym for `-Wobjc-redundant-api-use`_.


-Wobjc-designated-initializers
------------------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+-----------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`designated initializer missing a 'super' call to a designated initializer of the super class`|
+-----------------------------------------------------------------------------------------------------------------------------------+

+--------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`designated initializer invoked a non-designated initializer`|
+--------------------------------------------------------------------------------------------------+

+--------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`designated initializer should only invoke a designated initializer on 'super'`|
+--------------------------------------------------------------------------------------------------------------------+

+------------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`method override for the designated initializer of the superclass` |nbsp| :placeholder:`A` |nbsp| :diagtext:`not found`|
+------------------------------------------------------------------------------------------------------------------------------------------------------------+

+-----------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`convenience initializer missing a 'self' call to another initializer`|
+-----------------------------------------------------------------------------------------------------------+

+----------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`convenience initializer should not invoke an initializer on 'super'`|
+----------------------------------------------------------------------------------------------------------+


-Wobjc-flexible-array
---------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`field` |nbsp| :placeholder:`A` |nbsp| :diagtext:`can overwrite instance variable` |nbsp| :placeholder:`B` |nbsp| :diagtext:`with variable sized type` |nbsp| :placeholder:`C` |nbsp| :diagtext:`in superclass` |nbsp| :placeholder:`D`|
+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+

+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`field` |nbsp| :placeholder:`A` |nbsp| :diagtext:`with variable sized type` |nbsp| :placeholder:`B` |nbsp| :diagtext:`is not visible to subclasses and can conflict with their instance variables`|
+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+


-Wobjc-forward-class-redefinition
---------------------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+--------------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`redefinition of forward class` |nbsp| :placeholder:`A` |nbsp| :diagtext:`of a typedef name of an object type is ignored`|
+--------------------------------------------------------------------------------------------------------------------------------------------------------------+


-Wobjc-interface-ivars
----------------------
**Diagnostic text:**

+-------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`declaration of instance variables in the interface is deprecated`|
+-------------------------------------------------------------------------------------------------------+


-Wobjc-literal-compare
----------------------
This diagnostic is enabled by default.

Also controls `-Wobjc-string-compare`_.

**Diagnostic text:**

+-------------------------------------------------------------------+----------------------------------+------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`direct comparison of` |nbsp| |+--------------------------------+| |nbsp| :diagtext:`has undefined behavior`|
|                                                                   ||:diagtext:`an array literal`    ||                                          |
|                                                                   |+--------------------------------+|                                          |
|                                                                   ||:diagtext:`a dictionary literal`||                                          |
|                                                                   |+--------------------------------+|                                          |
|                                                                   ||:diagtext:`a numeric literal`   ||                                          |
|                                                                   |+--------------------------------+|                                          |
|                                                                   ||:diagtext:`a boxed expression`  ||                                          |
|                                                                   |+--------------------------------+|                                          |
|                                                                   ||                                ||                                          |
|                                                                   |+--------------------------------+|                                          |
+-------------------------------------------------------------------+----------------------------------+------------------------------------------+


-Wobjc-literal-conversion
-------------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+-------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`implicit boolean conversion of Objective-C object literal always evaluates to true`|
+-------------------------------------------------------------------------------------------------------------------------+

+-------------------------------------------------------------------------------------------------------------------------------+-----------------------------------+------------------------+
|:warning:`warning:` |nbsp| :diagtext:`object of type` |nbsp| :placeholder:`A` |nbsp| :diagtext:`is not compatible with` |nbsp| |+---------------------------------+| |nbsp| :placeholder:`C`|
|                                                                                                                               ||:diagtext:`array element type`   ||                        |
|                                                                                                                               |+---------------------------------+|                        |
|                                                                                                                               ||:diagtext:`dictionary key type`  ||                        |
|                                                                                                                               |+---------------------------------+|                        |
|                                                                                                                               ||:diagtext:`dictionary value type`||                        |
|                                                                                                                               |+---------------------------------+|                        |
+-------------------------------------------------------------------------------------------------------------------------------+-----------------------------------+------------------------+


-Wobjc-macro-redefinition
-------------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+-------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`ignoring redefinition of Objective-C qualifier macro`|
+-------------------------------------------------------------------------------------------+


-Wobjc-messaging-id
-------------------
**Diagnostic text:**

+---------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`messaging unqualified id`|
+---------------------------------------------------------------+


-Wobjc-method-access
--------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+---------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`class method` |nbsp| :placeholder:`A` |nbsp| :diagtext:`not found (return type defaults to 'id')`|
+---------------------------------------------------------------------------------------------------------------------------------------+

+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`class method` |nbsp| :placeholder:`A` |nbsp| :diagtext:`not found (return type defaults to 'id'); did you mean` |nbsp| :placeholder:`C`:diagtext:`?`|
+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+

+------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`instance method` |nbsp| :placeholder:`A` |nbsp| :diagtext:`not found (return type defaults to 'id')`|
+------------------------------------------------------------------------------------------------------------------------------------------+

+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`instance method` |nbsp| :placeholder:`A` |nbsp| :diagtext:`not found (return type defaults to 'id'); did you mean` |nbsp| :placeholder:`C`:diagtext:`?`|
+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+

+-------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`instance method` |nbsp| :placeholder:`A` |nbsp| :diagtext:`found instead of class method` |nbsp| :placeholder:`B`|
+-------------------------------------------------------------------------------------------------------------------------------------------------------+

+---------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`instance method` |nbsp| :placeholder:`A` |nbsp| :diagtext:`is being used on 'Class' which is not in the root class`|
+---------------------------------------------------------------------------------------------------------------------------------------------------------+


-Wobjc-missing-property-synthesis
---------------------------------
**Diagnostic text:**

+------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`auto property synthesis is synthesizing property not explicitly synthesized`|
+------------------------------------------------------------------------------------------------------------------+


-Wobjc-missing-super-calls
--------------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+-------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`method possibly missing a \[super` |nbsp| :placeholder:`A`:diagtext:`\] call`|
+-------------------------------------------------------------------------------------------------------------------+


-Wobjc-multiple-method-names
----------------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+--------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`multiple methods named` |nbsp| :placeholder:`A` |nbsp| :diagtext:`found`|
+--------------------------------------------------------------------------------------------------------------+


-Wobjc-noncopy-retain-block-property
------------------------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+--------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`retain'ed block property does not copy the block - use copy attribute instead`|
+--------------------------------------------------------------------------------------------------------------------+


-Wobjc-nonunified-exceptions
----------------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+-----------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`cannot catch an exception thrown with @throw in C++ in the non-unified exception model`|
+-----------------------------------------------------------------------------------------------------------------------------+


-Wobjc-property-assign-on-object-type
-------------------------------------
**Diagnostic text:**

+--------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`'assign' property of object type may become a dangling reference; consider using 'unsafe\_unretained'`|
+--------------------------------------------------------------------------------------------------------------------------------------------+


-Wobjc-property-implementation
------------------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`class property` |nbsp| :placeholder:`A` |nbsp| :diagtext:`requires method` |nbsp| :placeholder:`B` |nbsp| :diagtext:`to be defined - use @dynamic or provide a method implementation in this class implementation`|
+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+

+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`class property` |nbsp| :placeholder:`A` |nbsp| :diagtext:`requires method` |nbsp| :placeholder:`B` |nbsp| :diagtext:`to be defined - use @dynamic or provide a method implementation in this category`|
+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+

+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`property` |nbsp| :placeholder:`A` |nbsp| :diagtext:`requires method` |nbsp| :placeholder:`B` |nbsp| :diagtext:`to be defined - use @synthesize, @dynamic or provide a method implementation in this class implementation`|
+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+

+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`property` |nbsp| :placeholder:`A` |nbsp| :diagtext:`requires method` |nbsp| :placeholder:`B` |nbsp| :diagtext:`to be defined - use @dynamic or provide a method implementation in this category`|
+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+


-Wobjc-property-implicit-mismatch
---------------------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+---------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`primary property declaration is implicitly strong while redeclaration in class extension is weak`|
+---------------------------------------------------------------------------------------------------------------------------------------+


-Wobjc-property-matches-cocoa-ownership-rule
--------------------------------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+-------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`property follows Cocoa naming convention for returning 'owned' objects`|
+-------------------------------------------------------------------------------------------------------------+


-Wobjc-property-no-attribute
----------------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+-----------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`default property attribute 'assign' not appropriate for object`|
+-----------------------------------------------------------------------------------------------------+

+--------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`no 'assign', 'retain', or 'copy' attribute is specified - 'assign' is assumed`|
+--------------------------------------------------------------------------------------------------------------------+


-Wobjc-property-synthesis
-------------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`auto property synthesis will not synthesize property` |nbsp| :placeholder:`A`:diagtext:`; it will be implemented by its superclass, use @dynamic to acknowledge intention`|
+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+

+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`auto property synthesis will not synthesize property` |nbsp| :placeholder:`A` |nbsp| :diagtext:`because it is 'readwrite' but it will be synthesized 'readonly' via another property`|
+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+

+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`auto property synthesis will not synthesize property` |nbsp| :placeholder:`A` |nbsp| :diagtext:`because it cannot share an ivar with another synthesized property`|
+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+


-Wobjc-protocol-method-implementation
-------------------------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+----------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`category is implementing a method which will also be implemented by its primary class`|
+----------------------------------------------------------------------------------------------------------------------------+


-Wobjc-protocol-property-synthesis
----------------------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`auto property synthesis will not synthesize property` |nbsp| :placeholder:`A` |nbsp| :diagtext:`declared in protocol` |nbsp| :placeholder:`B`|
+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+


-Wobjc-protocol-qualifiers
--------------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+----------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`parameterized class` |nbsp| :placeholder:`A` |nbsp| :diagtext:`already conforms to the protocols listed; did you forget a '\*'?`|
+----------------------------------------------------------------------------------------------------------------------------------------------------------------------+


-Wobjc-readonly-with-setter-property
------------------------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+-----------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`setter cannot be specified for a readonly property`|
+-----------------------------------------------------------------------------------------+


-Wobjc-redundant-api-use
------------------------
Synonym for `-Wobjc-redundant-literal-use`_.


-Wobjc-redundant-literal-use
----------------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+-------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`using` |nbsp| :placeholder:`A` |nbsp| :diagtext:`with a literal is redundant`|
+-------------------------------------------------------------------------------------------------------------------+


-Wobjc-root-class
-----------------
This diagnostic is enabled by default.

**Diagnostic text:**

+-------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`class` |nbsp| :placeholder:`A` |nbsp| :diagtext:`defined without specifying a base class`|
+-------------------------------------------------------------------------------------------------------------------------------+


-Wobjc-string-compare
---------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+---------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`direct comparison of a string literal has undefined behavior`|
+---------------------------------------------------------------------------------------------------+


-Wobjc-string-concatenation
---------------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+-------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`concatenated NSString literal for an NSArray expression - possibly missing a comma`|
+-------------------------------------------------------------------------------------------------------------------------+


-Wobjc-unsafe-perform-selector
------------------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+-------------------------------------------------------------------------------------------------------------------+--------------------+------------------------+
|:warning:`warning:` |nbsp| :placeholder:`A` |nbsp| :diagtext:`is incompatible with selectors that return a` |nbsp| |+------------------+| |nbsp| :diagtext:`type`|
|                                                                                                                   ||:diagtext:`struct`||                        |
|                                                                                                                   |+------------------+|                        |
|                                                                                                                   ||:diagtext:`union` ||                        |
|                                                                                                                   |+------------------+|                        |
|                                                                                                                   ||:diagtext:`vector`||                        |
|                                                                                                                   |+------------------+|                        |
+-------------------------------------------------------------------------------------------------------------------+--------------------+------------------------+


-Wodr
-----
This diagnostic is enabled by default.

**Diagnostic text:**

+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`template parameter lists have a different number of parameters (`:placeholder:`A` |nbsp| :diagtext:`vs` |nbsp| :placeholder:`B`:diagtext:`)`|
+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+

+------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`template parameter has different kinds in different translation units`|
+------------------------------------------------------------------------------------------------------------+

+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`field` |nbsp| :placeholder:`A` |nbsp| :diagtext:`declared with incompatible types in different translation units (`:placeholder:`B` |nbsp| :diagtext:`vs.` |nbsp| :placeholder:`C`:diagtext:`)`|
+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+

+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`external function` |nbsp| :placeholder:`A` |nbsp| :diagtext:`declared with incompatible types in different translation units (`:placeholder:`B` |nbsp| :diagtext:`vs.` |nbsp| :placeholder:`C`:diagtext:`)`|
+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+

+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`instance variable` |nbsp| :placeholder:`A` |nbsp| :diagtext:`declared with incompatible types in different translation units (`:placeholder:`B` |nbsp| :diagtext:`vs.` |nbsp| :placeholder:`C`:diagtext:`)`|
+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+

+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`non-type template parameter declared with incompatible types in different translation units (`:placeholder:`A` |nbsp| :diagtext:`vs.` |nbsp| :placeholder:`B`:diagtext:`)`|
+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+

+---------------------------+----------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| |+--------------------+| |nbsp| :diagtext:`method` |nbsp| :placeholder:`B` |nbsp| :diagtext:`has a different number of parameters in different translation units (`:placeholder:`C` |nbsp| :diagtext:`vs.` |nbsp| :placeholder:`D`:diagtext:`)`|
|                           ||:diagtext:`class`   ||                                                                                                                                                                                                                       |
|                           |+--------------------+|                                                                                                                                                                                                                       |
|                           ||:diagtext:`instance`||                                                                                                                                                                                                                       |
|                           |+--------------------+|                                                                                                                                                                                                                       |
+---------------------------+----------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+

+---------------------------+----------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| |+--------------------+| |nbsp| :diagtext:`method` |nbsp| :placeholder:`B` |nbsp| :diagtext:`has a parameter with a different types in different translation units (`:placeholder:`C` |nbsp| :diagtext:`vs.` |nbsp| :placeholder:`D`:diagtext:`)`|
|                           ||:diagtext:`class`   ||                                                                                                                                                                                                                         |
|                           |+--------------------+|                                                                                                                                                                                                                         |
|                           ||:diagtext:`instance`||                                                                                                                                                                                                                         |
|                           |+--------------------+|                                                                                                                                                                                                                         |
+---------------------------+----------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+

+---------------------------+----------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| |+--------------------+| |nbsp| :diagtext:`method` |nbsp| :placeholder:`B` |nbsp| :diagtext:`has incompatible result types in different translation units (`:placeholder:`C` |nbsp| :diagtext:`vs.` |nbsp| :placeholder:`D`:diagtext:`)`|
|                           ||:diagtext:`class`   ||                                                                                                                                                                                                                |
|                           |+--------------------+|                                                                                                                                                                                                                |
|                           ||:diagtext:`instance`||                                                                                                                                                                                                                |
|                           |+--------------------+|                                                                                                                                                                                                                |
+---------------------------+----------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+

+---------------------------+----------------------+-------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| |+--------------------+| |nbsp| :diagtext:`method` |nbsp| :placeholder:`B` |nbsp| :diagtext:`is variadic in one translation unit and not variadic in another`|
|                           ||:diagtext:`class`   ||                                                                                                                                     |
|                           |+--------------------+|                                                                                                                                     |
|                           ||:diagtext:`instance`||                                                                                                                                     |
|                           |+--------------------+|                                                                                                                                     |
+---------------------------+----------------------+-------------------------------------------------------------------------------------------------------------------------------------+

+----------------------------------------------------------------------------------------------------------------------+-------------------------+--------------------------------------------------+-------------------------+-----------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`property` |nbsp| :placeholder:`A` |nbsp| :diagtext:`is implemented with` |nbsp| |+-----------------------+| |nbsp| :diagtext:`in one translation but` |nbsp| |+-----------------------+| |nbsp| :diagtext:`in another translation unit`|
|                                                                                                                      ||:diagtext:`@synthesize`||                                                  ||:diagtext:`@dynamic`   ||                                               |
|                                                                                                                      |+-----------------------+|                                                  |+-----------------------+|                                               |
|                                                                                                                      ||:diagtext:`@dynamic`   ||                                                  ||:diagtext:`@synthesize`||                                               |
|                                                                                                                      |+-----------------------+|                                                  |+-----------------------+|                                               |
+----------------------------------------------------------------------------------------------------------------------+-------------------------+--------------------------------------------------+-------------------------+-----------------------------------------------+

+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`property` |nbsp| :placeholder:`A` |nbsp| :diagtext:`declared with incompatible types in different translation units (`:placeholder:`B` |nbsp| :diagtext:`vs.` |nbsp| :placeholder:`C`:diagtext:`)`|
+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+

+---------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`class` |nbsp| :placeholder:`A` |nbsp| :diagtext:`has incompatible superclasses`|
+---------------------------------------------------------------------------------------------------------------------+

+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`property` |nbsp| :placeholder:`A` |nbsp| :diagtext:`is synthesized to different ivars in different translation units (`:placeholder:`B` |nbsp| :diagtext:`vs.` |nbsp| :placeholder:`C`:diagtext:`)`|
+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+

+------------------------------------------------------------------------------------+-------------------+----------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`parameter kind mismatch; parameter is` |nbsp| |+-----------------+| |nbsp| :diagtext:`parameter pack`|
|                                                                                    ||:diagtext:`not a`||                                  |
|                                                                                    |+-----------------+|                                  |
|                                                                                    ||:diagtext:`a`    ||                                  |
|                                                                                    |+-----------------+|                                  |
+------------------------------------------------------------------------------------+-------------------+----------------------------------+

+--------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`type` |nbsp| :placeholder:`A` |nbsp| :diagtext:`has incompatible definitions in different translation units`|
+--------------------------------------------------------------------------------------------------------------------------------------------------+

+-----------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`external variable` |nbsp| :placeholder:`A` |nbsp| :diagtext:`defined in multiple translation units`|
+-----------------------------------------------------------------------------------------------------------------------------------------+

+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`external variable` |nbsp| :placeholder:`A` |nbsp| :diagtext:`declared with incompatible types in different translation units (`:placeholder:`B` |nbsp| :diagtext:`vs.` |nbsp| :placeholder:`C`:diagtext:`)`|
+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+


-Wold-style-cast
----------------
**Diagnostic text:**

+------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`use of old-style cast`|
+------------------------------------------------------------+


-Wold-style-definition
----------------------
This diagnostic flag exists for GCC compatibility, and has no effect in Clang.

-Wopencl-unsupported-rgba
-------------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+----------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`vector component name '`:placeholder:`A`:diagtext:`' is an OpenCL version 2.2 feature`|
+----------------------------------------------------------------------------------------------------------------------------+


-Wopenmp-clauses
----------------
This diagnostic is enabled by default.

**Diagnostic text:**

+-------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`aligned clause will be ignored because the requested alignment is not a power of 2`|
+-------------------------------------------------------------------------------------------------------------------------+

+----------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`allocator with the 'thread' trait access has unspecified behavior on '`:placeholder:`A`:diagtext:`' directive`|
+----------------------------------------------------------------------------------------------------------------------------------------------------+

+---------------------------------------------------------------------------------+---------------------------------------------------+-------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`zero linear step (`:placeholder:`A` |nbsp| |+-------------------------------------------------+|:diagtext:`should probably be const)`|
|                                                                                 ||                                                 ||                                     |
|                                                                                 |+-------------------------------------------------+|                                     |
|                                                                                 ||:diagtext:`and other variables in clause` |nbsp| ||                                     |
|                                                                                 |+-------------------------------------------------+|                                     |
+---------------------------------------------------------------------------------+---------------------------------------------------+-------------------------------------+

+---------------------------------------------------------------------------+----------------------------------------------+-----------------------------------------------------------+----------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`allocate directive specifies` |nbsp| |+--------------------------------------------+| |nbsp| :diagtext:`allocator while previously used` |nbsp| |+--------------------------------------------+|
|                                                                           ||:diagtext:`default`                         ||                                                           ||:diagtext:`default`                         ||
|                                                                           |+--------------------------------------------+|                                                           |+--------------------------------------------+|
|                                                                           ||+------------------------------------------+||                                                           ||+------------------------------------------+||
|                                                                           |||:diagtext:`'`:placeholder:`B`:diagtext:`'`|||                                                           |||:diagtext:`'`:placeholder:`D`:diagtext:`'`|||
|                                                                           ||+------------------------------------------+||                                                           ||+------------------------------------------+||
|                                                                           |+--------------------------------------------+|                                                           |+--------------------------------------------+|
+---------------------------------------------------------------------------+----------------------------------------------+-----------------------------------------------------------+----------------------------------------------+


-Wopenmp-loop-form
------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+-----------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`initialization clause of OpenMP for loop is not in canonical form ('var = init' or 'T var = init')`|
+-----------------------------------------------------------------------------------------------------------------------------------------+

+-----------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`OpenMP loop iteration variable cannot have more than 64 bits size and will be narrowed`|
+-----------------------------------------------------------------------------------------------------------------------------+


-Wopenmp-target
---------------
This diagnostic is enabled by default.

**Diagnostic text:**

+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`The OpenMP offloading target '`:placeholder:`A`:diagtext:`' is similar to target '`:placeholder:`B`:diagtext:`' already specified - will be ignored.`|
+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+

+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`No library '`:placeholder:`A`:diagtext:`' found in the default clang lib directory or in LIBRARY\_PATH. Expect degraded performance due to no inlining of runtime functions on target devices.`|
+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+

+----------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`Non-trivial type` |nbsp| :placeholder:`A` |nbsp| :diagtext:`is mapped, only trivial types are guaranteed to be mapped correctly`|
+----------------------------------------------------------------------------------------------------------------------------------------------------------------------+

+-----------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`declaration is not declared in any declare target region`|
+-----------------------------------------------------------------------------------------------+


-Woption-ignored
----------------
This diagnostic is enabled by default.

**Diagnostic text:**

+------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`option '-ffine-grained-bitfield-accesses' cannot be enabled together with a sanitizer; flag ignored`|
+------------------------------------------------------------------------------------------------------------------------------------------+

+-------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`The '`:placeholder:`A`:diagtext:`' architecture does not support -moutline; flag ignored`|
+-------------------------------------------------------------------------------------------------------------------------------+

+----------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`option '`:placeholder:`A`:diagtext:`' was ignored by the PS4 toolchain, using '-fPIC'`|
+----------------------------------------------------------------------------------------------------------------------------+

+-------------------------------------------------------------------------------------------------------------------+-------------------------------------------+----------------------+
|:warning:`warning:` |nbsp| :diagtext:`ignoring '-mlong-calls' option as it is not currently supported with` |nbsp| |+-----------------------------------------+|:diagtext:`-mabicalls`|
|                                                                                                                   ||                                         ||                      |
|                                                                                                                   |+-----------------------------------------+|                      |
|                                                                                                                   ||:diagtext:`the implicit usage of` |nbsp| ||                      |
|                                                                                                                   |+-----------------------------------------+|                      |
+-------------------------------------------------------------------------------------------------------------------+-------------------------------------------+----------------------+

+-----------------------------------------------------------------------------------------------------------------------+-------------------------------+----------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`ignoring '`:placeholder:`A`:diagtext:`' option as it cannot be used with` |nbsp| |+-----------------------------+| |nbsp| :diagtext:`-mabicalls and the N64 ABI`|
|                                                                                                                       ||:diagtext:`implicit usage of`||                                              |
|                                                                                                                       |+-----------------------------+|                                              |
|                                                                                                                       ||                             ||                                              |
|                                                                                                                       |+-----------------------------+|                                              |
+-----------------------------------------------------------------------------------------------------------------------+-------------------------------+----------------------------------------------+

+----------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`auto-vectorization requires HVX, use -mhvx to enable it`|
+----------------------------------------------------------------------------------------------+


-Wordered-compare-function-pointers
-----------------------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+------------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`ordered comparison of function pointers (`:placeholder:`A` |nbsp| :diagtext:`and` |nbsp| :placeholder:`B`:diagtext:`)`|
+------------------------------------------------------------------------------------------------------------------------------------------------------------+


-Wout-of-line-declaration
-------------------------
This diagnostic is an error by default, but the flag ``-Wno-out-of-line-declaration`` can be used to disable the error.

**Diagnostic text:**

+-------------------------------------------------------------------------------------------+
|:error:`error:` |nbsp| :diagtext:`out-of-line declaration of a member must be a definition`|
+-------------------------------------------------------------------------------------------+


-Wout-of-scope-function
-----------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+-------------------------------------------------------------------------------------------------+---------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`use of out-of-scope declaration of` |nbsp| :placeholder:`A`|+-------------------------------------------------------------------------------------+|
|                                                                                                 ||                                                                                     ||
|                                                                                                 |+-------------------------------------------------------------------------------------+|
|                                                                                                 || |nbsp| :diagtext:`whose type is not compatible with that of an implicit declaration`||
|                                                                                                 |+-------------------------------------------------------------------------------------+|
+-------------------------------------------------------------------------------------------------+---------------------------------------------------------------------------------------+


-Wover-aligned
--------------
**Diagnostic text:**

+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`type` |nbsp| :placeholder:`A` |nbsp| :diagtext:`requires` |nbsp| :placeholder:`B` |nbsp| :diagtext:`bytes of alignment and the default allocator only guarantees` |nbsp| :placeholder:`C` |nbsp| :diagtext:`bytes`|
+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+


-Woverflow
----------
This diagnostic flag exists for GCC compatibility, and has no effect in Clang.

-Woverlength-strings
--------------------
**Diagnostic text:**

+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+---------------------+-----------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`string literal of length` |nbsp| :placeholder:`A` |nbsp| :diagtext:`exceeds maximum length` |nbsp| :placeholder:`B` |nbsp| :diagtext:`that` |nbsp| |+-------------------+| |nbsp| :diagtext:`compilers are required to support`|
|                                                                                                                                                                                         ||:diagtext:`C90`    ||                                                     |
|                                                                                                                                                                                         |+-------------------+|                                                     |
|                                                                                                                                                                                         ||:diagtext:`ISO C99`||                                                     |
|                                                                                                                                                                                         |+-------------------+|                                                     |
|                                                                                                                                                                                         ||:diagtext:`C++`    ||                                                     |
|                                                                                                                                                                                         |+-------------------+|                                                     |
+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+---------------------+-----------------------------------------------------+


-Woverloaded-shift-op-parentheses
---------------------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+------------------------------------------------------------------+----------------+------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`overloaded operator` |nbsp| |+--------------+| |nbsp| :diagtext:`has higher precedence than comparison operator`|
|                                                                  ||:diagtext:`>>`||                                                                  |
|                                                                  |+--------------+|                                                                  |
|                                                                  ||:diagtext:`<<`||                                                                  |
|                                                                  |+--------------+|                                                                  |
+------------------------------------------------------------------+----------------+------------------------------------------------------------------+


-Woverloaded-virtual
--------------------
**Diagnostic text:**

+-----------------------------------------------------------------------------------------------+-----------------------+
|:warning:`warning:` |nbsp| :placeholder:`A` |nbsp| :diagtext:`hides overloaded virtual` |nbsp| |+---------------------+|
|                                                                                               ||:diagtext:`function` ||
|                                                                                               |+---------------------+|
|                                                                                               ||:diagtext:`functions`||
|                                                                                               |+---------------------+|
+-----------------------------------------------------------------------------------------------+-----------------------+


-Woverride-init
---------------
Synonym for `-Winitializer-overrides`_.


-Woverride-module
-----------------
This diagnostic is enabled by default.

**Diagnostic text:**

+-------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`overriding the module target triple with` |nbsp| :placeholder:`A`|
+-------------------------------------------------------------------------------------------------------+


-Woverriding-method-mismatch
----------------------------
**Diagnostic text:**

+-------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`conflicting distributed object modifiers on parameter type in declaration of` |nbsp| :placeholder:`A`|
+-------------------------------------------------------------------------------------------------------------------------------------------+

+------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`conflicting parameter types in declaration of` |nbsp| :placeholder:`A`|
+------------------------------------------------------------------------------------------------------------+

+----------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`conflicting distributed object modifiers on return type in declaration of` |nbsp| :placeholder:`A`|
+----------------------------------------------------------------------------------------------------------------------------------------+

+--------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`conflicting return type in declaration of` |nbsp| :placeholder:`A`|
+--------------------------------------------------------------------------------------------------------+

+--------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`conflicting variadic declaration of method and its implementation`|
+--------------------------------------------------------------------------------------------------------+

+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`conflicting parameter types in declaration of` |nbsp| :placeholder:`A`:diagtext:`:` |nbsp| :placeholder:`B` |nbsp| :diagtext:`vs` |nbsp| :placeholder:`C`|
+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+

+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`conflicting return type in declaration of` |nbsp| :placeholder:`A`:diagtext:`:` |nbsp| :placeholder:`B` |nbsp| :diagtext:`vs` |nbsp| :placeholder:`C`|
+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+


-Woverriding-t-option
---------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+---------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`overriding '`:placeholder:`A`:diagtext:`' option with '`:placeholder:`B`:diagtext:`'`|
+---------------------------------------------------------------------------------------------------------------------------+


-Wpacked
--------
**Diagnostic text:**

+--------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`packed attribute is unnecessary for` |nbsp| :placeholder:`A`|
+--------------------------------------------------------------------------------------------------+


-Wpadded
--------
**Diagnostic text:**

+------------------------------------------------------+-----------------------+--------------------------------------------------------------------------------+------------------+---------------+------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`padding` |nbsp| |+---------------------+| |nbsp| :placeholder:`B` |nbsp| :diagtext:`with` |nbsp| :placeholder:`C` |nbsp| |+----------------+|+-------------+| |nbsp| :diagtext:`to align anonymous bit-field`|
|                                                      ||:diagtext:`struct`   ||                                                                                ||:diagtext:`byte`|||             ||                                                |
|                                                      |+---------------------+|                                                                                |+----------------+|+-------------+|                                                |
|                                                      ||:diagtext:`interface`||                                                                                ||:diagtext:`bit` |||:diagtext:`s`||                                                |
|                                                      |+---------------------+|                                                                                |+----------------+|+-------------+|                                                |
|                                                      ||:diagtext:`class`    ||                                                                                |                  |               |                                                |
|                                                      |+---------------------+|                                                                                |                  |               |                                                |
+------------------------------------------------------+-----------------------+--------------------------------------------------------------------------------+------------------+---------------+------------------------------------------------+

+------------------------------------------------------+-----------------------+--------------------------------------------------------------------------------+------------------+---------------+----------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`padding` |nbsp| |+---------------------+| |nbsp| :placeholder:`B` |nbsp| :diagtext:`with` |nbsp| :placeholder:`C` |nbsp| |+----------------+|+-------------+| |nbsp| :diagtext:`to align` |nbsp| :placeholder:`E`|
|                                                      ||:diagtext:`struct`   ||                                                                                ||:diagtext:`byte`|||             ||                                                    |
|                                                      |+---------------------+|                                                                                |+----------------+|+-------------+|                                                    |
|                                                      ||:diagtext:`interface`||                                                                                ||:diagtext:`bit` |||:diagtext:`s`||                                                    |
|                                                      |+---------------------+|                                                                                |+----------------+|+-------------+|                                                    |
|                                                      ||:diagtext:`class`    ||                                                                                |                  |               |                                                    |
|                                                      |+---------------------+|                                                                                |                  |               |                                                    |
+------------------------------------------------------+-----------------------+--------------------------------------------------------------------------------+------------------+---------------+----------------------------------------------------+

+--------------------------------------------------------------------------------------------------------------------------------------+------------------+---------------+-----------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`padding size of` |nbsp| :placeholder:`A` |nbsp| :diagtext:`with` |nbsp| :placeholder:`B` |nbsp| |+----------------+|+-------------+| |nbsp| :diagtext:`to alignment boundary`|
|                                                                                                                                      ||:diagtext:`byte`|||             ||                                         |
|                                                                                                                                      |+----------------+|+-------------+|                                         |
|                                                                                                                                      ||:diagtext:`bit` |||:diagtext:`s`||                                         |
|                                                                                                                                      |+----------------+|+-------------+|                                         |
+--------------------------------------------------------------------------------------------------------------------------------------+------------------+---------------+-----------------------------------------+


-Wparentheses
-------------
This diagnostic is enabled by default.

Also controls `-Wbitwise-op-parentheses`_, `-Wdangling-else`_, `-Wlogical-not-parentheses`_, `-Wlogical-op-parentheses`_, `-Woverloaded-shift-op-parentheses`_, `-Wparentheses-equality`_, `-Wshift-op-parentheses`_.

**Diagnostic text:**

+-----------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`using the result of an assignment as a condition without parentheses`|
+-----------------------------------------------------------------------------------------------------------+

+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :placeholder:`A` |nbsp| :diagtext:`has lower precedence than` |nbsp| :placeholder:`B`:diagtext:`;` |nbsp| :placeholder:`B` |nbsp| :diagtext:`will be evaluated first`|
+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+

+---------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`operator '?:' has lower precedence than '`:placeholder:`A`:diagtext:`'; '`:placeholder:`A`:diagtext:`' will be evaluated first`|
+---------------------------------------------------------------------------------------------------------------------------------------------------------------------+


-Wparentheses-equality
----------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+--------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`equality comparison with extraneous parentheses`|
+--------------------------------------------------------------------------------------+


-Wpartial-availability
----------------------
Synonym for `-Wunguarded-availability`_.


-Rpass
------
**Diagnostic text:**

The text of this diagnostic is not controlled by Clang.


-Rpass-analysis
---------------
**Diagnostic text:**

The text of this diagnostic is not controlled by Clang.

+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|:remark:`remark:` |nbsp| :placeholder:`A`:diagtext:`; allow reordering by specifying '#pragma clang loop vectorize(enable)' before the loop. If the arrays will always be independent specify '#pragma clang loop vectorize(assume\_safety)' before the loop or provide the '\_\_restrict\_\_' qualifier with the independent array arguments. Erroneous results will occur if these options are incorrectly applied!`|
+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+

+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|:remark:`remark:` |nbsp| :placeholder:`A`:diagtext:`; allow reordering by specifying '#pragma clang loop vectorize(enable)' before the loop or by providing the compiler option '-ffast-math'.`|
+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+


-Wpass-failed
-------------
This diagnostic is enabled by default.

**Diagnostic text:**

The text of this diagnostic is not controlled by Clang.


-Rpass-missed
-------------
**Diagnostic text:**

The text of this diagnostic is not controlled by Clang.


-Wpch-date-time
---------------
This diagnostic is enabled by default.

**Diagnostic text:**

+---------------------------+--------------------------------+-----------------------------------------------------+
|:warning:`warning:` |nbsp| |+------------------------------+| |nbsp| :diagtext:`uses \_\_DATE\_\_ or \_\_TIME\_\_`|
|                           ||:diagtext:`precompiled header`||                                                     |
|                           |+------------------------------+|                                                     |
|                           ||:diagtext:`module`            ||                                                     |
|                           |+------------------------------+|                                                     |
+---------------------------+--------------------------------+-----------------------------------------------------+


-Wpedantic
----------
Also controls `-Wc++11-extra-semi`_, `-Wc++11-long-long`_, `-Wc++14-binary-literal`_, `-Wc11-extensions`_, `-Wcomplex-component-init`_, `-Wdeclaration-after-statement`_, `-Wdollar-in-identifier-extension`_, `-Wembedded-directive`_, `-Wempty-translation-unit`_, `-Wfixed-enum-extension`_, `-Wflexible-array-extensions`_, `-Wfour-char-constants`_, `-Wgnu-anonymous-struct`_, `-Wgnu-auto-type`_, `-Wgnu-binary-literal`_, `-Wgnu-case-range`_, `-Wgnu-complex-integer`_, `-Wgnu-compound-literal-initializer`_, `-Wgnu-conditional-omitted-operand`_, `-Wgnu-empty-initializer`_, `-Wgnu-empty-struct`_, `-Wgnu-flexible-array-initializer`_, `-Wgnu-flexible-array-union-member`_, `-Wgnu-folding-constant`_, `-Wgnu-imaginary-constant`_, `-Wgnu-include-next`_, `-Wgnu-label-as-value`_, `-Wgnu-redeclared-enum`_, `-Wgnu-statement-expression`_, `-Wgnu-union-cast`_, `-Wgnu-zero-line-directive`_, `-Wgnu-zero-variadic-macro-arguments`_, `-Wimport-preprocessor-directive-pedantic`_, `-Wkeyword-macro`_, `-Wlanguage-extension-token`_, `-Wlong-long`_, `-Wmicrosoft-charize`_, `-Wmicrosoft-comment-paste`_, `-Wmicrosoft-cpp-macro`_, `-Wmicrosoft-end-of-file`_, `-Wmicrosoft-enum-value`_, `-Wmicrosoft-fixed-enum`_, `-Wmicrosoft-flexible-array`_, `-Wmicrosoft-redeclare-static`_, `-Wnested-anon-types`_, `-Wnullability-extension`_, `-Woverlength-strings`_, `-Wretained-language-linkage`_, `-Wundefined-internal-type`_, `-Wvla-extension`_, `-Wzero-length-array`_.

**Diagnostic text:**

+-----------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`duplicate '`:placeholder:`A`:diagtext:`' declaration specifier`|
+-----------------------------------------------------------------------------------------------------+

+------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`'enable\_if' is a clang extension`|
+------------------------------------------------------------------------+

+--------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`'diagnose\_if' is a clang extension`|
+--------------------------------------------------------------------------+

+--------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`designated initializers are a C99 feature`|
+--------------------------------------------------------------------------------+

+--------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`ISO C++ does not allow 'main' to be used by a program`|
+--------------------------------------------------------------------------------------------+

+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+-----------------------+
|:warning:`warning:` |nbsp| :diagtext:`C++98 requires an accessible copy constructor for class` |nbsp| :placeholder:`C` |nbsp| :diagtext:`when binding a reference to a temporary; was` |nbsp| |+---------------------+|
|                                                                                                                                                                                              ||:diagtext:`private`  ||
|                                                                                                                                                                                              |+---------------------+|
|                                                                                                                                                                                              ||:diagtext:`protected`||
|                                                                                                                                                                                              |+---------------------+|
+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+-----------------------+

+--------------------------------------------------------+--------------------+------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`anonymous` |nbsp| |+------------------+| |nbsp| :diagtext:`cannot be '`:placeholder:`B`:diagtext:`'`|
|                                                        ||:diagtext:`struct`||                                                            |
|                                                        |+------------------+|                                                            |
|                                                        ||:diagtext:`union` ||                                                            |
|                                                        |+------------------+|                                                            |
+--------------------------------------------------------+--------------------+------------------------------------------------------------+

+--------------------------------------------------------------------+------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------+
|: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`                         ||                                                                                                                                          |
|                                                                    |+----------------------------------------------------+|                                                                                                                                          |
+--------------------------------------------------------------------+------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------+

+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|: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:`parameter` |nbsp| :placeholder:`A` |nbsp| :diagtext:`was not declared, defaulting to type 'int'`|
+--------------------------------------------------------------------------------------------------------------------------------------+

+--------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`invoking a pointer to a 'const &' member function on an rvalue is a C++2a extension`|
+--------------------------------------------------------------------------------------------------------------------------+

+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`qualifier in explicit instantiation of` |nbsp| :placeholder:`A` |nbsp| :diagtext:`requires a template-id (a typedef is not permitted)`|
+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------+

+-----------------------------------------------------+----------------------+-----------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`static` |nbsp| |+--------------------+| |nbsp| :placeholder:`B` |nbsp| :diagtext:`is used in an inline function with external linkage`|
|                                                     ||:diagtext:`function`||                                                                                               |
|                                                     |+--------------------+|                                                                                               |
|                                                     ||:diagtext:`variable`||                                                                                               |
|                                                     |+--------------------+|                                                                                               |
+-----------------------------------------------------+----------------------+-----------------------------------------------------------------------------------------------+

+---------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`ISO C forbids forward references to 'enum' types`|
+---------------------------------------------------------------------------------------+

+----------------------------------------------------------------------------------------------------------------------------------------------+-------------------+-------------+
|:warning:`warning:` |nbsp| :diagtext:`ISO C restricts enumerator values to range of 'int' (`:placeholder:`A` |nbsp| :diagtext:`is too` |nbsp| |+-----------------+|:diagtext:`)`|
|                                                                                                                                              ||:diagtext:`small`||             |
|                                                                                                                                              |+-----------------+|             |
|                                                                                                                                              ||:diagtext:`large`||             |
|                                                                                                                                              |+-----------------+|             |
+----------------------------------------------------------------------------------------------------------------------------------------------+-------------------+-------------+

+--------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`size of static array must be an integer constant expression`|
+--------------------------------------------------------------------------------------------------+

+-----------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`initializer for aggregate is not a compile-time constant`|
+-----------------------------------------------------------------------------------------------+

+-------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`flexible array members are a C99 feature`|
+-------------------------------------------------------------------------------+

+---------------------------------------------------------------+-----------------------------------------------------+--------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`invalid application of '`|+---------------------------------------------------+|:diagtext:`' to a function type`|
|                                                               ||:diagtext:`sizeof`                                 ||                                |
|                                                               |+---------------------------------------------------+|                                |
|                                                               ||:diagtext:`alignof`                                ||                                |
|                                                               |+---------------------------------------------------+|                                |
|                                                               ||:diagtext:`vec\_step`                              ||                                |
|                                                               |+---------------------------------------------------+|                                |
|                                                               ||:diagtext:`\_\_builtin\_omp\_required\_simd\_align`||                                |
|                                                               |+---------------------------------------------------+|                                |
|                                                               ||:diagtext:`\_\_alignof`                            ||                                |
|                                                               |+---------------------------------------------------+|                                |
+---------------------------------------------------------------+-----------------------------------------------------+--------------------------------+

+---------------------------------------------------------------+-----------------------------------------------------+----------------------------+
|:warning:`warning:` |nbsp| :diagtext:`invalid application of '`|+---------------------------------------------------+|:diagtext:`' to a void type`|
|                                                               ||:diagtext:`sizeof`                                 ||                            |
|                                                               |+---------------------------------------------------+|                            |
|                                                               ||:diagtext:`alignof`                                ||                            |
|                                                               |+---------------------------------------------------+|                            |
|                                                               ||:diagtext:`vec\_step`                              ||                            |
|                                                               |+---------------------------------------------------+|                            |
|                                                               ||:diagtext:`\_\_builtin\_omp\_required\_simd\_align`||                            |
|                                                               |+---------------------------------------------------+|                            |
|                                                               ||:diagtext:`\_\_alignof`                            ||                            |
|                                                               |+---------------------------------------------------+|                            |
+---------------------------------------------------------------+-----------------------------------------------------+----------------------------+

+-------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`ISO C90 does not allow subscripting non-lvalue array`|
+-------------------------------------------------------------------------------------------+

+----------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`subscript of a pointer to void is a GNU extension`|
+----------------------------------------------------------------------------------------+

+-------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`ISO C forbids taking the address of an expression of type 'void'`|
+-------------------------------------------------------------------------------------------------------+

+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`ordered comparison between pointer and zero (`:placeholder:`A` |nbsp| :diagtext:`and` |nbsp| :placeholder:`B`:diagtext:`) is an extension`|
+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+

+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`equality comparison between function pointer and void pointer (`:placeholder:`A` |nbsp| :diagtext:`and` |nbsp| :placeholder:`B`:diagtext:`)`|
+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+

+----------------------------------------------------+-----------------------+---------------------------+---------------+----------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`arithmetic on`|+---------------------+| |nbsp| :diagtext:`pointer`|+-------------+| |nbsp| :diagtext:`to void is a GNU extension`|
|                                                    || |nbsp| :diagtext:`a`||                           ||             ||                                              |
|                                                    |+---------------------+|                           |+-------------+|                                              |
|                                                    ||                     ||                           ||:diagtext:`s`||                                              |
|                                                    |+---------------------+|                           |+-------------+|                                              |
+----------------------------------------------------+-----------------------+---------------------------+---------------+----------------------------------------------+

+----------------------------------------------------+-----------------------+---------------------------+---------------+----------------------+-------------------------+---------------------------------+---------------+------------------------+---------------------------------------------------+--------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`arithmetic on`|+---------------------+| |nbsp| :diagtext:`pointer`|+-------------+| |nbsp| :diagtext:`to`|+-----------------------+| |nbsp| :diagtext:`function type`|+-------------+| |nbsp| :placeholder:`B`|+-------------------------------------------------+| |nbsp| :diagtext:`is a GNU extension`|
|                                                    || |nbsp| :diagtext:`a`||                           ||             ||                      || |nbsp| :diagtext:`the`||                                 ||             ||                        ||                                                 ||                                      |
|                                                    |+---------------------+|                           |+-------------+|                      |+-----------------------+|                                 |+-------------+|                        |+-------------------------------------------------+|                                      |
|                                                    ||                     ||                           ||:diagtext:`s`||                      ||                       ||                                 ||:diagtext:`s`||                        ||+-----------------------------------------------+||                                      |
|                                                    |+---------------------+|                           |+-------------+|                      |+-----------------------+|                                 |+-------------+|                        ||| |nbsp| :diagtext:`and` |nbsp| :placeholder:`D`|||                                      |
|                                                    |                       |                           |               |                      |                         |                                 |               |                        ||+-----------------------------------------------+||                                      |
|                                                    |                       |                           |               |                      |                         |                                 |               |                        |+-------------------------------------------------+|                                      |
+----------------------------------------------------+-----------------------+---------------------------+---------------+----------------------+-------------------------+---------------------------------+---------------+------------------------+---------------------------------------------------+--------------------------------------+

+-----------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`ISO C does not support '++'/'--' on complex integer type` |nbsp| :placeholder:`A`|
+-----------------------------------------------------------------------------------------------------------------------+

+--------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`ISO C does not support '~' for complex conjugation of` |nbsp| :placeholder:`A`|
+--------------------------------------------------------------------------------------------------------------------+

+------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`complex numbers are an extension in a freestanding C99 implementation`|
+------------------------------------------------------------------------------------------------------------+

+-------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`cast between pointer-to-function and pointer-to-object is an extension`|
+-------------------------------------------------------------------------------------------------------------+

+---------------------------------------------------------------------------------------------------------------------------------------------------+-------------------------+----------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`implicit conversion from array size expression of type` |nbsp| :placeholder:`A` |nbsp| :diagtext:`to` |nbsp| |+-----------------------+| |nbsp| :diagtext:`type` |nbsp| :placeholder:`C` |nbsp| :diagtext:`is a C++11 extension`|
|                                                                                                                                                   ||:diagtext:`integral`   ||                                                                                        |
|                                                                                                                                                   |+-----------------------+|                                                                                        |
|                                                                                                                                                   ||:diagtext:`enumeration`||                                                                                        |
|                                                                                                                                                   |+-----------------------+|                                                                                        |
+---------------------------------------------------------------------------------------------------------------------------------------------------+-------------------------+----------------------------------------------------------------------------------------+

+---------------------------+----------------------------------------------------------------+----------------------------------------------------------------------+
|:warning:`warning:` |nbsp| |+--------------------------------------------------------------+| |nbsp| :diagtext:`converts between void pointer and function pointer`|
|                           ||:diagtext:`assigning to different types`                      ||                                                                      |
|                           |+--------------------------------------------------------------+|                                                                      |
|                           ||:diagtext:`passing to parameter of different type`            ||                                                                      |
|                           |+--------------------------------------------------------------+|                                                                      |
|                           ||:diagtext:`returning from function with different return type`||                                                                      |
|                           |+--------------------------------------------------------------+|                                                                      |
|                           ||:diagtext:`converting between types`                          ||                                                                      |
|                           |+--------------------------------------------------------------+|                                                                      |
|                           ||:diagtext:`initializing with expression of different type`    ||                                                                      |
|                           |+--------------------------------------------------------------+|                                                                      |
|                           ||:diagtext:`sending to parameter of different type`            ||                                                                      |
|                           |+--------------------------------------------------------------+|                                                                      |
|                           ||:diagtext:`casting between types`                             ||                                                                      |
|                           |+--------------------------------------------------------------+|                                                                      |
+---------------------------+----------------------------------------------------------------+----------------------------------------------------------------------+

+--------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`kernel function` |nbsp| :placeholder:`A` |nbsp| :diagtext:`is a member function; this may not be accepted by nvcc`|
+--------------------------------------------------------------------------------------------------------------------------------------------------------+

+--------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`C99 forbids conditional expressions with only one void side`|
+--------------------------------------------------------------------------------------------------+

+-------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`C99 forbids casting nonscalar type` |nbsp| :placeholder:`A` |nbsp| :diagtext:`to the same type`|
+-------------------------------------------------------------------------------------------------------------------------------------+

+---------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`use of the` |nbsp| :placeholder:`A` |nbsp| :diagtext:`attribute is a C++14 extension`|
+---------------------------------------------------------------------------------------------------------------------------+

+---------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`use of the` |nbsp| :placeholder:`A` |nbsp| :diagtext:`attribute is a C++17 extension`|
+---------------------------------------------------------------------------------------------------------------------------+

+-----------------------------------------------------------------------------+--------------------+---------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`types declared in an anonymous` |nbsp| |+------------------+| |nbsp| :diagtext:`are a Microsoft extension`|
|                                                                             ||:diagtext:`struct`||                                             |
|                                                                             |+------------------+|                                             |
|                                                                             ||:diagtext:`union` ||                                             |
|                                                                             |+------------------+|                                             |
+-----------------------------------------------------------------------------+--------------------+---------------------------------------------+

+------------------------------------------------------------------------------------------------------------------------------------+-----------------------------+------------------------+
|:warning:`warning:` |nbsp| :diagtext:`format specifies type` |nbsp| :placeholder:`A` |nbsp| :diagtext:`but the argument has` |nbsp| |+---------------------------+| |nbsp| :placeholder:`B`|
|                                                                                                                                    ||:diagtext:`type`           ||                        |
|                                                                                                                                    |+---------------------------+|                        |
|                                                                                                                                    ||:diagtext:`underlying type`||                        |
|                                                                                                                                    |+---------------------------+|                        |
+------------------------------------------------------------------------------------------------------------------------------------+-----------------------------+------------------------+

+---------------------------------------------------+----------------------+-----------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`void` |nbsp| |+--------------------+| |nbsp| :placeholder:`A` |nbsp| :diagtext:`should not return void expression`|
|                                                   ||:diagtext:`function`||                                                                             |
|                                                   |+--------------------+|                                                                             |
|                                                   ||:diagtext:`method`  ||                                                                             |
|                                                   |+--------------------+|                                                                             |
|                                                   ||:diagtext:`block`   ||                                                                             |
|                                                   |+--------------------+|                                                                             |
+---------------------------------------------------+----------------------+-----------------------------------------------------------------------------+

+--------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`'`:placeholder:`A`:diagtext:`' cannot be signed or unsigned`|
+--------------------------------------------------------------------------------------------------+

+---------------------------+----------------------------------+------------------------------+-----------------------+----------------------------+
|:warning:`warning:` |nbsp| |+--------------------------------+|:diagtext:`array size` |nbsp| |+---------------------+|:diagtext:`is a C99 feature`|
|                           ||:diagtext:`qualifier in` |nbsp| ||                              ||                     ||                            |
|                           |+--------------------------------+|                              |+---------------------+|                            |
|                           ||:diagtext:`static` |nbsp|       ||                              ||                     ||                            |
|                           |+--------------------------------+|                              |+---------------------+|                            |
|                           ||                                ||                              ||:diagtext:`'\[\*\] '`||                            |
|                           |+--------------------------------+|                              |+---------------------+|                            |
+---------------------------+----------------------------------+------------------------------+-----------------------+----------------------------+

+--------------------------------------------------------+------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`extra ';'` |nbsp| |+----------------------------------------------+|
|                                                        ||:diagtext:`outside of a function`             ||
|                                                        |+----------------------------------------------+|
|                                                        ||+--------------------------------------------+||
|                                                        |||:diagtext:`inside a` |nbsp| :placeholder:`B`|||
|                                                        ||+--------------------------------------------+||
|                                                        |+----------------------------------------------+|
|                                                        ||:diagtext:`inside instance variable list`     ||
|                                                        |+----------------------------------------------+|
|                                                        ||:diagtext:`after member function definition`  ||
|                                                        |+----------------------------------------------+|
+--------------------------------------------------------+------------------------------------------------+

+-----------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`'\_\_thread' before '`:placeholder:`A`:diagtext:`'`|
+-----------------------------------------------------------------------------------------+

+----------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`type-less parameter names in function declaration`|
+----------------------------------------------------------------------------------------+

+-------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`variable declaration in for loop is a C99-specific feature`|
+-------------------------------------------------------------------------------------------------+

+-----------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`compound literals are a C99-specific feature`|
+-----------------------------------------------------------------------------------+

+-------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`commas at the end of enumerator lists are a C99-specific feature`|
+-------------------------------------------------------------------------------------------------------+

+--------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`commas at the end of enumerator lists are a C++11 extension`|
+--------------------------------------------------------------------------------------------------+

+-----------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`enumeration types with a fixed underlying type are a C++11 extension`|
+-----------------------------------------------------------------------------------------------------------+

+-----------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`use of GNU array range extension`|
+-----------------------------------------------------------------------+

+------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`exception specification of '...' is a Microsoft extension`|
+------------------------------------------------------------------------------------------------+

+------------------------------------------------------------+---------------------------+-----------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`attributes on` |nbsp| |+-------------------------+| |nbsp| :diagtext:`declaration are a C++17 extension`|
|                                                            ||:diagtext:`a namespace`  ||                                                     |
|                                                            |+-------------------------+|                                                     |
|                                                            ||:diagtext:`an enumerator`||                                                     |
|                                                            |+-------------------------+|                                                     |
+------------------------------------------------------------+---------------------------+-----------------------------------------------------+

+-----------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`extern templates are a C++11 extension`|
+-----------------------------------------------------------------------------+

+------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`multi-line // comment`|
+------------------------------------------------------------+

+-----------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`// comments are not allowed in this language`|
+-----------------------------------------------------------------------------------+

+----------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`no newline at end of file`|
+----------------------------------------------------------------+

+------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`use of non-standard escape character '\\`:placeholder:`A`:diagtext:`'`|
+------------------------------------------------------------------------------------------------------------+

+---------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`hexadecimal floating constants are a C99 feature`|
+---------------------------------------------------------------------------------------+

+----------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`hexadecimal floating literals are a C++17 feature`|
+----------------------------------------------------------------------------------------+

+---------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`#ident is a language extension`|
+---------------------------------------------------------------------+

+-----------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`#warning is a language extension`|
+-----------------------------------------------------------------------+

+-----------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`comma operator in operand of #if`|
+-----------------------------------------------------------------------+

+----------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`\_\_VA\_ARGS\_\_ can only appear in the expansion of a C99 variadic macro`|
+----------------------------------------------------------------------------------------------------------------+

+------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`variadic macros are a C99 feature`|
+------------------------------------------------------------------------+

+--------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`named variadic macros are a GNU extension`|
+--------------------------------------------------------------------------------+

+------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`empty macro arguments are a C99 feature`|
+------------------------------------------------------------------------------+

+--------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`variadic macros are a Clang extension in OpenCL`|
+--------------------------------------------------------------------------------------+

+----------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`C requires #line number to be less than` |nbsp| :placeholder:`A`:diagtext:`, allowed as extension`|
+----------------------------------------------------------------------------------------------------------------------------------------+

+-------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`macro expansion producing 'defined' has undefined behavior`|
+-------------------------------------------------------------------------------------------------+


-Wpedantic-core-features
------------------------
**Diagnostic text:**

+----------------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`OpenCL extension` |nbsp| :placeholder:`A` |nbsp| :diagtext:`is core feature or supported optional core feature - ignoring`|
+----------------------------------------------------------------------------------------------------------------------------------------------------------------+


-Wpessimizing-move
------------------
**Diagnostic text:**

+--------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`moving a temporary object prevents copy elision`|
+--------------------------------------------------------------------------------------+

+--------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`moving a local object in a return statement prevents copy elision`|
+--------------------------------------------------------------------------------------------------------+


-Wpointer-arith
---------------
Some of the diagnostics controlled by this flag are enabled by default.

**Diagnostic text:**

+----------------------------------------------------+-----------------------+---------------------------+---------------+----------------------+-------------------------+---------------------------------+---------------+------------------------+---------------------------------------------------+--------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`arithmetic on`|+---------------------+| |nbsp| :diagtext:`pointer`|+-------------+| |nbsp| :diagtext:`to`|+-----------------------+| |nbsp| :diagtext:`function type`|+-------------+| |nbsp| :placeholder:`B`|+-------------------------------------------------+| |nbsp| :diagtext:`is a GNU extension`|
|                                                    || |nbsp| :diagtext:`a`||                           ||             ||                      || |nbsp| :diagtext:`the`||                                 ||             ||                        ||                                                 ||                                      |
|                                                    |+---------------------+|                           |+-------------+|                      |+-----------------------+|                                 |+-------------+|                        |+-------------------------------------------------+|                                      |
|                                                    ||                     ||                           ||:diagtext:`s`||                      ||                       ||                                 ||:diagtext:`s`||                        ||+-----------------------------------------------+||                                      |
|                                                    |+---------------------+|                           |+-------------+|                      |+-----------------------+|                                 |+-------------+|                        ||| |nbsp| :diagtext:`and` |nbsp| :placeholder:`D`|||                                      |
|                                                    |                       |                           |               |                      |                         |                                 |               |                        ||+-----------------------------------------------+||                                      |
|                                                    |                       |                           |               |                      |                         |                                 |               |                        |+-------------------------------------------------+|                                      |
+----------------------------------------------------+-----------------------+---------------------------+---------------+----------------------+-------------------------+---------------------------------+---------------+------------------------+---------------------------------------------------+--------------------------------------+

+----------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`subscript of a pointer to void is a GNU extension`|
+----------------------------------------------------------------------------------------+

+----------------------------------------------------+-----------------------+---------------------------+---------------+----------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`arithmetic on`|+---------------------+| |nbsp| :diagtext:`pointer`|+-------------+| |nbsp| :diagtext:`to void is a GNU extension`|
|                                                    || |nbsp| :diagtext:`a`||                           ||             ||                                              |
|                                                    |+---------------------+|                           |+-------------+|                                              |
|                                                    ||                     ||                           ||:diagtext:`s`||                                              |
|                                                    |+---------------------+|                           |+-------------+|                                              |
+----------------------------------------------------+-----------------------+---------------------------+---------------+----------------------------------------------+

+---------------------------------------------------------------+-----------------------------------------------------+--------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`invalid application of '`|+---------------------------------------------------+|:diagtext:`' to a function type`|
|                                                               ||:diagtext:`sizeof`                                 ||                                |
|                                                               |+---------------------------------------------------+|                                |
|                                                               ||:diagtext:`alignof`                                ||                                |
|                                                               |+---------------------------------------------------+|                                |
|                                                               ||:diagtext:`vec\_step`                              ||                                |
|                                                               |+---------------------------------------------------+|                                |
|                                                               ||:diagtext:`\_\_builtin\_omp\_required\_simd\_align`||                                |
|                                                               |+---------------------------------------------------+|                                |
|                                                               ||:diagtext:`\_\_alignof`                            ||                                |
|                                                               |+---------------------------------------------------+|                                |
+---------------------------------------------------------------+-----------------------------------------------------+--------------------------------+

+---------------------------------------------------------------+-----------------------------------------------------+----------------------------+
|:warning:`warning:` |nbsp| :diagtext:`invalid application of '`|+---------------------------------------------------+|:diagtext:`' to a void type`|
|                                                               ||:diagtext:`sizeof`                                 ||                            |
|                                                               |+---------------------------------------------------+|                            |
|                                                               ||:diagtext:`alignof`                                ||                            |
|                                                               |+---------------------------------------------------+|                            |
|                                                               ||:diagtext:`vec\_step`                              ||                            |
|                                                               |+---------------------------------------------------+|                            |
|                                                               ||:diagtext:`\_\_builtin\_omp\_required\_simd\_align`||                            |
|                                                               |+---------------------------------------------------+|                            |
|                                                               ||:diagtext:`\_\_alignof`                            ||                            |
|                                                               |+---------------------------------------------------+|                            |
+---------------------------------------------------------------+-----------------------------------------------------+----------------------------+

+-----------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`subtraction of pointers to type` |nbsp| :placeholder:`A` |nbsp| :diagtext:`of zero size has undefined behavior`|
+-----------------------------------------------------------------------------------------------------------------------------------------------------+


-Wpointer-bool-conversion
-------------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+------------------------------------------------------+---------------------------+---------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`nonnull` |nbsp| |+-------------------------+| |nbsp| :diagtext:`'`:placeholder:`B`:diagtext:`' will evaluate to 'true' on first encounter`|
|                                                      ||:diagtext:`function call`||                                                                                             |
|                                                      |+-------------------------+|                                                                                             |
|                                                      ||:diagtext:`parameter`    ||                                                                                             |
|                                                      |+-------------------------+|                                                                                             |
+------------------------------------------------------+---------------------------+---------------------------------------------------------------------------------------------+

+-------------------------------------------------+------------------------------+---------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`address of`|+----------------------------+| |nbsp| :diagtext:`'`:placeholder:`B`:diagtext:`' will always evaluate to 'true'`|
|                                                 ||                            ||                                                                                 |
|                                                 |+----------------------------+|                                                                                 |
|                                                 || |nbsp| :diagtext:`function`||                                                                                 |
|                                                 |+----------------------------+|                                                                                 |
|                                                 || |nbsp| :diagtext:`array`   ||                                                                                 |
|                                                 |+----------------------------+|                                                                                 |
+-------------------------------------------------+------------------------------+---------------------------------------------------------------------------------+


-Wpointer-integer-compare
-------------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+-----------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`comparison between pointer and integer (`:placeholder:`A` |nbsp| :diagtext:`and` |nbsp| :placeholder:`B`:diagtext:`)`|
+-----------------------------------------------------------------------------------------------------------------------------------------------------------+


-Wpointer-sign
--------------
This diagnostic is enabled by default.

**Diagnostic text:**

+---------------------------+----------------------------------------------------------------+----------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| |+--------------------------------------------------------------+| |nbsp| :diagtext:`converts between pointers to integer types with different sign`|
|                           ||:diagtext:`assigning to different types`                      ||                                                                                  |
|                           |+--------------------------------------------------------------+|                                                                                  |
|                           ||:diagtext:`passing to parameter of different type`            ||                                                                                  |
|                           |+--------------------------------------------------------------+|                                                                                  |
|                           ||:diagtext:`returning from function with different return type`||                                                                                  |
|                           |+--------------------------------------------------------------+|                                                                                  |
|                           ||:diagtext:`converting between types`                          ||                                                                                  |
|                           |+--------------------------------------------------------------+|                                                                                  |
|                           ||:diagtext:`initializing with expression of different type`    ||                                                                                  |
|                           |+--------------------------------------------------------------+|                                                                                  |
|                           ||:diagtext:`sending to parameter of different type`            ||                                                                                  |
|                           |+--------------------------------------------------------------+|                                                                                  |
|                           ||:diagtext:`casting between types`                             ||                                                                                  |
|                           |+--------------------------------------------------------------+|                                                                                  |
+---------------------------+----------------------------------------------------------------+----------------------------------------------------------------------------------+


-Wpointer-to-int-cast
---------------------
This diagnostic flag exists for GCC compatibility, and has no effect in Clang.

-Wpointer-type-mismatch
-----------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`pointer type mismatch`|
+------------------------------------------------------------+


-Wpotentially-evaluated-expression
----------------------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+----------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`expression with side effects will be evaluated despite being used as an operand to 'typeid'`|
+----------------------------------------------------------------------------------------------------------------------------------+


-Wpragma-clang-attribute
------------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+-------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`unused attribute` |nbsp| :placeholder:`A` |nbsp| :diagtext:`in '#pragma clang attribute push' region`|
+-------------------------------------------------------------------------------------------------------------------------------------------+


-Wpragma-once-outside-header
----------------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+----------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`#pragma once in main file`|
+----------------------------------------------------------------+


-Wpragma-pack
-------------
Some of the diagnostics controlled by this flag are enabled by default.

Also controls `-Wpragma-pack-suspicious-include`_.

**Diagnostic text:**

+----------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`the current #pragma pack alignment value is modified in the included file`|
+----------------------------------------------------------------------------------------------------------------+

+---------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`unterminated '#pragma pack (push, ...)' at end of file`|
+---------------------------------------------------------------------------------------------+


-Wpragma-pack-suspicious-include
--------------------------------
**Diagnostic text:**

+-------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`non-default #pragma pack value changes the alignment of struct or union members in the included file`|
+-------------------------------------------------------------------------------------------------------------------------------------------+


-Wpragma-system-header-outside-header
-------------------------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+----------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`#pragma system\_header ignored in main file`|
+----------------------------------------------------------------------------------+


-Wpragmas
---------
Some of the diagnostics controlled by this flag are enabled by default.

Also controls `-Wignored-pragmas`_, `-Wpragma-clang-attribute`_, `-Wpragma-pack`_, `-Wunknown-pragmas`_.

**Diagnostic text:**

+--------------------------------------------------------------------------------------------------------------------------------------+----------------------+------------------------+
|:warning:`warning:` |nbsp| :diagtext:`#pragma redefine\_extname is applicable to external C declarations only; not applied to` |nbsp| |+--------------------+| |nbsp| :placeholder:`B`|
|                                                                                                                                      ||:diagtext:`function`||                        |
|                                                                                                                                      |+--------------------+|                        |
|                                                                                                                                      ||:diagtext:`variable`||                        |
|                                                                                                                                      |+--------------------+|                        |
+--------------------------------------------------------------------------------------------------------------------------------------+----------------------+------------------------+


-Wpredefined-identifier-outside-function
----------------------------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`predefined identifier is only valid inside function`|
+------------------------------------------------------------------------------------------+


-Wprivate-extern
----------------
This diagnostic is enabled by default.

**Diagnostic text:**

+--------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`use of \_\_private\_extern\_\_ on a declaration may not produce external symbol private to the linkage unit and is deprecated`|
+--------------------------------------------------------------------------------------------------------------------------------------------------------------------+


-Wprivate-header
----------------
This diagnostic is an error by default, but the flag ``-Wno-private-header`` can be used to disable the error.

**Diagnostic text:**

+----------------------------------------------------------------------------------------------------------------+
|:error:`error:` |nbsp| :diagtext:`use of private header from outside its module: '`:placeholder:`A`:diagtext:`'`|
+----------------------------------------------------------------------------------------------------------------+


-Wprivate-module
----------------
This diagnostic is enabled by default.

**Diagnostic text:**

+----------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`expected canonical name for private module '`:placeholder:`A`:diagtext:`'`|
+----------------------------------------------------------------------------------------------------------------+

+----------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`private submodule '`:placeholder:`A`:diagtext:`' in private module map, expected top-level module`|
+----------------------------------------------------------------------------------------------------------------------------------------+

+----------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`module '`:placeholder:`A`:diagtext:`' already re-exported as '`:placeholder:`B`:diagtext:`'`|
+----------------------------------------------------------------------------------------------------------------------------------+

+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`no submodule named` |nbsp| :placeholder:`A` |nbsp| :diagtext:`in module '`:placeholder:`B`:diagtext:`'; using top level '`:placeholder:`C`:diagtext:`'`|
+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+


-Wprofile-instr-missing
-----------------------
**Diagnostic text:**

+-----------------------------------------------------------------------------------------------------------------------------+---------------+---------------------------------------------+------------------+---------------------------+
|:warning:`warning:` |nbsp| :diagtext:`profile data may be incomplete: of` |nbsp| :placeholder:`A` |nbsp| :diagtext:`function`|+-------------+|:diagtext:`,` |nbsp| :placeholder:`B` |nbsp| |+----------------+| |nbsp| :diagtext:`no data`|
|                                                                                                                             ||             ||                                             ||:diagtext:`has` ||                           |
|                                                                                                                             |+-------------+|                                             |+----------------+|                           |
|                                                                                                                             ||:diagtext:`s`||                                             ||:diagtext:`have`||                           |
|                                                                                                                             |+-------------+|                                             |+----------------+|                           |
+-----------------------------------------------------------------------------------------------------------------------------+---------------+---------------------------------------------+------------------+---------------------------+


-Wprofile-instr-out-of-date
---------------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+------------------------------------------------------------------------------------------------------------------------------+---------------+---------------------------------------------+------------------+--------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`profile data may be out of date: of` |nbsp| :placeholder:`A` |nbsp| :diagtext:`function`|+-------------+|:diagtext:`,` |nbsp| :placeholder:`B` |nbsp| |+----------------+| |nbsp| :diagtext:`mismatched data that will be ignored`|
|                                                                                                                              ||             ||                                             ||:diagtext:`has` ||                                                        |
|                                                                                                                              |+-------------+|                                             |+----------------+|                                                        |
|                                                                                                                              ||:diagtext:`s`||                                             ||:diagtext:`have`||                                                        |
|                                                                                                                              |+-------------+|                                             |+----------------+|                                                        |
+------------------------------------------------------------------------------------------------------------------------------+---------------+---------------------------------------------+------------------+--------------------------------------------------------+


-Wprofile-instr-unprofiled
--------------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+--------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`no profile data available for file "`:placeholder:`A`:diagtext:`"`|
+--------------------------------------------------------------------------------------------------------+


-Wproperty-access-dot-syntax
----------------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`property` |nbsp| :placeholder:`A` |nbsp| :diagtext:`not found on object of type` |nbsp| :placeholder:`B`:diagtext:`; did you mean to access property` |nbsp| :placeholder:`C`:diagtext:`?`|
+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+


-Wproperty-attribute-mismatch
-----------------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+-------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`property attribute in class extension does not match the primary class`|
+-------------------------------------------------------------------------------------------------------------+

+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`'`:placeholder:`B`:diagtext:`' attribute on property` |nbsp| :placeholder:`A` |nbsp| :diagtext:`does not match the property inherited from` |nbsp| :placeholder:`C`|
+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+

+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`getter name mismatch between property redeclaration (`:placeholder:`B`:diagtext:`) and its original declaration (`:placeholder:`A`:diagtext:`)`|
+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+

+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`attribute 'readonly' of property` |nbsp| :placeholder:`A` |nbsp| :diagtext:`restricts attribute 'readwrite' of property inherited from` |nbsp| :placeholder:`B`|
+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+


-Wprotocol
----------
This diagnostic is enabled by default.

**Diagnostic text:**

+---------------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`method` |nbsp| :placeholder:`A` |nbsp| :diagtext:`in protocol` |nbsp| :placeholder:`B` |nbsp| :diagtext:`not implemented`|
+---------------------------------------------------------------------------------------------------------------------------------------------------------------+


-Wprotocol-property-synthesis-ambiguity
---------------------------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+-------------------------------------------------------+----------------------------------------------------------------+----------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`property` |nbsp| |+--------------------------------------------------------------+| |nbsp| :diagtext:`was selected for synthesis`|
|                                                       ||+-------------------------------------------+                 ||                                              |
|                                                       |||:diagtext:`of type` |nbsp| :placeholder:`B`|                 ||                                              |
|                                                       ||+-------------------------------------------+                 ||                                              |
|                                                       |+--------------------------------------------------------------+|                                              |
|                                                       ||+---------------------------------------------------------+   ||                                              |
|                                                       |||:diagtext:`with attribute '`:placeholder:`B`:diagtext:`'`|   ||                                              |
|                                                       ||+---------------------------------------------------------+   ||                                              |
|                                                       |+--------------------------------------------------------------+|                                              |
|                                                       ||+------------------------------------------------------------+||                                              |
|                                                       |||:diagtext:`without attribute '`:placeholder:`B`:diagtext:`'`|||                                              |
|                                                       ||+------------------------------------------------------------+||                                              |
|                                                       |+--------------------------------------------------------------+|                                              |
|                                                       ||+-----------------------------------------------+             ||                                              |
|                                                       |||:diagtext:`with getter` |nbsp| :placeholder:`B`|             ||                                              |
|                                                       ||+-----------------------------------------------+             ||                                              |
|                                                       |+--------------------------------------------------------------+|                                              |
|                                                       ||+-----------------------------------------------+             ||                                              |
|                                                       |||:diagtext:`with setter` |nbsp| :placeholder:`B`|             ||                                              |
|                                                       ||+-----------------------------------------------+             ||                                              |
|                                                       |+--------------------------------------------------------------+|                                              |
+-------------------------------------------------------+----------------------------------------------------------------+----------------------------------------------+


-Wqualified-void-return-type
----------------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+---------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`function cannot return qualified void type` |nbsp| :placeholder:`A`|
+---------------------------------------------------------------------------------------------------------+


-Wquoted-include-in-framework-header
------------------------------------
**Diagnostic text:**

+-------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`double-quoted include "`:placeholder:`A`:diagtext:`" in framework header, expected angle-bracketed instead`|
+-------------------------------------------------------------------------------------------------------------------------------------------------+


-Wrange-loop-analysis
---------------------
**Diagnostic text:**

+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`loop variable` |nbsp| :placeholder:`A` |nbsp|  |nbsp| :diagtext:`is initialized with a value of a different type` |nbsp| :diagtext:`resulting in a copy`|
+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+

+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`loop variable` |nbsp| :placeholder:`A` |nbsp| :diagtext:`of type` |nbsp| :placeholder:`B` |nbsp| :diagtext:`creates a copy from type` |nbsp| :placeholder:`C`|
+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+

+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`loop variable` |nbsp| :placeholder:`A` |nbsp| :diagtext:`is always a copy because the range of type` |nbsp| :placeholder:`B` |nbsp| :diagtext:`does not return a reference`|
+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+


-Wreadonly-iboutlet-property
----------------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`readonly IBOutlet property` |nbsp| :placeholder:`A` |nbsp| :diagtext:`when auto-synthesized may not work correctly with 'nib' loader`|
+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------+


-Wreceiver-expr
---------------
This diagnostic is enabled by default.

**Diagnostic text:**

+-------------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`receiver type` |nbsp| :placeholder:`A` |nbsp| :diagtext:`is not 'id' or interface pointer, consider casting it to 'id'`|
+-------------------------------------------------------------------------------------------------------------------------------------------------------------+


-Wreceiver-forward-class
------------------------
Some of the diagnostics controlled by this flag are enabled by default.

**Diagnostic text:**

+--------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`receiver` |nbsp| :placeholder:`A` |nbsp| :diagtext:`is a forward class and corresponding @interface may not exist`|
+--------------------------------------------------------------------------------------------------------------------------------------------------------+

+---------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`receiver type` |nbsp| :placeholder:`A` |nbsp| :diagtext:`for instance message is a forward declaration`|
+---------------------------------------------------------------------------------------------------------------------------------------------+


-Wredeclared-class-member
-------------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`class member cannot be redeclared`|
+------------------------------------------------------------------------+


-Wredundant-decls
-----------------
This diagnostic flag exists for GCC compatibility, and has no effect in Clang.

-Wredundant-move
----------------
**Diagnostic text:**

+-------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`redundant move in return statement`|
+-------------------------------------------------------------------------+


-Wredundant-parens
------------------
**Diagnostic text:**

+-----------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`redundant parentheses surrounding declarator`|
+-----------------------------------------------------------------------------------+


-Wregister
----------
This diagnostic is enabled by default.

Also controls `-Wdeprecated-register`_.

**Diagnostic text:**

+----------------------------------------------------------------------------------------------+
|:error:`error:` |nbsp| :diagtext:`ISO C++17 does not allow 'register' storage class specifier`|
+----------------------------------------------------------------------------------------------+


-Wreinterpret-base-class
------------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+------------------------------------------------------------------+------------------+---------------------------------------------------------+------------------+-------------------------------+-------------------------------------+-----------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`'reinterpret\_cast'` |nbsp| |+----------------+| |nbsp| :diagtext:`class` |nbsp| :placeholder:`A` |nbsp| |+----------------+| |nbsp| :diagtext:`its` |nbsp| |+-----------------------------------+| |nbsp| :placeholder:`B` |nbsp| :diagtext:`behaves differently from 'static\_cast'`|
|                                                                  ||:diagtext:`from`||                                                         ||:diagtext:`to`  ||                               ||:diagtext:`virtual base`           ||                                                                                   |
|                                                                  |+----------------+|                                                         |+----------------+|                               |+-----------------------------------+|                                                                                   |
|                                                                  ||:diagtext:`to`  ||                                                         ||:diagtext:`from`||                               ||:diagtext:`base at non-zero offset`||                                                                                   |
|                                                                  |+----------------+|                                                         |+----------------+|                               |+-----------------------------------+|                                                                                   |
+------------------------------------------------------------------+------------------+---------------------------------------------------------+------------------+-------------------------------+-------------------------------------+-----------------------------------------------------------------------------------+


-Rremark-backend-plugin
-----------------------
**Diagnostic text:**

The text of this diagnostic is not controlled by Clang.


-Wreorder
---------
**Diagnostic text:**

+---------------------------+------------------------+-----------------------------------------------------------------------------+-------------------+------------------------+
|:warning:`warning:` |nbsp| |+----------------------+| |nbsp| :placeholder:`B` |nbsp| :diagtext:`will be initialized after` |nbsp| |+-----------------+| |nbsp| :placeholder:`D`|
|                           ||:diagtext:`field`     ||                                                                             ||:diagtext:`field`||                        |
|                           |+----------------------+|                                                                             |+-----------------+|                        |
|                           ||:diagtext:`base class`||                                                                             ||:diagtext:`base` ||                        |
|                           |+----------------------+|                                                                             |+-----------------+|                        |
+---------------------------+------------------------+-----------------------------------------------------------------------------+-------------------+------------------------+


-Wrequires-super-attribute
--------------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+-----------------------------------------------------------------------------------------------------+----------------------------------+
|:warning:`warning:` |nbsp| :placeholder:`A` |nbsp| :diagtext:`attribute cannot be applied to` |nbsp| |+--------------------------------+|
|                                                                                                     ||:diagtext:`methods in protocols`||
|                                                                                                     |+--------------------------------+|
|                                                                                                     ||:diagtext:`dealloc`             ||
|                                                                                                     |+--------------------------------+|
+-----------------------------------------------------------------------------------------------------+----------------------------------+


-Wreserved-id-macro
-------------------
**Diagnostic text:**

+--------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`macro name is a reserved identifier`|
+--------------------------------------------------------------------------+


-Wreserved-user-defined-literal
-------------------------------
Some of the diagnostics controlled by this flag are enabled by default.

Also controls `-Wc++11-compat-reserved-user-defined-literal`_.

**Diagnostic text:**

+-----------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`invalid suffix on literal; C++11 requires a space between literal and identifier`|
+-----------------------------------------------------------------------------------------------------------------------+

+-------------------------------------------------------------------------------------------------------------------+
|:error:`error:` |nbsp| :diagtext:`invalid suffix on literal; C++11 requires a space between literal and identifier`|
+-------------------------------------------------------------------------------------------------------------------+


-Wretained-language-linkage
---------------------------
**Diagnostic text:**

+-----------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`friend function` |nbsp| :placeholder:`A` |nbsp| :diagtext:`retaining previous language linkage is an extension`|
+-----------------------------------------------------------------------------------------------------------------------------------------------------+


-Wreturn-stack-address
----------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+---------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`returning address of label, which is local`|
+---------------------------------------------------------------------------------+

+--------------------------------------------------------+--------------------------+------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`returning` |nbsp| |+------------------------+| |nbsp| :diagtext:`local temporary object`|
|                                                        ||:diagtext:`address of`  ||                                          |
|                                                        |+------------------------+|                                          |
|                                                        ||:diagtext:`reference to`||                                          |
|                                                        |+------------------------+|                                          |
+--------------------------------------------------------+--------------------------+------------------------------------------+

+---------------------------+--------------------------+--------------------------------------------------------+----------------------------+----------------------------------------------------+
|:warning:`warning:` |nbsp| |+------------------------+| |nbsp| :diagtext:`stack memory associated with` |nbsp| |+--------------------------+| |nbsp| :placeholder:`B` |nbsp| :diagtext:`returned`|
|                           ||:diagtext:`address of`  ||                                                        ||:diagtext:`local variable`||                                                    |
|                           |+------------------------+|                                                        |+--------------------------+|                                                    |
|                           ||:diagtext:`reference to`||                                                        ||:diagtext:`parameter`     ||                                                    |
|                           |+------------------------+|                                                        |+--------------------------+|                                                    |
+---------------------------+--------------------------+--------------------------------------------------------+----------------------------+----------------------------------------------------+


-Wreturn-std-move
-----------------
**Diagnostic text:**

+-------------------------------------------------------------------------------------------------------------------------------------+----------------------+---------------------------+
|:warning:`warning:` |nbsp| :diagtext:`local variable` |nbsp| :placeholder:`A` |nbsp| :diagtext:`will be copied despite being` |nbsp| |+--------------------+| |nbsp| :diagtext:`by name`|
|                                                                                                                                     ||:diagtext:`returned`||                           |
|                                                                                                                                     |+--------------------+|                           |
|                                                                                                                                     ||:diagtext:`thrown`  ||                           |
|                                                                                                                                     |+--------------------+|                           |
+-------------------------------------------------------------------------------------------------------------------------------------+----------------------+---------------------------+


-Wreturn-std-move-in-c++11
--------------------------
**Diagnostic text:**

+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`prior to the resolution of a defect report against ISO C++11, local variable` |nbsp| :placeholder:`A` |nbsp| :diagtext:`would have been copied despite being returned by name, due to its not matching the function return type`|
+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+


-Wreturn-type
-------------
This diagnostic is enabled by default.

Also controls `-Wreturn-type-c-linkage`_.

**Diagnostic text:**

+-----------------------+---------------------------+---------------------------------------------------------------------+
|:error:`error:` |nbsp| |+-------------------------+| |nbsp| :placeholder:`A` |nbsp| :diagtext:`should not return a value`|
|                       ||:diagtext:`void function`||                                                                     |
|                       |+-------------------------+|                                                                     |
|                       ||:diagtext:`void method`  ||                                                                     |
|                       |+-------------------------+|                                                                     |
|                       ||:diagtext:`constructor`  ||                                                                     |
|                       |+-------------------------+|                                                                     |
|                       ||:diagtext:`destructor`   ||                                                                     |
|                       |+-------------------------+|                                                                     |
+-----------------------+---------------------------+---------------------------------------------------------------------+

+---------------------------------------------------+----------------------+-----------------------------------------------------------------+
|:error:`error:` |nbsp| :diagtext:`non-void` |nbsp| |+--------------------+| |nbsp| :placeholder:`A` |nbsp| :diagtext:`should return a value`|
|                                                   ||:diagtext:`function`||                                                                 |
|                                                   |+--------------------+|                                                                 |
|                                                   ||:diagtext:`method`  ||                                                                 |
|                                                   |+--------------------+|                                                                 |
+---------------------------------------------------+----------------------+-----------------------------------------------------------------+

+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`control reaches end of coroutine; which is undefined behavior because the promise type` |nbsp| :placeholder:`A` |nbsp| :diagtext:`does not declare 'return\_void()'`|
+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+

+-------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`control reaches end of non-void function`|
+-------------------------------------------------------------------------------+

+-----------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`control reaches end of non-void lambda`|
+-----------------------------------------------------------------------------+

+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`control may reach end of coroutine; which is undefined behavior because the promise type` |nbsp| :placeholder:`A` |nbsp| :diagtext:`does not declare 'return\_void()'`|
+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+

+---------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`control may reach end of non-void function`|
+---------------------------------------------------------------------------------+

+-------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`control may reach end of non-void lambda`|
+-------------------------------------------------------------------------------+

+---------------------------------------------------+----------------------+-----------------------------------------------------------------+
|:error:`error:` |nbsp| :diagtext:`non-void` |nbsp| |+--------------------+| |nbsp| :placeholder:`A` |nbsp| :diagtext:`should return a value`|
|                                                   ||:diagtext:`function`||                                                                 |
|                                                   |+--------------------+|                                                                 |
|                                                   ||:diagtext:`method`  ||                                                                 |
|                                                   |+--------------------+|                                                                 |
+---------------------------------------------------+----------------------+-----------------------------------------------------------------+


-Wreturn-type-c-linkage
-----------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :placeholder:`A` |nbsp| :diagtext:`has C-linkage specified, but returns user-defined type` |nbsp| :placeholder:`B` |nbsp| :diagtext:`which is incompatible with C`|
+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+

+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :placeholder:`A` |nbsp| :diagtext:`has C-linkage specified, but returns incomplete type` |nbsp| :placeholder:`B` |nbsp| :diagtext:`which could be incompatible with C`|
+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+


-Rsanitize-address
------------------
**Diagnostic text:**

+--------------------------------------------------------------------------------------------------------+
|:remark:`remark:` |nbsp| :diagtext:`-fsanitize-address-field-padding applied to` |nbsp| :placeholder:`A`|
+--------------------------------------------------------------------------------------------------------+

+-----------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------+
|:remark:`remark:` |nbsp| :diagtext:`-fsanitize-address-field-padding ignored for` |nbsp| :placeholder:`A` |nbsp| :diagtext:`because it` |nbsp| |+------------------------------------+|
|                                                                                                                                               ||:diagtext:`is not C++`              ||
|                                                                                                                                               |+------------------------------------+|
|                                                                                                                                               ||:diagtext:`is packed`               ||
|                                                                                                                                               |+------------------------------------+|
|                                                                                                                                               ||:diagtext:`is a union`              ||
|                                                                                                                                               |+------------------------------------+|
|                                                                                                                                               ||:diagtext:`is trivially copyable`   ||
|                                                                                                                                               |+------------------------------------+|
|                                                                                                                                               ||:diagtext:`has trivial destructor`  ||
|                                                                                                                                               |+------------------------------------+|
|                                                                                                                                               ||:diagtext:`is standard layout`      ||
|                                                                                                                                               |+------------------------------------+|
|                                                                                                                                               ||:diagtext:`is in a blacklisted file`||
|                                                                                                                                               |+------------------------------------+|
|                                                                                                                                               ||:diagtext:`is blacklisted`          ||
|                                                                                                                                               |+------------------------------------+|
+-----------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------+


-Wsection
---------
This diagnostic is enabled by default.

**Diagnostic text:**

+--------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`section attribute is specified on redeclared variable`|
+--------------------------------------------------------------------------------------------+

+------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`duplicate code segment specifiers`|
+------------------------------------------------------------------------+

+---------------------------+---------------------+-------------------------------------------------------+
|:warning:`warning:` |nbsp| |+-------------------+| |nbsp| :diagtext:`does not match previous declaration`|
|                           ||:diagtext:`codeseg`||                                                       |
|                           |+-------------------+|                                                       |
|                           ||:diagtext:`section`||                                                       |
|                           |+-------------------+|                                                       |
+---------------------------+---------------------+-------------------------------------------------------+


-Wselector
----------
Also controls `-Wselector-type-mismatch`_.

**Diagnostic text:**

+-------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`no method with selector` |nbsp| :placeholder:`A` |nbsp| :diagtext:`is implemented in this translation unit`|
+-------------------------------------------------------------------------------------------------------------------------------------------------+


-Wselector-type-mismatch
------------------------
**Diagnostic text:**

+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`several methods with selector` |nbsp| :placeholder:`A` |nbsp| :diagtext:`of mismatched types are found for the @selector expression`|
+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------+


-Wself-assign
-------------
Some of the diagnostics controlled by this flag are enabled by default.

Also controls `-Wself-assign-field`_, `-Wself-assign-overloaded`_.

**Diagnostic text:**

+------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`explicitly assigning value of variable of type` |nbsp| :placeholder:`A` |nbsp| :diagtext:`to itself`|
+------------------------------------------------------------------------------------------------------------------------------------------+


-Wself-assign-field
-------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+--------------------------------------------------------+-------------------------------+-----------------------------+
|:warning:`warning:` |nbsp| :diagtext:`assigning` |nbsp| |+-----------------------------+| |nbsp| :diagtext:`to itself`|
|                                                        ||:diagtext:`field`            ||                             |
|                                                        |+-----------------------------+|                             |
|                                                        ||:diagtext:`instance variable`||                             |
|                                                        |+-----------------------------+|                             |
+--------------------------------------------------------+-------------------------------+-----------------------------+


-Wself-assign-overloaded
------------------------
**Diagnostic text:**

+------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`explicitly assigning value of variable of type` |nbsp| :placeholder:`A` |nbsp| :diagtext:`to itself`|
+------------------------------------------------------------------------------------------------------------------------------------------+


-Wself-move
-----------
**Diagnostic text:**

+------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`explicitly moving variable of type` |nbsp| :placeholder:`A` |nbsp| :diagtext:`to itself`|
+------------------------------------------------------------------------------------------------------------------------------+


-Wsemicolon-before-method-body
------------------------------
**Diagnostic text:**

+------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`semicolon before method body is ignored`|
+------------------------------------------------------------------------------+


-Wsentinel
----------
This diagnostic is enabled by default.

**Diagnostic text:**

+------------------------------------------------------------------+-----------------------------+
|:warning:`warning:` |nbsp| :diagtext:`missing sentinel in` |nbsp| |+---------------------------+|
|                                                                  ||:diagtext:`function call`  ||
|                                                                  |+---------------------------+|
|                                                                  ||:diagtext:`method dispatch`||
|                                                                  |+---------------------------+|
|                                                                  ||:diagtext:`block call`     ||
|                                                                  |+---------------------------+|
+------------------------------------------------------------------+-----------------------------+

+------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`not enough variable arguments in` |nbsp| :placeholder:`A` |nbsp| :diagtext:`declaration to fit a sentinel`|
+------------------------------------------------------------------------------------------------------------------------------------------------+


-Wsequence-point
----------------
Synonym for `-Wunsequenced`_.


-Wserialized-diagnostics
------------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+----------------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`unable to open file` |nbsp| :placeholder:`A` |nbsp| :diagtext:`for serializing diagnostics (`:placeholder:`B`:diagtext:`)`|
+----------------------------------------------------------------------------------------------------------------------------------------------------------------+

+--------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`unable to merge a subprocess's serialized diagnostics`|
+--------------------------------------------------------------------------------------------+


-Wshadow
--------
Some of the diagnostics controlled by this flag are enabled by default.

Also controls `-Wshadow-field-in-constructor-modified`_, `-Wshadow-ivar`_.

**Diagnostic text:**

+--------------------------------------------------------------------+-------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`declaration shadows a` |nbsp| |+-----------------------------------------------------------+|
|                                                                    ||:diagtext:`local variable`                                 ||
|                                                                    |+-----------------------------------------------------------+|
|                                                                    ||+-----------------------------------------------+          ||
|                                                                    |||:diagtext:`variable in` |nbsp| :placeholder:`C`|          ||
|                                                                    ||+-----------------------------------------------+          ||
|                                                                    |+-----------------------------------------------------------+|
|                                                                    ||+---------------------------------------------------------+||
|                                                                    |||:diagtext:`static data member of` |nbsp| :placeholder:`C`|||
|                                                                    ||+---------------------------------------------------------+||
|                                                                    |+-----------------------------------------------------------+|
|                                                                    ||+--------------------------------------------+             ||
|                                                                    |||:diagtext:`field of` |nbsp| :placeholder:`C`|             ||
|                                                                    ||+--------------------------------------------+             ||
|                                                                    |+-----------------------------------------------------------+|
|                                                                    ||+----------------------------------------------+           ||
|                                                                    |||:diagtext:`typedef in` |nbsp| :placeholder:`C`|           ||
|                                                                    ||+----------------------------------------------+           ||
|                                                                    |+-----------------------------------------------------------+|
|                                                                    ||+-------------------------------------------------+        ||
|                                                                    |||:diagtext:`type alias in` |nbsp| :placeholder:`C`|        ||
|                                                                    ||+-------------------------------------------------+        ||
|                                                                    |+-----------------------------------------------------------+|
+--------------------------------------------------------------------+-------------------------------------------------------------+


-Wshadow-all
------------
Some of the diagnostics controlled by this flag are enabled by default.

Controls `-Wshadow`_, `-Wshadow-field`_, `-Wshadow-field-in-constructor`_, `-Wshadow-uncaptured-local`_.


-Wshadow-field
--------------
**Diagnostic text:**

+---------------------------+------------------------------------+--------------------------------+--------------------------------------------------+----------------------------------------------------------------------+
|:warning:`warning:` |nbsp| |+----------------------------------+| |nbsp| :placeholder:`A` |nbsp| |+------------------------------------------------+|:diagtext:`shadows member inherited from type` |nbsp| :placeholder:`C`|
|                           ||:diagtext:`parameter`             ||                                ||                                                ||                                                                      |
|                           |+----------------------------------+|                                |+------------------------------------------------+|                                                                      |
|                           ||:diagtext:`non-static data member`||                                ||+----------------------------------------------+||                                                                      |
|                           |+----------------------------------+|                                |||:diagtext:`of` |nbsp| :placeholder:`B` |nbsp| |||                                                                      |
|                           |                                    |                                ||+----------------------------------------------+||                                                                      |
|                           |                                    |                                |+------------------------------------------------+|                                                                      |
+---------------------------+------------------------------------+--------------------------------+--------------------------------------------------+----------------------------------------------------------------------+


-Wshadow-field-in-constructor
-----------------------------
Also controls `-Wshadow-field-in-constructor-modified`_.

**Diagnostic text:**

+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`constructor parameter` |nbsp| :placeholder:`A` |nbsp| :diagtext:`shadows the field` |nbsp| :placeholder:`B` |nbsp| :diagtext:`of` |nbsp| :placeholder:`C`|
+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+


-Wshadow-field-in-constructor-modified
--------------------------------------
**Diagnostic text:**

+-----------------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`modifying constructor parameter` |nbsp| :placeholder:`A` |nbsp| :diagtext:`that shadows a field of` |nbsp| :placeholder:`B`|
+-----------------------------------------------------------------------------------------------------------------------------------------------------------------+


-Wshadow-ivar
-------------
This diagnostic is enabled by default.

**Diagnostic text:**

+------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`local declaration of` |nbsp| :placeholder:`A` |nbsp| :diagtext:`hides instance variable`|
+------------------------------------------------------------------------------------------------------------------------------+


-Wshadow-uncaptured-local
-------------------------
**Diagnostic text:**

+--------------------------------------------------------------------+-------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`declaration shadows a` |nbsp| |+-----------------------------------------------------------+|
|                                                                    ||:diagtext:`local variable`                                 ||
|                                                                    |+-----------------------------------------------------------+|
|                                                                    ||+-----------------------------------------------+          ||
|                                                                    |||:diagtext:`variable in` |nbsp| :placeholder:`C`|          ||
|                                                                    ||+-----------------------------------------------+          ||
|                                                                    |+-----------------------------------------------------------+|
|                                                                    ||+---------------------------------------------------------+||
|                                                                    |||:diagtext:`static data member of` |nbsp| :placeholder:`C`|||
|                                                                    ||+---------------------------------------------------------+||
|                                                                    |+-----------------------------------------------------------+|
|                                                                    ||+--------------------------------------------+             ||
|                                                                    |||:diagtext:`field of` |nbsp| :placeholder:`C`|             ||
|                                                                    ||+--------------------------------------------+             ||
|                                                                    |+-----------------------------------------------------------+|
|                                                                    ||+----------------------------------------------+           ||
|                                                                    |||:diagtext:`typedef in` |nbsp| :placeholder:`C`|           ||
|                                                                    ||+----------------------------------------------+           ||
|                                                                    |+-----------------------------------------------------------+|
|                                                                    ||+-------------------------------------------------+        ||
|                                                                    |||:diagtext:`type alias in` |nbsp| :placeholder:`C`|        ||
|                                                                    ||+-------------------------------------------------+        ||
|                                                                    |+-----------------------------------------------------------+|
+--------------------------------------------------------------------+-------------------------------------------------------------+


-Wshift-count-negative
----------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+--------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`shift count is negative`|
+--------------------------------------------------------------+


-Wshift-count-overflow
----------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+-------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`shift count >= width of type`|
+-------------------------------------------------------------------+


-Wshift-negative-value
----------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`shifting a negative signed value is undefined`|
+------------------------------------------------------------------------------------+


-Wshift-op-parentheses
----------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`operator '`:placeholder:`A`:diagtext:`' has lower precedence than '`:placeholder:`B`:diagtext:`'; '`:placeholder:`B`:diagtext:`' will be evaluated first`|
+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+


-Wshift-overflow
----------------
This diagnostic is enabled by default.

**Diagnostic text:**

+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`signed shift result (`:placeholder:`A`:diagtext:`) requires` |nbsp| :placeholder:`B` |nbsp| :diagtext:`bits to represent, but` |nbsp| :placeholder:`C` |nbsp| :diagtext:`only has` |nbsp| :placeholder:`D` |nbsp| :diagtext:`bits`|
+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+


-Wshift-sign-overflow
---------------------
**Diagnostic text:**

+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`signed shift result (`:placeholder:`A`:diagtext:`) sets the sign bit of the shift expression's type (`:placeholder:`B`:diagtext:`) and becomes negative`|
+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+


-Wshorten-64-to-32
------------------
**Diagnostic text:**

+---------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`implicit conversion loses integer precision:` |nbsp| :placeholder:`A` |nbsp| :diagtext:`to` |nbsp| :placeholder:`B`|
+---------------------------------------------------------------------------------------------------------------------------------------------------------+


-Wsign-compare
--------------
**Diagnostic text:**

+--------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`comparison of integers of different signs:` |nbsp| :placeholder:`A` |nbsp| :diagtext:`and` |nbsp| :placeholder:`B`|
+--------------------------------------------------------------------------------------------------------------------------------------------------------+


-Wsign-conversion
-----------------
**Diagnostic text:**

+----------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`implicit conversion changes signedness:` |nbsp| :placeholder:`A` |nbsp| :diagtext:`to` |nbsp| :placeholder:`B`|
+----------------------------------------------------------------------------------------------------------------------------------------------------+

+---------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`operand of ? changes signedness:` |nbsp| :placeholder:`A` |nbsp| :diagtext:`to` |nbsp| :placeholder:`B`|
+---------------------------------------------------------------------------------------------------------------------------------------------+

+-----------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`the resulting value is always non-negative after implicit conversion`|
+-----------------------------------------------------------------------------------------------------------+


-Wsign-promo
------------
This diagnostic flag exists for GCC compatibility, and has no effect in Clang.

-Wsigned-enum-bitfield
----------------------
**Diagnostic text:**

+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`enums in the Microsoft ABI are signed integers by default; consider giving the enum` |nbsp| :placeholder:`A` |nbsp| :diagtext:`an unsigned underlying type to make this code portable`|
+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+


-Wsizeof-array-argument
-----------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`sizeof on array function parameter will return size of` |nbsp| :placeholder:`A` |nbsp| :diagtext:`instead of` |nbsp| :placeholder:`B`|
+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------+


-Wsizeof-array-decay
--------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+--------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`sizeof on pointer operation will return size of` |nbsp| :placeholder:`A` |nbsp| :diagtext:`instead of` |nbsp| :placeholder:`B`|
+--------------------------------------------------------------------------------------------------------------------------------------------------------------------+


-Wsizeof-pointer-div
--------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+-------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`'`:placeholder:`A`:diagtext:`' will return the size of the pointer, not the array itself`|
+-------------------------------------------------------------------------------------------------------------------------------+


-Wsizeof-pointer-memaccess
--------------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`'`:placeholder:`A`:diagtext:`' call operates on objects of type` |nbsp| :placeholder:`B` |nbsp| :diagtext:`while the size is based on a different type` |nbsp| :placeholder:`C`|
+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+

+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+-------------------------+---------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`argument to 'sizeof' in` |nbsp| :placeholder:`A` |nbsp| :diagtext:`call is the same pointer type` |nbsp| :placeholder:`B` |nbsp| :diagtext:`as the` |nbsp| |+-----------------------+|:diagtext:`; expected` |nbsp| :placeholder:`D` |nbsp| :diagtext:`or an explicit length`|
|                                                                                                                                                                                                 ||:diagtext:`destination`||                                                                                       |
|                                                                                                                                                                                                 |+-----------------------+|                                                                                       |
|                                                                                                                                                                                                 ||:diagtext:`source`     ||                                                                                       |
|                                                                                                                                                                                                 |+-----------------------+|                                                                                       |
+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+-------------------------+---------------------------------------------------------------------------------------+


-Wslash-u-filename
------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+--------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`'/U`:placeholder:`A`:diagtext:`' treated as the '/U' option`|
+--------------------------------------------------------------------------------------------------+


-Wsometimes-uninitialized
-------------------------
**Diagnostic text:**

+-----------------------------------------------------------------------------------------------------+----------------------+--------------------------------------------------+--------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`variable` |nbsp| :placeholder:`A` |nbsp| :diagtext:`is` |nbsp| |+--------------------+| |nbsp| :diagtext:`uninitialized whenever` |nbsp| |+------------------------------------------------------------------------------------------------------------+|
|                                                                                                     ||:diagtext:`used`    ||                                                  ||+---------------------------------------------------------------+-------------------+                       ||
|                                                                                                     |+--------------------+|                                                  |||:diagtext:`'`:placeholder:`D`:diagtext:`' condition is` |nbsp| |+-----------------+|                       ||
|                                                                                                     ||:diagtext:`captured`||                                                  |||                                                               ||:diagtext:`true` ||                       ||
|                                                                                                     |+--------------------+|                                                  |||                                                               |+-----------------+|                       ||
|                                                                                                     |                      |                                                  |||                                                               ||:diagtext:`false`||                       ||
|                                                                                                     |                      |                                                  |||                                                               |+-----------------+|                       ||
|                                                                                                     |                      |                                                  ||+---------------------------------------------------------------+-------------------+                       ||
|                                                                                                     |                      |                                                  |+------------------------------------------------------------------------------------------------------------+|
|                                                                                                     |                      |                                                  ||+-------------------------------------------------------+--------------------------------------------------+||
|                                                                                                     |                      |                                                  |||:diagtext:`'`:placeholder:`D`:diagtext:`' loop` |nbsp| |+------------------------------------------------+|||
|                                                                                                     |                      |                                                  |||                                                       ||:diagtext:`is entered`                          ||||
|                                                                                                     |                      |                                                  |||                                                       |+------------------------------------------------+|||
|                                                                                                     |                      |                                                  |||                                                       ||:diagtext:`exits because its condition is false`||||
|                                                                                                     |                      |                                                  |||                                                       |+------------------------------------------------+|||
|                                                                                                     |                      |                                                  ||+-------------------------------------------------------+--------------------------------------------------+||
|                                                                                                     |                      |                                                  |+------------------------------------------------------------------------------------------------------------+|
|                                                                                                     |                      |                                                  ||+-------------------------------------------------------+--------------------------------------------------+||
|                                                                                                     |                      |                                                  |||:diagtext:`'`:placeholder:`D`:diagtext:`' loop` |nbsp| |+------------------------------------------------+|||
|                                                                                                     |                      |                                                  |||                                                       ||:diagtext:`condition is true`                   ||||
|                                                                                                     |                      |                                                  |||                                                       |+------------------------------------------------+|||
|                                                                                                     |                      |                                                  |||                                                       ||:diagtext:`exits because its condition is false`||||
|                                                                                                     |                      |                                                  |||                                                       |+------------------------------------------------+|||
|                                                                                                     |                      |                                                  ||+-------------------------------------------------------+--------------------------------------------------+||
|                                                                                                     |                      |                                                  |+------------------------------------------------------------------------------------------------------------+|
|                                                                                                     |                      |                                                  ||+----------------------------------------------------------------------+                                    ||
|                                                                                                     |                      |                                                  |||:diagtext:`switch` |nbsp| :placeholder:`D` |nbsp| :diagtext:`is taken`|                                    ||
|                                                                                                     |                      |                                                  ||+----------------------------------------------------------------------+                                    ||
|                                                                                                     |                      |                                                  |+------------------------------------------------------------------------------------------------------------+|
|                                                                                                     |                      |                                                  ||:diagtext:`its declaration is reached`                                                                      ||
|                                                                                                     |                      |                                                  |+------------------------------------------------------------------------------------------------------------+|
|                                                                                                     |                      |                                                  ||+---------------------------------------------+                                                             ||
|                                                                                                     |                      |                                                  |||:placeholder:`D` |nbsp| :diagtext:`is called`|                                                             ||
|                                                                                                     |                      |                                                  ||+---------------------------------------------+                                                             ||
|                                                                                                     |                      |                                                  |+------------------------------------------------------------------------------------------------------------+|
+-----------------------------------------------------------------------------------------------------+----------------------+--------------------------------------------------+--------------------------------------------------------------------------------------------------------------+


-Wsource-uses-openmp
--------------------
Some of the diagnostics controlled by this flag are enabled by default.

**Diagnostic text:**

+------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`OpenMP only allows an ordered construct with the simd clause nested in a simd construct`|
+------------------------------------------------------------------------------------------------------------------------------+

+------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`unexpected '#pragma omp ...' in program`|
+------------------------------------------------------------------------------+


-Wspir-compat
-------------
**Diagnostic text:**

+----------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`sampler initializer has invalid` |nbsp| :placeholder:`A` |nbsp| :diagtext:`bits`|
+----------------------------------------------------------------------------------------------------------------------+


-Wstack-protector
-----------------
This diagnostic flag exists for GCC compatibility, and has no effect in Clang.

-Wstatic-float-init
-------------------
This diagnostic is enabled by default.

Also controls `-Wgnu-static-float-init`_.

**Diagnostic text:**

+----------------------------------------------------------------------------------------------------------------------------------------------------------------+
|:error:`error:` |nbsp| :diagtext:`in-class initializer for static data member of type` |nbsp| :placeholder:`A` |nbsp| :diagtext:`requires 'constexpr' specifier`|
+----------------------------------------------------------------------------------------------------------------------------------------------------------------+


-Wstatic-in-inline
------------------
Some of the diagnostics controlled by this flag are enabled by default.

**Diagnostic text:**

+-----------------------------------------------------+----------------------+-----------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`static` |nbsp| |+--------------------+| |nbsp| :placeholder:`B` |nbsp| :diagtext:`is used in an inline function with external linkage`|
|                                                     ||:diagtext:`function`||                                                                                               |
|                                                     |+--------------------+|                                                                                               |
|                                                     ||:diagtext:`variable`||                                                                                               |
|                                                     |+--------------------+|                                                                                               |
+-----------------------------------------------------+----------------------+-----------------------------------------------------------------------------------------------+

+-----------------------------------------------------+----------------------+-----------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`static` |nbsp| |+--------------------+| |nbsp| :placeholder:`B` |nbsp| :diagtext:`is used in an inline function with external linkage`|
|                                                     ||:diagtext:`function`||                                                                                               |
|                                                     |+--------------------+|                                                                                               |
|                                                     ||:diagtext:`variable`||                                                                                               |
|                                                     |+--------------------+|                                                                                               |
+-----------------------------------------------------+----------------------+-----------------------------------------------------------------------------------------------+


-Wstatic-inline-explicit-instantiation
--------------------------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+-------------------------------------------------+--------------------+--------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`ignoring '`|+------------------+|:diagtext:`' keyword on explicit template instantiation`|
|                                                 ||:diagtext:`static`||                                                        |
|                                                 |+------------------+|                                                        |
|                                                 ||:diagtext:`inline`||                                                        |
|                                                 |+------------------+|                                                        |
+-------------------------------------------------+--------------------+--------------------------------------------------------+


-Wstatic-local-in-inline
------------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+--------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`non-constant static local variable in inline function may be different in different files`|
+--------------------------------------------------------------------------------------------------------------------------------+


-Wstatic-self-init
------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+----------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`static variable` |nbsp| :placeholder:`A` |nbsp| :diagtext:`is suspiciously used within its own initialization`|
+----------------------------------------------------------------------------------------------------------------------------------------------------+


-Wstdlibcxx-not-found
---------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`include path for libstdc++ headers not found; pass '-stdlib=libc++' on the command line to use the libc++ standard library instead`|
+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------+


-Wstrict-aliasing
-----------------
This diagnostic flag exists for GCC compatibility, and has no effect in Clang.

-Wstrict-aliasing=0
-------------------
This diagnostic flag exists for GCC compatibility, and has no effect in Clang.

-Wstrict-aliasing=1
-------------------
This diagnostic flag exists for GCC compatibility, and has no effect in Clang.

-Wstrict-aliasing=2
-------------------
This diagnostic flag exists for GCC compatibility, and has no effect in Clang.

-Wstrict-overflow
-----------------
This diagnostic flag exists for GCC compatibility, and has no effect in Clang.

-Wstrict-overflow=0
-------------------
This diagnostic flag exists for GCC compatibility, and has no effect in Clang.

-Wstrict-overflow=1
-------------------
This diagnostic flag exists for GCC compatibility, and has no effect in Clang.

-Wstrict-overflow=2
-------------------
This diagnostic flag exists for GCC compatibility, and has no effect in Clang.

-Wstrict-overflow=3
-------------------
This diagnostic flag exists for GCC compatibility, and has no effect in Clang.

-Wstrict-overflow=4
-------------------
This diagnostic flag exists for GCC compatibility, and has no effect in Clang.

-Wstrict-overflow=5
-------------------
This diagnostic flag exists for GCC compatibility, and has no effect in Clang.

-Wstrict-prototypes
-------------------
**Diagnostic text:**

+---------------------------------------------------+--------------------------------------------------------------+-------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`this` |nbsp| |+------------------------------------------------------------+| |nbsp| :diagtext:`a prototype`|
|                                                   ||:diagtext:`function declaration is not`                     ||                               |
|                                                   |+------------------------------------------------------------+|                               |
|                                                   ||:diagtext:`block declaration is not`                        ||                               |
|                                                   |+------------------------------------------------------------+|                               |
|                                                   ||:diagtext:`old-style function definition is not preceded by`||                               |
|                                                   |+------------------------------------------------------------+|                               |
+---------------------------------------------------+--------------------------------------------------------------+-------------------------------+


-Wstrict-prototypes
-------------------
**Diagnostic text:**

+---------------------------------------------------+--------------------------------------------------------------+-------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`this` |nbsp| |+------------------------------------------------------------+| |nbsp| :diagtext:`a prototype`|
|                                                   ||:diagtext:`function declaration is not`                     ||                               |
|                                                   |+------------------------------------------------------------+|                               |
|                                                   ||:diagtext:`block declaration is not`                        ||                               |
|                                                   |+------------------------------------------------------------+|                               |
|                                                   ||:diagtext:`old-style function definition is not preceded by`||                               |
|                                                   |+------------------------------------------------------------+|                               |
+---------------------------------------------------+--------------------------------------------------------------+-------------------------------+


-Wstrict-selector-match
-----------------------
**Diagnostic text:**

+--------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`multiple methods named` |nbsp| :placeholder:`A` |nbsp| :diagtext:`found`|
+--------------------------------------------------------------------------------------------------------------+


-Wstring-compare
----------------
This diagnostic is enabled by default.

**Diagnostic text:**

+---------------------------------------------------------------------------+------------------------------+--------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`result of comparison against` |nbsp| |+----------------------------+| |nbsp| :diagtext:`is unspecified (use strncmp instead)`|
|                                                                           ||:diagtext:`a string literal`||                                                        |
|                                                                           |+----------------------------+|                                                        |
|                                                                           ||:diagtext:`@encode`         ||                                                        |
|                                                                           |+----------------------------+|                                                        |
+---------------------------------------------------------------------------+------------------------------+--------------------------------------------------------+


-Wstring-conversion
-------------------
**Diagnostic text:**

+----------------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`implicit conversion turns string literal into bool:` |nbsp| :placeholder:`A` |nbsp| :diagtext:`to` |nbsp| :placeholder:`B`|
+----------------------------------------------------------------------------------------------------------------------------------------------------------------+


-Wstring-plus-char
------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`adding` |nbsp| :placeholder:`A` |nbsp| :diagtext:`to a string pointer does not append to the string`|
+------------------------------------------------------------------------------------------------------------------------------------------+


-Wstring-plus-int
-----------------
This diagnostic is enabled by default.

**Diagnostic text:**

+----------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`adding` |nbsp| :placeholder:`A` |nbsp| :diagtext:`to a string does not append to the string`|
+----------------------------------------------------------------------------------------------------------------------------------+


-Wstrlcpy-strlcat-size
----------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`size argument in` |nbsp| :placeholder:`A` |nbsp| :diagtext:`call appears to be size of the source; expected the size of the destination`|
+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+


-Wstrncat-size
--------------
This diagnostic is enabled by default.

**Diagnostic text:**

+--------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`the value of the size argument in 'strncat' is too large, might lead to a buffer overflow`|
+--------------------------------------------------------------------------------------------------------------------------------+

+-------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`size argument in 'strncat' call appears to be size of the source`|
+-------------------------------------------------------------------------------------------------------+

+-------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`the value of the size argument to 'strncat' is wrong`|
+-------------------------------------------------------------------------------------------+


-Wsuper-class-method-mismatch
-----------------------------
**Diagnostic text:**

+--------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`method parameter type` |nbsp| :diagtext:`does not match super class method parameter type`|
+--------------------------------------------------------------------------------------------------------------------------------+


-Wsuspicious-bzero
------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+----------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`'size' argument to bzero is '0'`|
+----------------------------------------------------------------------+


-Wsuspicious-memaccess
----------------------
This diagnostic is enabled by default.

Controls `-Wdynamic-class-memaccess`_, `-Wmemset-transposed-args`_, `-Wnontrivial-memaccess`_, `-Wsizeof-pointer-memaccess`_, `-Wsuspicious-bzero`_.


-Wswitch
--------
This diagnostic is enabled by default.

**Diagnostic text:**

+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`overflow converting case value to switch condition type (`:placeholder:`A` |nbsp| :diagtext:`to` |nbsp| :placeholder:`B`:diagtext:`)`|
+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------+

+---------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| |+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+|
|                           ||+----------------------------------------------------------------------------------------------+                                                                                                ||
|                           |||:diagtext:`enumeration value` |nbsp| :placeholder:`B` |nbsp| :diagtext:`not handled in switch`|                                                                                                ||
|                           ||+----------------------------------------------------------------------------------------------+                                                                                                ||
|                           |+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+|
|                           ||+----------------------------------------------------------------------------------------------------------------------------------------------+                                                ||
|                           |||:diagtext:`enumeration values` |nbsp| :placeholder:`B` |nbsp| :diagtext:`and` |nbsp| :placeholder:`C` |nbsp| :diagtext:`not handled in switch`|                                                ||
|                           ||+----------------------------------------------------------------------------------------------------------------------------------------------+                                                ||
|                           |+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+|
|                           ||+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------+                 ||
|                           |||:diagtext:`enumeration values` |nbsp| :placeholder:`B`:diagtext:`,` |nbsp| :placeholder:`C`:diagtext:`, and` |nbsp| :placeholder:`D` |nbsp| :diagtext:`not handled in switch`|                 ||
|                           ||+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------+                 ||
|                           |+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+|
|                           ||+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+||
|                           |||:placeholder:`A` |nbsp| :diagtext:`enumeration values not handled in switch:` |nbsp| :placeholder:`B`:diagtext:`,` |nbsp| :placeholder:`C`:diagtext:`,` |nbsp| :placeholder:`D`:diagtext:`...`|||
|                           ||+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+||
|                           |+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+|
+---------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+

+------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`case value not in enumerated type` |nbsp| :placeholder:`A`|
+------------------------------------------------------------------------------------------------+


-Wswitch-bool
-------------
This diagnostic is enabled by default.

**Diagnostic text:**

+-------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`switch condition has boolean value`|
+-------------------------------------------------------------------------+


-Wswitch-default
----------------
This diagnostic flag exists for GCC compatibility, and has no effect in Clang.

-Wswitch-enum
-------------
**Diagnostic text:**

+---------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| |+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+|
|                           ||+---------------------------------------------------------------------------------------------------------+                                                                                                ||
|                           |||:diagtext:`enumeration value` |nbsp| :placeholder:`B` |nbsp| :diagtext:`not explicitly handled in switch`|                                                                                                ||
|                           ||+---------------------------------------------------------------------------------------------------------+                                                                                                ||
|                           |+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+|
|                           ||+---------------------------------------------------------------------------------------------------------------------------------------------------------+                                                ||
|                           |||:diagtext:`enumeration values` |nbsp| :placeholder:`B` |nbsp| :diagtext:`and` |nbsp| :placeholder:`C` |nbsp| :diagtext:`not explicitly handled in switch`|                                                ||
|                           ||+---------------------------------------------------------------------------------------------------------------------------------------------------------+                                                ||
|                           |+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+|
|                           ||+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+                 ||
|                           |||:diagtext:`enumeration values` |nbsp| :placeholder:`B`:diagtext:`,` |nbsp| :placeholder:`C`:diagtext:`, and` |nbsp| :placeholder:`D` |nbsp| :diagtext:`not explicitly handled in switch`|                 ||
|                           ||+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+                 ||
|                           |+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+|
|                           ||+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+||
|                           |||:placeholder:`A` |nbsp| :diagtext:`enumeration values not explicitly handled in switch:` |nbsp| :placeholder:`B`:diagtext:`,` |nbsp| :placeholder:`C`:diagtext:`,` |nbsp| :placeholder:`D`:diagtext:`...`|||
|                           ||+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+||
|                           |+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+|
+---------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+


-Wsync-fetch-and-nand-semantics-changed
---------------------------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+-------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`the semantics of this intrinsic changed with GCC version 4.4 - the newer semantics are provided here`|
+-------------------------------------------------------------------------------------------------------------------------------------------+


-Wsynth
-------
This diagnostic flag exists for GCC compatibility, and has no effect in Clang.

-Wtautological-compare
----------------------
Some of the diagnostics controlled by this flag are enabled by default.

Also controls `-Wtautological-constant-compare`_, `-Wtautological-objc-bool-compare`_, `-Wtautological-overlap-compare`_, `-Wtautological-pointer-compare`_, `-Wtautological-undefined-compare`_.

**Diagnostic text:**

+---------------------------+---------------------------+--------------------------------------------------+------------------------+
|:warning:`warning:` |nbsp| |+-------------------------+|:diagtext:`comparison always evaluates to` |nbsp| |+----------------------+|
|                           ||:diagtext:`self-`        ||                                                  ||:diagtext:`a constant`||
|                           |+-------------------------+|                                                  |+----------------------+|
|                           ||:diagtext:`array` |nbsp| ||                                                  ||:placeholder:`C`      ||
|                           |+-------------------------+|                                                  |+----------------------+|
+---------------------------+---------------------------+--------------------------------------------------+------------------------+

+-------------------------------------------------------------------------------------+-------------------+
|:warning:`warning:` |nbsp| :diagtext:`bitwise comparison always evaluates to` |nbsp| |+-----------------+|
|                                                                                     ||:diagtext:`false`||
|                                                                                     |+-----------------+|
|                                                                                     ||:diagtext:`true` ||
|                                                                                     |+-----------------+|
+-------------------------------------------------------------------------------------+-------------------+


-Wtautological-constant-compare
-------------------------------
This diagnostic is enabled by default.

Also controls `-Wtautological-constant-out-of-range-compare`_.

**Diagnostic text:**

+----------------------------------------------------------------------+------------------------------------------------+--------------------------------+----------------------------------------------------------+-----------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`result of comparison of` |nbsp| |+----------------------------------------------+| |nbsp| :diagtext:`with` |nbsp| |+--------------------------------------------------------+| |nbsp| :diagtext:`is always` |nbsp| :placeholder:`E`|
|                                                                      ||+--------------------------------------------+||                                ||+------------------------------------------------------+||                                                     |
|                                                                      |||:diagtext:`constant` |nbsp| :placeholder:`A`|||                                |||:diagtext:`expression of type` |nbsp| :placeholder:`C`|||                                                     |
|                                                                      ||+--------------------------------------------+||                                ||+------------------------------------------------------+||                                                     |
|                                                                      |+----------------------------------------------+|                                |+--------------------------------------------------------+|                                                     |
|                                                                      ||:diagtext:`true`                              ||                                ||:diagtext:`boolean expression`                          ||                                                     |
|                                                                      |+----------------------------------------------+|                                |+--------------------------------------------------------+|                                                     |
|                                                                      ||:diagtext:`false`                             ||                                |                                                          |                                                     |
|                                                                      |+----------------------------------------------+|                                |                                                          |                                                     |
+----------------------------------------------------------------------+------------------------------------------------+--------------------------------+----------------------------------------------------------+-----------------------------------------------------+


-Wtautological-constant-in-range-compare
----------------------------------------
Controls `-Wtautological-type-limit-compare`_, `-Wtautological-unsigned-enum-zero-compare`_, `-Wtautological-unsigned-zero-compare`_.


-Wtautological-constant-out-of-range-compare
--------------------------------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+----------------------------------------------------------------------+------------------------------------------------+--------------------------------+----------------------------------------------------------+-----------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`result of comparison of` |nbsp| |+----------------------------------------------+| |nbsp| :diagtext:`with` |nbsp| |+--------------------------------------------------------+| |nbsp| :diagtext:`is always` |nbsp| :placeholder:`E`|
|                                                                      ||+--------------------------------------------+||                                ||+------------------------------------------------------+||                                                     |
|                                                                      |||:diagtext:`constant` |nbsp| :placeholder:`A`|||                                |||:diagtext:`expression of type` |nbsp| :placeholder:`C`|||                                                     |
|                                                                      ||+--------------------------------------------+||                                ||+------------------------------------------------------+||                                                     |
|                                                                      |+----------------------------------------------+|                                |+--------------------------------------------------------+|                                                     |
|                                                                      ||:diagtext:`true`                              ||                                ||:diagtext:`boolean expression`                          ||                                                     |
|                                                                      |+----------------------------------------------+|                                |+--------------------------------------------------------+|                                                     |
|                                                                      ||:diagtext:`false`                             ||                                |                                                          |                                                     |
|                                                                      |+----------------------------------------------+|                                |                                                          |                                                     |
+----------------------------------------------------------------------+------------------------------------------------+--------------------------------+----------------------------------------------------------+-----------------------------------------------------+


-Wtautological-objc-bool-compare
--------------------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`result of comparison of constant` |nbsp| :placeholder:`A` |nbsp| :diagtext:`with expression of type BOOL is always` |nbsp| :placeholder:`B`:diagtext:`, as the only well defined values for BOOL are YES and NO`|
+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+


-Wtautological-overlap-compare
------------------------------
**Diagnostic text:**

+-----------------------------------------------------------------------------------------+-------------------+
|:warning:`warning:` |nbsp| :diagtext:`overlapping comparisons always evaluate to` |nbsp| |+-----------------+|
|                                                                                         ||:diagtext:`false`||
|                                                                                         |+-----------------+|
|                                                                                         ||:diagtext:`true` ||
|                                                                                         |+-----------------+|
+-----------------------------------------------------------------------------------------+-------------------+


-Wtautological-pointer-compare
------------------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+--------------------------------------------------------------------+---------------------------+----------------------------------------------------------+-------------------------+----------------------------------------+-------------------+--------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`comparison of nonnull` |nbsp| |+-------------------------+| |nbsp| :diagtext:`'`:placeholder:`B`:diagtext:`'` |nbsp| |+-----------------------+|:diagtext:`equal to a null pointer is '`|+-----------------+|:diagtext:`' on first encounter`|
|                                                                    ||:diagtext:`function call`||                                                          ||:diagtext:`not` |nbsp| ||                                        ||:diagtext:`true` ||                                |
|                                                                    |+-------------------------+|                                                          |+-----------------------+|                                        |+-----------------+|                                |
|                                                                    ||:diagtext:`parameter`    ||                                                          ||                       ||                                        ||:diagtext:`false`||                                |
|                                                                    |+-------------------------+|                                                          |+-----------------------+|                                        |+-----------------+|                                |
+--------------------------------------------------------------------+---------------------------+----------------------------------------------------------+-------------------------+----------------------------------------+-------------------+--------------------------------+

+------------------------------------------------------------+------------------------+----------------------------------------------------------+-------------------------+-----------------------------------------------------+-------------------+
|:warning:`warning:` |nbsp| :diagtext:`comparison of` |nbsp| |+----------------------+| |nbsp| :diagtext:`'`:placeholder:`B`:diagtext:`'` |nbsp| |+-----------------------+|:diagtext:`equal to a null pointer is always` |nbsp| |+-----------------+|
|                                                            ||:diagtext:`address of`||                                                          ||:diagtext:`not` |nbsp| ||                                                     ||:diagtext:`true` ||
|                                                            |+----------------------+|                                                          |+-----------------------+|                                                     |+-----------------+|
|                                                            ||:diagtext:`function`  ||                                                          ||                       ||                                                     ||:diagtext:`false`||
|                                                            |+----------------------+|                                                          |+-----------------------+|                                                     |+-----------------+|
|                                                            ||:diagtext:`array`     ||                                                          |                         |                                                     |                   |
|                                                            |+----------------------+|                                                          |                         |                                                     |                   |
+------------------------------------------------------------+------------------------+----------------------------------------------------------+-------------------------+-----------------------------------------------------+-------------------+


-Wtautological-type-limit-compare
---------------------------------
**Diagnostic text:**

+-------------------------------------------------------------------+------------------+--------------------------------+------------------+-----------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`result of comparison` |nbsp| |+----------------+| |nbsp| :placeholder:`C` |nbsp| |+----------------+| |nbsp| :diagtext:`is always` |nbsp| :placeholder:`E`|
|                                                                   ||:placeholder:`D`||                                ||:placeholder:`B`||                                                     |
|                                                                   |+----------------+|                                |+----------------+|                                                     |
|                                                                   ||:placeholder:`B`||                                ||:placeholder:`D`||                                                     |
|                                                                   |+----------------+|                                |+----------------+|                                                     |
+-------------------------------------------------------------------+------------------+--------------------------------+------------------+-----------------------------------------------------+


-Wtautological-undefined-compare
--------------------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+-------------------+
|:warning:`warning:` |nbsp| :diagtext:`reference cannot be bound to dereferenced null pointer in well-defined C++ code; comparison may be assumed to always evaluate to` |nbsp| |+-----------------+|
|                                                                                                                                                                               ||:diagtext:`true` ||
|                                                                                                                                                                               |+-----------------+|
|                                                                                                                                                                               ||:diagtext:`false`||
|                                                                                                                                                                               |+-----------------+|
+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+-------------------+

+------------------------------------------------------------------------------------------------------------------------------------------------------+-------------------+
|:warning:`warning:` |nbsp| :diagtext:`'this' pointer cannot be null in well-defined C++ code; comparison may be assumed to always evaluate to` |nbsp| |+-----------------+|
|                                                                                                                                                      ||:diagtext:`true` ||
|                                                                                                                                                      |+-----------------+|
|                                                                                                                                                      ||:diagtext:`false`||
|                                                                                                                                                      |+-----------------+|
+------------------------------------------------------------------------------------------------------------------------------------------------------+-------------------+


-Wtautological-unsigned-enum-zero-compare
-----------------------------------------
**Diagnostic text:**

+----------------------------------------------------------------------+--------------------------------------+--------------------------------+--------------------------------------+-----------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`result of comparison of` |nbsp| |+------------------------------------+| |nbsp| :placeholder:`C` |nbsp| |+------------------------------------+| |nbsp| :diagtext:`is always` |nbsp| :placeholder:`E`|
|                                                                      ||:placeholder:`D`                    ||                                ||:diagtext:`unsigned enum expression`||                                                     |
|                                                                      |+------------------------------------+|                                |+------------------------------------+|                                                     |
|                                                                      ||:diagtext:`unsigned enum expression`||                                ||:placeholder:`D`                    ||                                                     |
|                                                                      |+------------------------------------+|                                |+------------------------------------+|                                                     |
+----------------------------------------------------------------------+--------------------------------------+--------------------------------+--------------------------------------+-----------------------------------------------------+


-Wtautological-unsigned-zero-compare
------------------------------------
**Diagnostic text:**

+----------------------------------------------------------------------+---------------------------------+--------------------------------+---------------------------------+-----------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`result of comparison of` |nbsp| |+-------------------------------+| |nbsp| :placeholder:`C` |nbsp| |+-------------------------------+| |nbsp| :diagtext:`is always` |nbsp| :placeholder:`E`|
|                                                                      ||:placeholder:`D`               ||                                ||:diagtext:`unsigned expression`||                                                     |
|                                                                      |+-------------------------------+|                                |+-------------------------------+|                                                     |
|                                                                      ||:diagtext:`unsigned expression`||                                ||:placeholder:`D`               ||                                                     |
|                                                                      |+-------------------------------+|                                |+-------------------------------+|                                                     |
+----------------------------------------------------------------------+---------------------------------+--------------------------------+---------------------------------+-----------------------------------------------------+


-Wtentative-definition-incomplete-type
--------------------------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+---------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`tentative definition of variable with internal linkage has incomplete non-array type` |nbsp| :placeholder:`A`|
+---------------------------------------------------------------------------------------------------------------------------------------------------+


-Wthread-safety
---------------
Controls `-Wthread-safety-analysis`_, `-Wthread-safety-attributes`_, `-Wthread-safety-precise`_, `-Wthread-safety-reference`_.


-Wthread-safety-analysis
------------------------
**Diagnostic text:**

+----------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :placeholder:`A` |nbsp| :diagtext:`'`:placeholder:`B`:diagtext:`' must be acquired before '`:placeholder:`C`:diagtext:`'`|
+----------------------------------------------------------------------------------------------------------------------------------------------------+

+---------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`Cycle in acquired\_before/after dependencies, starting with '`:placeholder:`A`:diagtext:`'`|
+---------------------------------------------------------------------------------------------------------------------------------+

+---------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`cannot resolve lock expression`|
+---------------------------------------------------------------------+

+-----------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`acquiring` |nbsp| :placeholder:`A` |nbsp| :diagtext:`'`:placeholder:`B`:diagtext:`' that is already held`|
+-----------------------------------------------------------------------------------------------------------------------------------------------+

+-----------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`expecting` |nbsp| :placeholder:`A` |nbsp| :diagtext:`'`:placeholder:`B`:diagtext:`' to be held at start of each loop`|
+-----------------------------------------------------------------------------------------------------------------------------------------------------------+

+------------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`expecting` |nbsp| :placeholder:`A` |nbsp| :diagtext:`'`:placeholder:`B`:diagtext:`' to be held at the end of function`|
+------------------------------------------------------------------------------------------------------------------------------------------------------------+

+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`cannot call function '`:placeholder:`B`:diagtext:`' while` |nbsp| :placeholder:`A` |nbsp| :diagtext:`'`:placeholder:`C`:diagtext:`' is held`|
+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+

+---------------------------------------------------------------------------------------------------------------------------------------------------+----------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`calling function` |nbsp| :placeholder:`B` |nbsp| :diagtext:`requires holding` |nbsp| :placeholder:`A` |nbsp| |+--------------------------------------------------------+|
|                                                                                                                                                   ||+------------------------------------------+            ||
|                                                                                                                                                   |||:diagtext:`'`:placeholder:`C`:diagtext:`'`|            ||
|                                                                                                                                                   ||+------------------------------------------+            ||
|                                                                                                                                                   |+--------------------------------------------------------+|
|                                                                                                                                                   ||+------------------------------------------------------+||
|                                                                                                                                                   |||:diagtext:`'`:placeholder:`C`:diagtext:`' exclusively`|||
|                                                                                                                                                   ||+------------------------------------------------------+||
|                                                                                                                                                   |+--------------------------------------------------------+|
+---------------------------------------------------------------------------------------------------------------------------------------------------+----------------------------------------------------------+

+--------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :placeholder:`A` |nbsp| :diagtext:`'`:placeholder:`B`:diagtext:`' is acquired exclusively and shared in the same scope`|
+--------------------------------------------------------------------------------------------------------------------------------------------------+

+------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :placeholder:`A` |nbsp| :diagtext:`'`:placeholder:`B`:diagtext:`' is not held on every path through here`|
+------------------------------------------------------------------------------------------------------------------------------------+

+----------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :placeholder:`A` |nbsp| :diagtext:`'`:placeholder:`B`:diagtext:`' is still held at the end of function`|
+----------------------------------------------------------------------------------------------------------------------------------+

+--------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`releasing` |nbsp| :placeholder:`A` |nbsp| :diagtext:`'`:placeholder:`B`:diagtext:`' that was not held`|
+--------------------------------------------------------------------------------------------------------------------------------------------+

+----------------------------------------------------------------------------------------------------------------------------------------+-----------------------+--------------------------------------------+-----------------------+--------------------------+
|:warning:`warning:` |nbsp| :diagtext:`releasing` |nbsp| :placeholder:`A` |nbsp| :diagtext:`'`:placeholder:`B`:diagtext:`' using` |nbsp| |+---------------------+| |nbsp| :diagtext:`access, expected` |nbsp| |+---------------------+| |nbsp| :diagtext:`access`|
|                                                                                                                                        ||:diagtext:`shared`   ||                                            ||:diagtext:`shared`   ||                          |
|                                                                                                                                        |+---------------------+|                                            |+---------------------+|                          |
|                                                                                                                                        ||:diagtext:`exclusive`||                                            ||:diagtext:`exclusive`||                          |
|                                                                                                                                        |+---------------------+|                                            |+---------------------+|                          |
+----------------------------------------------------------------------------------------------------------------------------------------+-----------------------+--------------------------------------------+-----------------------+--------------------------+

+---------------------------+---------------------+---------------------------------------------------------------------------------------------------------------+-----------------------------------+
|:warning:`warning:` |nbsp| |+-------------------+| |nbsp| :diagtext:`the value pointed to by` |nbsp| :placeholder:`A` |nbsp| :diagtext:`requires holding` |nbsp| |+---------------------------------+|
|                           ||:diagtext:`reading`||                                                                                                               ||:diagtext:`any mutex`            ||
|                           |+-------------------+|                                                                                                               |+---------------------------------+|
|                           ||:diagtext:`writing`||                                                                                                               ||:diagtext:`any mutex exclusively`||
|                           |+-------------------+|                                                                                                               |+---------------------------------+|
+---------------------------+---------------------+---------------------------------------------------------------------------------------------------------------+-----------------------------------+

+---------------------------+---------------------+---------------------------------------------------------------------------------------------------------------------------------------+----------------------------------------------------------+
|:warning:`warning:` |nbsp| |+-------------------+| |nbsp| :diagtext:`the value pointed to by` |nbsp| :placeholder:`B` |nbsp| :diagtext:`requires holding` |nbsp| :placeholder:`A` |nbsp| |+--------------------------------------------------------+|
|                           ||:diagtext:`reading`||                                                                                                                                       ||+------------------------------------------+            ||
|                           |+-------------------+|                                                                                                                                       |||:diagtext:`'`:placeholder:`C`:diagtext:`'`|            ||
|                           ||:diagtext:`writing`||                                                                                                                                       ||+------------------------------------------+            ||
|                           |+-------------------+|                                                                                                                                       |+--------------------------------------------------------+|
|                           |                     |                                                                                                                                       ||+------------------------------------------------------+||
|                           |                     |                                                                                                                                       |||:diagtext:`'`:placeholder:`C`:diagtext:`' exclusively`|||
|                           |                     |                                                                                                                                       ||+------------------------------------------------------+||
|                           |                     |                                                                                                                                       |+--------------------------------------------------------+|
+---------------------------+---------------------+---------------------------------------------------------------------------------------------------------------------------------------+----------------------------------------------------------+

+---------------------------+---------------------+------------------------------------------------------------------------------------------------+-----------------------------------+
|:warning:`warning:` |nbsp| |+-------------------+| |nbsp| :diagtext:`variable` |nbsp| :placeholder:`A` |nbsp| :diagtext:`requires holding` |nbsp| |+---------------------------------+|
|                           ||:diagtext:`reading`||                                                                                                ||:diagtext:`any mutex`            ||
|                           |+-------------------+|                                                                                                |+---------------------------------+|
|                           ||:diagtext:`writing`||                                                                                                ||:diagtext:`any mutex exclusively`||
|                           |+-------------------+|                                                                                                |+---------------------------------+|
+---------------------------+---------------------+------------------------------------------------------------------------------------------------+-----------------------------------+

+---------------------------+---------------------+------------------------------------------------------------------------------------------------------------------------+----------------------------------------------------------+
|:warning:`warning:` |nbsp| |+-------------------+| |nbsp| :diagtext:`variable` |nbsp| :placeholder:`B` |nbsp| :diagtext:`requires holding` |nbsp| :placeholder:`A` |nbsp| |+--------------------------------------------------------+|
|                           ||:diagtext:`reading`||                                                                                                                        ||+------------------------------------------+            ||
|                           |+-------------------+|                                                                                                                        |||:diagtext:`'`:placeholder:`C`:diagtext:`'`|            ||
|                           ||:diagtext:`writing`||                                                                                                                        ||+------------------------------------------+            ||
|                           |+-------------------+|                                                                                                                        |+--------------------------------------------------------+|
|                           |                     |                                                                                                                        ||+------------------------------------------------------+||
|                           |                     |                                                                                                                        |||:diagtext:`'`:placeholder:`C`:diagtext:`' exclusively`|||
|                           |                     |                                                                                                                        ||+------------------------------------------------------+||
|                           |                     |                                                                                                                        |+--------------------------------------------------------+|
+---------------------------+---------------------+------------------------------------------------------------------------------------------------------------------------+----------------------------------------------------------+


-Wthread-safety-attributes
--------------------------
**Diagnostic text:**

+----------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`invalid capability name '`:placeholder:`A`:diagtext:`'; capability name must be 'mutex' or 'role'`|
+----------------------------------------------------------------------------------------------------------------------------------------+

+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :placeholder:`A` |nbsp| :diagtext:`attribute requires arguments whose type is annotated with 'capability' attribute; type here is` |nbsp| :placeholder:`B`|
+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+

+--------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :placeholder:`A` |nbsp| :diagtext:`attribute can only be applied in a context annotated with 'capability("mutex")' attribute`|
+--------------------------------------------------------------------------------------------------------------------------------------------------------+

+----------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :placeholder:`A` |nbsp| :diagtext:`only applies to pointer types; type here is` |nbsp| :placeholder:`B`|
+----------------------------------------------------------------------------------------------------------------------------------+

+------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`ignoring` |nbsp| :placeholder:`A` |nbsp| :diagtext:`attribute because its argument is invalid`|
+------------------------------------------------------------------------------------------------------------------------------------+

+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :placeholder:`A` |nbsp| :diagtext:`attribute without capability arguments refers to 'this', but` |nbsp| :placeholder:`B` |nbsp| :diagtext:`isn't annotated with 'capability' or 'scoped\_lockable' attribute`|
+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+

+----------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :placeholder:`A` |nbsp| :diagtext:`attribute without capability arguments can only be applied to non-static methods of a class`|
+----------------------------------------------------------------------------------------------------------------------------------------------------------+


-Wthread-safety-beta
--------------------
**Diagnostic text:**

+------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`Thread safety beta warning.`|
+------------------------------------------------------------------+


-Wthread-safety-negative
------------------------
**Diagnostic text:**

+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`acquiring` |nbsp| :placeholder:`A` |nbsp| :diagtext:`'`:placeholder:`B`:diagtext:`' requires negative capability '`:placeholder:`C`:diagtext:`'`|
+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+


-Wthread-safety-precise
-----------------------
**Diagnostic text:**

+---------------------------------------------------------------------------------------------------------------------------------------------------+----------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`calling function` |nbsp| :placeholder:`B` |nbsp| :diagtext:`requires holding` |nbsp| :placeholder:`A` |nbsp| |+--------------------------------------------------------+|
|                                                                                                                                                   ||+------------------------------------------+            ||
|                                                                                                                                                   |||:diagtext:`'`:placeholder:`C`:diagtext:`'`|            ||
|                                                                                                                                                   ||+------------------------------------------+            ||
|                                                                                                                                                   |+--------------------------------------------------------+|
|                                                                                                                                                   ||+------------------------------------------------------+||
|                                                                                                                                                   |||:diagtext:`'`:placeholder:`C`:diagtext:`' exclusively`|||
|                                                                                                                                                   ||+------------------------------------------------------+||
|                                                                                                                                                   |+--------------------------------------------------------+|
+---------------------------------------------------------------------------------------------------------------------------------------------------+----------------------------------------------------------+

+---------------------------+---------------------+---------------------------------------------------------------------------------------------------------------------------------------+----------------------------------------------------------+
|:warning:`warning:` |nbsp| |+-------------------+| |nbsp| :diagtext:`the value pointed to by` |nbsp| :placeholder:`B` |nbsp| :diagtext:`requires holding` |nbsp| :placeholder:`A` |nbsp| |+--------------------------------------------------------+|
|                           ||:diagtext:`reading`||                                                                                                                                       ||+------------------------------------------+            ||
|                           |+-------------------+|                                                                                                                                       |||:diagtext:`'`:placeholder:`C`:diagtext:`'`|            ||
|                           ||:diagtext:`writing`||                                                                                                                                       ||+------------------------------------------+            ||
|                           |+-------------------+|                                                                                                                                       |+--------------------------------------------------------+|
|                           |                     |                                                                                                                                       ||+------------------------------------------------------+||
|                           |                     |                                                                                                                                       |||:diagtext:`'`:placeholder:`C`:diagtext:`' exclusively`|||
|                           |                     |                                                                                                                                       ||+------------------------------------------------------+||
|                           |                     |                                                                                                                                       |+--------------------------------------------------------+|
+---------------------------+---------------------+---------------------------------------------------------------------------------------------------------------------------------------+----------------------------------------------------------+

+---------------------------+---------------------+------------------------------------------------------------------------------------------------------------------------+----------------------------------------------------------+
|:warning:`warning:` |nbsp| |+-------------------+| |nbsp| :diagtext:`variable` |nbsp| :placeholder:`B` |nbsp| :diagtext:`requires holding` |nbsp| :placeholder:`A` |nbsp| |+--------------------------------------------------------+|
|                           ||:diagtext:`reading`||                                                                                                                        ||+------------------------------------------+            ||
|                           |+-------------------+|                                                                                                                        |||:diagtext:`'`:placeholder:`C`:diagtext:`'`|            ||
|                           ||:diagtext:`writing`||                                                                                                                        ||+------------------------------------------+            ||
|                           |+-------------------+|                                                                                                                        |+--------------------------------------------------------+|
|                           |                     |                                                                                                                        ||+------------------------------------------------------+||
|                           |                     |                                                                                                                        |||:diagtext:`'`:placeholder:`C`:diagtext:`' exclusively`|||
|                           |                     |                                                                                                                        ||+------------------------------------------------------+||
|                           |                     |                                                                                                                        |+--------------------------------------------------------+|
+---------------------------+---------------------+------------------------------------------------------------------------------------------------------------------------+----------------------------------------------------------+


-Wthread-safety-reference
-------------------------
**Diagnostic text:**

+----------------------------------------------------------------------------------------------------------------------------------------------------------------+----------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`passing variable` |nbsp| :placeholder:`B` |nbsp| :diagtext:`by reference requires holding` |nbsp| :placeholder:`A` |nbsp| |+--------------------------------------------------------+|
|                                                                                                                                                                ||+------------------------------------------+            ||
|                                                                                                                                                                |||:diagtext:`'`:placeholder:`C`:diagtext:`'`|            ||
|                                                                                                                                                                ||+------------------------------------------+            ||
|                                                                                                                                                                |+--------------------------------------------------------+|
|                                                                                                                                                                ||+------------------------------------------------------+||
|                                                                                                                                                                |||:diagtext:`'`:placeholder:`C`:diagtext:`' exclusively`|||
|                                                                                                                                                                ||+------------------------------------------------------+||
|                                                                                                                                                                |+--------------------------------------------------------+|
+----------------------------------------------------------------------------------------------------------------------------------------------------------------+----------------------------------------------------------+

+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+----------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`passing the value that` |nbsp| :placeholder:`B` |nbsp| :diagtext:`points to by reference requires holding` |nbsp| :placeholder:`A` |nbsp| |+--------------------------------------------------------+|
|                                                                                                                                                                                ||+------------------------------------------+            ||
|                                                                                                                                                                                |||:diagtext:`'`:placeholder:`C`:diagtext:`'`|            ||
|                                                                                                                                                                                ||+------------------------------------------+            ||
|                                                                                                                                                                                |+--------------------------------------------------------+|
|                                                                                                                                                                                ||+------------------------------------------------------+||
|                                                                                                                                                                                |||:diagtext:`'`:placeholder:`C`:diagtext:`' exclusively`|||
|                                                                                                                                                                                ||+------------------------------------------------------+||
|                                                                                                                                                                                |+--------------------------------------------------------+|
+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+----------------------------------------------------------+


-Wthread-safety-verbose
-----------------------
**Diagnostic text:**

+---------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`Thread safety verbose warning.`|
+---------------------------------------------------------------------+


-Wtrigraphs
-----------
This diagnostic is enabled by default.

**Diagnostic text:**

+-----------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`trigraph converted to '`:placeholder:`A`:diagtext:`' character`|
+-----------------------------------------------------------------------------------------------------+

+------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`trigraph ends block comment`|
+------------------------------------------------------------------+

+-------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`trigraph ignored`|
+-------------------------------------------------------+

+-------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`ignored trigraph would end block comment`|
+-------------------------------------------------------------------------------+


-Wtype-limits
-------------
Synonym for `-Wtautological-constant-in-range-compare`_.


-Wtype-limits
-------------
Synonym for `-Wtautological-constant-in-range-compare`_.


-Wtype-safety
-------------
This diagnostic is enabled by default.

**Diagnostic text:**

+----------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`specified` |nbsp| :placeholder:`A` |nbsp| :diagtext:`type tag requires a null pointer`|
+----------------------------------------------------------------------------------------------------------------------------+

+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`argument type` |nbsp| :placeholder:`A` |nbsp| :diagtext:`doesn't match specified` |nbsp| :placeholder:`B` |nbsp| :diagtext:`type tag` |nbsp| |+---------------------------------------------------+|
|                                                                                                                                                                                   ||+-------------------------------------------------+||
|                                                                                                                                                                                   |||:diagtext:`that requires` |nbsp| :placeholder:`D`|||
|                                                                                                                                                                                   ||+-------------------------------------------------+||
|                                                                                                                                                                                   |+---------------------------------------------------+|
|                                                                                                                                                                                   ||                                                   ||
|                                                                                                                                                                                   |+---------------------------------------------------+|
+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------+

+---------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`this type tag was not designed to be used with this function`|
+---------------------------------------------------------------------------------------------------+


-Wtypedef-redefinition
----------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+--------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`redefinition of typedef` |nbsp| :placeholder:`A` |nbsp| :diagtext:`is a C11 feature`|
+--------------------------------------------------------------------------------------------------------------------------+


-Wtypename-missing
------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+-------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`missing 'typename' prior to dependent type name '`:placeholder:`A`:placeholder:`B`:diagtext:`'`|
+-------------------------------------------------------------------------------------------------------------------------------------+


-Wunable-to-open-stats-file
---------------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+-------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`unable to open statistics output file '`:placeholder:`A`:diagtext:`': '`:placeholder:`B`:diagtext:`'`|
+-------------------------------------------------------------------------------------------------------------------------------------------+


-Wunavailable-declarations
--------------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+----------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :placeholder:`A` |nbsp| :diagtext:`may be unavailable because the receiver type is unknown`|
+----------------------------------------------------------------------------------------------------------------------+


-Wundeclared-selector
---------------------
**Diagnostic text:**

+----------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`undeclared selector` |nbsp| :placeholder:`A`|
+----------------------------------------------------------------------------------+

+-------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`undeclared selector` |nbsp| :placeholder:`A`:diagtext:`; did you mean` |nbsp| :placeholder:`B`:diagtext:`?`|
+-------------------------------------------------------------------------------------------------------------------------------------------------+


-Wundef
-------
**Diagnostic text:**

+---------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :placeholder:`A` |nbsp| :diagtext:`is not defined, evaluates to 0`|
+---------------------------------------------------------------------------------------------+


-Wundefined-bool-conversion
---------------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`reference cannot be bound to dereferenced null pointer in well-defined C++ code; pointer may be assumed to always convert to true`|
+------------------------------------------------------------------------------------------------------------------------------------------------------------------------+

+-----------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`'this' pointer cannot be null in well-defined C++ code; pointer may be assumed to always convert to true`|
+-----------------------------------------------------------------------------------------------------------------------------------------------+


-Wundefined-func-template
-------------------------
**Diagnostic text:**

+---------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`instantiation of function` |nbsp| :placeholder:`A` |nbsp| :diagtext:`required here, but no definition is available`|
+---------------------------------------------------------------------------------------------------------------------------------------------------------+


-Wundefined-inline
------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+----------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`inline function` |nbsp| :placeholder:`A` |nbsp| :diagtext:`is not defined`|
+----------------------------------------------------------------------------------------------------------------+


-Wundefined-internal
--------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+---------------------------+----------------------+-----------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| |+--------------------+| |nbsp| :placeholder:`B` |nbsp| :diagtext:`has internal linkage but is not defined`|
|                           ||:diagtext:`function`||                                                                                   |
|                           |+--------------------+|                                                                                   |
|                           ||:diagtext:`variable`||                                                                                   |
|                           |+--------------------+|                                                                                   |
+---------------------------+----------------------+-----------------------------------------------------------------------------------+


-Wundefined-internal-type
-------------------------
**Diagnostic text:**

+---------------------------------------------------------------------------------------------------------+----------------------+----------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`ISO C++ requires a definition in this translation unit for` |nbsp| |+--------------------+| |nbsp| :placeholder:`B` |nbsp| :diagtext:`because its type does not have linkage`|
|                                                                                                         ||:diagtext:`function`||                                                                                  |
|                                                                                                         |+--------------------+|                                                                                  |
|                                                                                                         ||:diagtext:`variable`||                                                                                  |
|                                                                                                         |+--------------------+|                                                                                  |
+---------------------------------------------------------------------------------------------------------+----------------------+----------------------------------------------------------------------------------+


-Wundefined-reinterpret-cast
----------------------------
**Diagnostic text:**

+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`dereference of type` |nbsp| :placeholder:`B` |nbsp| :diagtext:`that was reinterpret\_cast from type` |nbsp| :placeholder:`A` |nbsp| :diagtext:`has undefined behavior`|
+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+

+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`reinterpret\_cast from` |nbsp| :placeholder:`A` |nbsp| :diagtext:`to` |nbsp| :placeholder:`B` |nbsp| :diagtext:`has undefined behavior`|
+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------+


-Wundefined-var-template
------------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+---------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`instantiation of variable` |nbsp| :placeholder:`A` |nbsp| :diagtext:`required here, but no definition is available`|
+---------------------------------------------------------------------------------------------------------------------------------------------------------+


-Wunderaligned-exception-object
-------------------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+---------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`underaligned exception object thrown`|
+---------------------------------------------------------------------------+


-Wunevaluated-expression
------------------------
This diagnostic is enabled by default.

Also controls `-Wpotentially-evaluated-expression`_.

**Diagnostic text:**

+-----------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`expression with side effects has no effect in an unevaluated context`|
+-----------------------------------------------------------------------------------------------------------+


-Wunguarded-availability
------------------------
Some of the diagnostics controlled by this flag are enabled by default.

Also controls `-Wunguarded-availability-new`_.

**Diagnostic text:**

+---------------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :placeholder:`A` |nbsp| :diagtext:`is only available on` |nbsp| :placeholder:`B` |nbsp| :placeholder:`C` |nbsp| :diagtext:`or newer`|
+---------------------------------------------------------------------------------------------------------------------------------------------------------------+


-Wunguarded-availability-new
----------------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+---------------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :placeholder:`A` |nbsp| :diagtext:`is only available on` |nbsp| :placeholder:`B` |nbsp| :placeholder:`C` |nbsp| :diagtext:`or newer`|
+---------------------------------------------------------------------------------------------------------------------------------------------------------------+


-Wunicode
---------
This diagnostic is enabled by default.

**Diagnostic text:**

+-------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`incomplete universal character name; treating as '\\' followed by identifier`|
+-------------------------------------------------------------------------------------------------------------------+

+-------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`\\`:placeholder:`A` |nbsp| :diagtext:`used with no following hex digits; treating as '\\' followed by identifier`|
+-------------------------------------------------------------------------------------------------------------------------------------------------------+

+-----------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`universal character name refers to a surrogate character`|
+-----------------------------------------------------------------------------------------------+

+--------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`universal character names are only valid in C99 or C++; treating as '\\' followed by identifier`|
+--------------------------------------------------------------------------------------------------------------------------------------+

+---------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`universal character names are only valid in C99 or C++`|
+---------------------------------------------------------------------------------------------+


-Wunicode-homoglyph
-------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`treating Unicode character <U+`:placeholder:`A`:diagtext:`> as identifier character rather than as '`:placeholder:`B`:diagtext:`' symbol`|
+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+


-Wunicode-whitespace
--------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+-------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`treating Unicode character as whitespace`|
+-------------------------------------------------------------------------------+


-Wunicode-zero-width
--------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+----------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`identifier contains Unicode character <U+`:placeholder:`A`:diagtext:`> that is invisible in some environments`|
+----------------------------------------------------------------------------------------------------------------------------------------------------+


-Wuninitialized
---------------
Some of the diagnostics controlled by this flag are enabled by default.

Also controls `-Wsometimes-uninitialized`_, `-Wstatic-self-init`_.

**Diagnostic text:**

+--------------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`base class` |nbsp| :placeholder:`A` |nbsp| :diagtext:`is uninitialized when used here to access` |nbsp| :placeholder:`B`|
+--------------------------------------------------------------------------------------------------------------------------------------------------------------+

+-----------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`field` |nbsp| :placeholder:`A` |nbsp| :diagtext:`is uninitialized when used here`|
+-----------------------------------------------------------------------------------------------------------------------+

+--------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`reference` |nbsp| :placeholder:`A` |nbsp| :diagtext:`is not yet bound to a value when used here`|
+--------------------------------------------------------------------------------------------------------------------------------------+

+-------------------------------------------------------------------------------------------------------------------+---------------------------+------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`block pointer variable` |nbsp| :placeholder:`A` |nbsp| :diagtext:`is` |nbsp| |+-------------------------+| |nbsp| :diagtext:`when captured by block`|
|                                                                                                                   ||:diagtext:`uninitialized`||                                          |
|                                                                                                                   |+-------------------------+|                                          |
|                                                                                                                   ||:diagtext:`null`         ||                                          |
|                                                                                                                   |+-------------------------+|                                          |
+-------------------------------------------------------------------------------------------------------------------+---------------------------+------------------------------------------+

+---------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`variable` |nbsp| :placeholder:`A` |nbsp| :diagtext:`is uninitialized when used within its own initialization`|
+---------------------------------------------------------------------------------------------------------------------------------------------------+

+---------------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`reference` |nbsp| :placeholder:`A` |nbsp| :diagtext:`is not yet bound to a value when used within its own initialization`|
+---------------------------------------------------------------------------------------------------------------------------------------------------------------+

+------------------------------------------------------------------------------------------------------------------------+-------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`variable` |nbsp| :placeholder:`A` |nbsp| :diagtext:`is uninitialized when` |nbsp| |+-----------------------------+|
|                                                                                                                        ||:diagtext:`used here`        ||
|                                                                                                                        |+-----------------------------+|
|                                                                                                                        ||:diagtext:`captured by block`||
|                                                                                                                        |+-----------------------------+|
+------------------------------------------------------------------------------------------------------------------------+-------------------------------+


-Wunknown-argument
------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+-----------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`unknown argument ignored in clang-cl: '`:placeholder:`A`:diagtext:`'`|
+-----------------------------------------------------------------------------------------------------------+

+--------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`unknown argument ignored in clang-cl '`:placeholder:`A`:diagtext:`'; did you mean '`:placeholder:`B`:diagtext:`'?`|
+--------------------------------------------------------------------------------------------------------------------------------------------------------+


-Wunknown-attributes
--------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+-----------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`unknown attribute` |nbsp| :placeholder:`A` |nbsp| :diagtext:`ignored`|
+-----------------------------------------------------------------------------------------------------------+


-Wunknown-escape-sequence
-------------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+-----------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`unknown escape sequence '\\`:placeholder:`A`:diagtext:`'`|
+-----------------------------------------------------------------------------------------------+


-Wunknown-pragmas
-----------------
Some of the diagnostics controlled by this flag are enabled by default.

**Diagnostic text:**

+------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`expected 'ON' or 'OFF' or 'DEFAULT' in pragma`|
+------------------------------------------------------------------------------------+

+--------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`expected end of directive in pragma`|
+--------------------------------------------------------------------------+

+-----------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`unknown pragma in STDC namespace`|
+-----------------------------------------------------------------------+

+--------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`pragma diagnostic pop could not pop, no matching push`|
+--------------------------------------------------------------------------------------------+

+--------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`pragma diagnostic expected 'error', 'warning', 'ignored', 'fatal', 'push', or 'pop'`|
+--------------------------------------------------------------------------------------------------------------------------+

+----------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`pragma diagnostic expected option name (e.g. "-Wundef")`|
+----------------------------------------------------------------------------------------------+

+----------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`unexpected token in pragma diagnostic`|
+----------------------------------------------------------------------------+

+----------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`#pragma execution\_character\_set expected '`:placeholder:`A`:diagtext:`'`|
+----------------------------------------------------------------------------------------------------------------+

+------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`#pragma execution\_character\_set invalid value '`:placeholder:`A`:diagtext:`', only 'UTF-8' is supported`|
+------------------------------------------------------------------------------------------------------------------------------------------------+

+-------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`#pragma execution\_character\_set expected 'push' or 'pop'`|
+-------------------------------------------------------------------------------------------------+

+-------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`unknown pragma ignored`|
+-------------------------------------------------------------+

+----------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`pragma include\_alias expected '`:placeholder:`A`:diagtext:`'`|
+----------------------------------------------------------------------------------------------------+

+--------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`pragma include\_alias expected include filename`|
+--------------------------------------------------------------------------------------+

+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`angle-bracketed include <`:placeholder:`A`:diagtext:`> cannot be aliased to double-quoted include "`:placeholder:`B`:diagtext:`"`|
+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------+

+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`double-quoted include "`:placeholder:`A`:diagtext:`" cannot be aliased to angle-bracketed include <`:placeholder:`B`:diagtext:`>`|
+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------+

+----------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`#pragma warning expected '`:placeholder:`A`:diagtext:`'`|
+----------------------------------------------------------------------------------------------+

+--------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`#pragma warning expected a warning number`|
+--------------------------------------------------------------------------------+

+----------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`#pragma warning(push, level) requires a level between 0 and 4`|
+----------------------------------------------------------------------------------------------------+

+-----------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`#pragma warning expected 'push', 'pop', 'default', 'disable', 'error', 'once', 'suppress', 1, 2, 3, or 4`|
+-----------------------------------------------------------------------------------------------------------------------------------------------+

+----------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`pragma STDC FENV\_ACCESS ON is not supported, ignoring pragma`|
+----------------------------------------------------------------------------------------------------+


-Wunknown-sanitizers
--------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+-----------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`unknown sanitizer '`:placeholder:`A`:diagtext:`' ignored`|
+-----------------------------------------------------------------------------------------------+


-Wunknown-warning-option
------------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+----------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`unknown warning group '`:placeholder:`A`:diagtext:`', ignored`|
+----------------------------------------------------------------------------------------------------+

+------------------------------------------------------+---------------------+---------------------------------------------------------+--------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`unknown` |nbsp| |+-------------------+| |nbsp| :diagtext:`option '`:placeholder:`B`:diagtext:`'`|+------------------------------------------------------------+|
|                                                      ||:diagtext:`warning`||                                                         ||                                                            ||
|                                                      |+-------------------+|                                                         |+------------------------------------------------------------+|
|                                                      ||:diagtext:`remark` ||                                                         ||+----------------------------------------------------------+||
|                                                      |+-------------------+|                                                         |||:diagtext:`; did you mean '`:placeholder:`D`:diagtext:`'?`|||
|                                                      |                     |                                                         ||+----------------------------------------------------------+||
|                                                      |                     |                                                         |+------------------------------------------------------------+|
+------------------------------------------------------+---------------------+---------------------------------------------------------+--------------------------------------------------------------+

+-------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`unknown` |nbsp| :placeholder:`A` |nbsp| :diagtext:`warning specifier: '`:placeholder:`B`:diagtext:`'`|
+-------------------------------------------------------------------------------------------------------------------------------------------+


-Wunnamed-type-template-args
----------------------------
Some of the diagnostics controlled by this flag are enabled by default.

Also controls `-Wc++98-compat-unnamed-type-template-args`_.

**Diagnostic text:**

+--------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`template argument uses unnamed type`|
+--------------------------------------------------------------------------+


-Wunneeded-internal-declaration
-------------------------------
**Diagnostic text:**

+---------------------------+----------------------+---------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| |+--------------------+| |nbsp| :placeholder:`B` |nbsp| :diagtext:`is not needed and will not be emitted`|
|                           ||:diagtext:`function`||                                                                                 |
|                           |+--------------------+|                                                                                 |
|                           ||:diagtext:`variable`||                                                                                 |
|                           |+--------------------+|                                                                                 |
+---------------------------+----------------------+---------------------------------------------------------------------------------+

+--------------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`'static' function` |nbsp| :placeholder:`A` |nbsp| :diagtext:`declared in header file should be declared 'static inline'`|
+--------------------------------------------------------------------------------------------------------------------------------------------------------------+


-Wunneeded-member-function
--------------------------
**Diagnostic text:**

+---------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`member function` |nbsp| :placeholder:`A` |nbsp| :diagtext:`is not needed and will not be emitted`|
+---------------------------------------------------------------------------------------------------------------------------------------+


-Wunreachable-code
------------------
Also controls `-Wunreachable-code-loop-increment`_.

**Diagnostic text:**

+------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`code will never be executed`|
+------------------------------------------------------------------+


-Wunreachable-code-aggressive
-----------------------------
Controls `-Wunreachable-code`_, `-Wunreachable-code-break`_, `-Wunreachable-code-return`_.


-Wunreachable-code-break
------------------------
**Diagnostic text:**

+---------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`'break' will never be executed`|
+---------------------------------------------------------------------+


-Wunreachable-code-loop-increment
---------------------------------
**Diagnostic text:**

+-------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`loop will run at most once (loop increment never executed)`|
+-------------------------------------------------------------------------------------------------+


-Wunreachable-code-return
-------------------------
**Diagnostic text:**

+----------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`'return' will never be executed`|
+----------------------------------------------------------------------+


-Wunsequenced
-------------
This diagnostic is enabled by default.

**Diagnostic text:**

+----------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`multiple unsequenced modifications to` |nbsp| :placeholder:`A`|
+----------------------------------------------------------------------------------------------------+

+-----------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`unsequenced modification and access to` |nbsp| :placeholder:`A`|
+-----------------------------------------------------------------------------------------------------+


-Wunsupported-abs
-----------------
This diagnostic is enabled by default.

**Diagnostic text:**

+-----------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`ignoring '-mabs=2008' option because the '`:placeholder:`A`:diagtext:`' architecture does not support it`|
+-----------------------------------------------------------------------------------------------------------------------------------------------+

+-------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`ignoring '-mabs=legacy' option because the '`:placeholder:`A`:diagtext:`' architecture does not support it`|
+-------------------------------------------------------------------------------------------------------------------------------------------------+


-Wunsupported-availability-guard
--------------------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+---------------------------+------------------------------------+--------------------------------------------------------------+------------------------------------+---------------------+
|:warning:`warning:` |nbsp| |+----------------------------------+| |nbsp| :diagtext:`does not guard availability here; use if (`|+----------------------------------+|:diagtext:`) instead`|
|                           ||:diagtext:`@available`            ||                                                              ||:diagtext:`@available`            ||                     |
|                           |+----------------------------------+|                                                              |+----------------------------------+|                     |
|                           ||:diagtext:`\_\_builtin\_available`||                                                              ||:diagtext:`\_\_builtin\_available`||                     |
|                           |+----------------------------------+|                                                              |+----------------------------------+|                     |
+---------------------------+------------------------------------+--------------------------------------------------------------+------------------------------------+---------------------+


-Wunsupported-cb
----------------
This diagnostic is enabled by default.

**Diagnostic text:**

+--------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`ignoring '-mcompact-branches=' option because the '`:placeholder:`A`:diagtext:`' architecture does not support it`|
+--------------------------------------------------------------------------------------------------------------------------------------------------------+


-Wunsupported-dll-base-class-template
-------------------------------------
**Diagnostic text:**

+---------------------------------------------------------------------------+------------------------------------+------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`propagating dll attribute to` |nbsp| |+----------------------------------+| |nbsp| :diagtext:`base class template without dll attribute is not supported`|
|                                                                           ||:diagtext:`already instantiated`  ||                                                                              |
|                                                                           |+----------------------------------+|                                                                              |
|                                                                           ||:diagtext:`explicitly specialized`||                                                                              |
|                                                                           |+----------------------------------+|                                                                              |
+---------------------------------------------------------------------------+------------------------------------+------------------------------------------------------------------------------+


-Wunsupported-friend
--------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`dependent nested name specifier '`:placeholder:`A`:diagtext:`' for friend template declaration is not supported; ignoring this friend declaration`|
+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+

+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`dependent nested name specifier '`:placeholder:`A`:diagtext:`' for friend class declaration is not supported; turning off access control for` |nbsp| :placeholder:`B`|
+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+


-Wunsupported-gpopt
-------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+--------------------------------------------------------------------------------------------------+-------------------------------------------+----------------------+
|:warning:`warning:` |nbsp| :diagtext:`ignoring '-mgpopt' option as it cannot be used with` |nbsp| |+-----------------------------------------+|:diagtext:`-mabicalls`|
|                                                                                                  ||                                         ||                      |
|                                                                                                  |+-----------------------------------------+|                      |
|                                                                                                  ||:diagtext:`the implicit usage of` |nbsp| ||                      |
|                                                                                                  |+-----------------------------------------+|                      |
+--------------------------------------------------------------------------------------------------+-------------------------------------------+----------------------+


-Wunsupported-nan
-----------------
This diagnostic is enabled by default.

**Diagnostic text:**

+-----------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`ignoring '-mnan=2008' option because the '`:placeholder:`A`:diagtext:`' architecture does not support it`|
+-----------------------------------------------------------------------------------------------------------------------------------------------+

+-------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`ignoring '-mnan=legacy' option because the '`:placeholder:`A`:diagtext:`' architecture does not support it`|
+-------------------------------------------------------------------------------------------------------------------------------------------------+


-Wunsupported-target-opt
------------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+---------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`debug information option '`:placeholder:`A`:diagtext:`' is not supported for target '`:placeholder:`B`:diagtext:`'`|
+---------------------------------------------------------------------------------------------------------------------------------------------------------+


-Wunsupported-visibility
------------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`target does not support 'protected' visibility; using 'default'`|
+------------------------------------------------------------------------------------------------------+


-Wunusable-partial-specialization
---------------------------------
This diagnostic is an error by default, but the flag ``-Wno-unusable-partial-specialization`` can be used to disable the error.

**Diagnostic text:**

+-----------------------+----------------------+--------------------------------------------------------------------+----------------------------------+------------------------------------------------------------------------------------------+
|:error:`error:` |nbsp| |+--------------------+| |nbsp| :diagtext:`template partial specialization contains` |nbsp| |+--------------------------------+| |nbsp| :diagtext:`that cannot be deduced; this partial specialization will never be used`|
|                       ||:diagtext:`class`   ||                                                                    ||:diagtext:`a template parameter`||                                                                                          |
|                       |+--------------------+|                                                                    |+--------------------------------+|                                                                                          |
|                       ||:diagtext:`variable`||                                                                    ||:diagtext:`template parameters` ||                                                                                          |
|                       |+--------------------+|                                                                    |+--------------------------------+|                                                                                          |
+-----------------------+----------------------+--------------------------------------------------------------------+----------------------------------+------------------------------------------------------------------------------------------+


-Wunused
--------
Some of the diagnostics controlled by this flag are enabled by default.

Controls `-Wunused-argument`_, `-Wunused-function`_, `-Wunused-label`_, `-Wunused-lambda-capture`_, `-Wunused-local-typedef`_, `-Wunused-private-field`_, `-Wunused-property-ivar`_, `-Wunused-value`_, `-Wunused-variable`_.


-Wunused-argument
-----------------
This diagnostic flag exists for GCC compatibility, and has no effect in Clang.

-Wunused-command-line-argument
------------------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+-------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`argument '`:placeholder:`A`:diagtext:`' requires profile-guided optimization information`|
+-------------------------------------------------------------------------------------------------------------------------------+

+---------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`joined argument expects additional value: '`:placeholder:`A`:diagtext:`'`|
+---------------------------------------------------------------------------------------------------------------+

+----------------------------------------------------------------------------------------------------+----------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :placeholder:`A`:diagtext:`: '`:placeholder:`B`:diagtext:`' input unused`|+--------------------------------------------------------------------+|
|                                                                                                    ||+------------------------------------------------------------------+||
|                                                                                                    ||| |nbsp| :diagtext:`when '`:placeholder:`D`:diagtext:`' is present`|||
|                                                                                                    ||+------------------------------------------------------------------+||
|                                                                                                    |+--------------------------------------------------------------------+|
|                                                                                                    ||                                                                    ||
|                                                                                                    |+--------------------------------------------------------------------+|
+----------------------------------------------------------------------------------------------------+----------------------------------------------------------------------+

+----------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :placeholder:`A`:diagtext:`: '`:placeholder:`B`:diagtext:`' input unused in cpp mode`|
+----------------------------------------------------------------------------------------------------------------+

+--------------------------------------------------------------------------------------+-----------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :placeholder:`A`:diagtext:`: previously preprocessed input`|+---------------------------------------------------------------------------+|
|                                                                                      ||+-------------------------------------------------------------------------+||
|                                                                                      ||| |nbsp| :diagtext:`unused when '`:placeholder:`C`:diagtext:`' is present`|||
|                                                                                      ||+-------------------------------------------------------------------------+||
|                                                                                      |+---------------------------------------------------------------------------+|
|                                                                                      ||                                                                           ||
|                                                                                      |+---------------------------------------------------------------------------+|
+--------------------------------------------------------------------------------------+-----------------------------------------------------------------------------+

+---------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`argument unused during compilation: '`:placeholder:`A`:diagtext:`'`|
+---------------------------------------------------------------------------------------------------------+

+----------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`the flag '`:placeholder:`A`:diagtext:`' has been deprecated and will be ignored`|
+----------------------------------------------------------------------------------------------------------------------+


-Wunused-comparison
-------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+---------------------------+------------------------+--------------------------------------------+
|:warning:`warning:` |nbsp| |+----------------------+| |nbsp| :diagtext:`comparison result unused`|
|                           ||:diagtext:`equality`  ||                                            |
|                           |+----------------------+|                                            |
|                           ||:diagtext:`inequality`||                                            |
|                           |+----------------------+|                                            |
|                           ||:diagtext:`relational`||                                            |
|                           |+----------------------+|                                            |
|                           ||:diagtext:`three-way` ||                                            |
|                           |+----------------------+|                                            |
+---------------------------+------------------------+--------------------------------------------+


-Wunused-const-variable
-----------------------
**Diagnostic text:**

+------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`unused variable` |nbsp| :placeholder:`A`|
+------------------------------------------------------------------------------+


-Wunused-exception-parameter
----------------------------
**Diagnostic text:**

+-----------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`unused exception parameter` |nbsp| :placeholder:`A`|
+-----------------------------------------------------------------------------------------+


-Wunused-function
-----------------
Also controls `-Wunneeded-internal-declaration`_.

**Diagnostic text:**

+------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`unused function` |nbsp| :placeholder:`A`|
+------------------------------------------------------------------------------+


-Wunused-getter-return-value
----------------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`property access result unused - getters should not be used for side effects`|
+------------------------------------------------------------------------------------------------------------------+


-Wunused-label
--------------
**Diagnostic text:**

+---------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`unused label` |nbsp| :placeholder:`A`|
+---------------------------------------------------------------------------+


-Wunused-lambda-capture
-----------------------
**Diagnostic text:**

+---------------------------------------------------------------------------------------------------------------+--------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`lambda capture` |nbsp| :placeholder:`A` |nbsp| :diagtext:`is not` |nbsp| |+------------------------------------------------+|
|                                                                                                               ||:diagtext:`used`                                ||
|                                                                                                               |+------------------------------------------------+|
|                                                                                                               ||:diagtext:`required to be captured for this use`||
|                                                                                                               |+------------------------------------------------+|
+---------------------------------------------------------------------------------------------------------------+--------------------------------------------------+


-Wunused-local-typedef
----------------------
**Diagnostic text:**

+-----------------------------------------------------+------------------------+------------------------+
|:warning:`warning:` |nbsp| :diagtext:`unused` |nbsp| |+----------------------+| |nbsp| :placeholder:`B`|
|                                                     ||:diagtext:`typedef`   ||                        |
|                                                     |+----------------------+|                        |
|                                                     ||:diagtext:`type alias`||                        |
|                                                     |+----------------------+|                        |
+-----------------------------------------------------+------------------------+------------------------+


-Wunused-local-typedefs
-----------------------
Synonym for `-Wunused-local-typedef`_.


-Wunused-macros
---------------
**Diagnostic text:**

+--------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`macro is not used`|
+--------------------------------------------------------+


-Wunused-member-function
------------------------
Also controls `-Wunneeded-member-function`_.

**Diagnostic text:**

+-------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`unused member function` |nbsp| :placeholder:`A`|
+-------------------------------------------------------------------------------------+


-Wunused-parameter
------------------
**Diagnostic text:**

+-------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`unused parameter` |nbsp| :placeholder:`A`|
+-------------------------------------------------------------------------------+


-Wunused-private-field
----------------------
**Diagnostic text:**

+-----------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`private field` |nbsp| :placeholder:`A` |nbsp| :diagtext:`is not used`|
+-----------------------------------------------------------------------------------------------------------+


-Wunused-property-ivar
----------------------
**Diagnostic text:**

+-------------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`ivar` |nbsp| :placeholder:`A` |nbsp| :diagtext:`which backs the property is not referenced in this property's accessor`|
+-------------------------------------------------------------------------------------------------------------------------------------------------------------+


-Wunused-result
---------------
This diagnostic is enabled by default.

**Diagnostic text:**

+-------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`ignoring return value of function declared with` |nbsp| :placeholder:`A` |nbsp| :diagtext:`attribute`|
+-------------------------------------------------------------------------------------------------------------------------------------------+


-Wunused-template
-----------------
Also controls `-Wunneeded-internal-declaration`_.

**Diagnostic text:**

+-----------------------------------------------------+----------------------+----------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`unused` |nbsp| |+--------------------+| |nbsp| :diagtext:`template` |nbsp| :placeholder:`B`|
|                                                     ||:diagtext:`function`||                                                    |
|                                                     |+--------------------+|                                                    |
|                                                     ||:diagtext:`variable`||                                                    |
|                                                     |+--------------------+|                                                    |
+-----------------------------------------------------+----------------------+----------------------------------------------------+


-Wunused-value
--------------
This diagnostic is enabled by default.

Also controls `-Wunevaluated-expression`_, `-Wunused-comparison`_, `-Wunused-result`_.

**Diagnostic text:**

+-------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`ignoring return value of function declared with` |nbsp| :placeholder:`A` |nbsp| :diagtext:`attribute`|
+-------------------------------------------------------------------------------------------------------------------------------------------+

+----------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`container access result unused - container access should not be used for side effects`|
+----------------------------------------------------------------------------------------------------------------------------+

+---------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`expression result unused`|
+---------------------------------------------------------------+

+-----------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`expression result unused; should this cast be to 'void'?`|
+-----------------------------------------------------------------------------------------------+


-Wunused-variable
-----------------
Also controls `-Wunused-const-variable`_.

**Diagnostic text:**

+------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`unused variable` |nbsp| :placeholder:`A`|
+------------------------------------------------------------------------------+


-Wunused-volatile-lvalue
------------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+----------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`expression result unused; assign into a variable to force a volatile load`|
+----------------------------------------------------------------------------------------------------------------+


-Wused-but-marked-unused
------------------------
**Diagnostic text:**

+---------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :placeholder:`A` |nbsp| :diagtext:`was marked unused but was used`|
+---------------------------------------------------------------------------------------------+


-Wuser-defined-literals
-----------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+--------------------------------------------------------------------------------------------------------+----------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`user-defined literal suffixes not starting with '\_' are reserved`|+--------------------------------------------------+|
|                                                                                                        ||:diagtext:`; no literal will invoke this operator`||
|                                                                                                        |+--------------------------------------------------+|
|                                                                                                        ||                                                  ||
|                                                                                                        |+--------------------------------------------------+|
+--------------------------------------------------------------------------------------------------------+----------------------------------------------------+


-Wuser-defined-warnings
-----------------------
This diagnostic is enabled by default.

**Diagnostic text:**

The text of this diagnostic is not controlled by Clang.


-Wvarargs
---------
This diagnostic is enabled by default.

**Diagnostic text:**

+-----------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`second argument to 'va\_start' is not the last named parameter`|
+-----------------------------------------------------------------------------------------------------+

+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`second argument to 'va\_arg' is of promotable type` |nbsp| :placeholder:`A`:diagtext:`; this va\_arg has undefined behavior because arguments will be promoted to` |nbsp| :placeholder:`B`|
+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+

+------------------------------------------------------+-----------------------------------------------------------------+---------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`passing` |nbsp| |+---------------------------------------------------------------+| |nbsp| :diagtext:`to 'va\_start' has undefined behavior`|
|                                                      ||:diagtext:`an object that undergoes default argument promotion`||                                                         |
|                                                      |+---------------------------------------------------------------+|                                                         |
|                                                      ||:diagtext:`an object of reference type`                        ||                                                         |
|                                                      |+---------------------------------------------------------------+|                                                         |
|                                                      ||:diagtext:`a parameter declared with the 'register' keyword`   ||                                                         |
|                                                      |+---------------------------------------------------------------+|                                                         |
+------------------------------------------------------+-----------------------------------------------------------------+---------------------------------------------------------+


-Wvariadic-macros
-----------------
Some of the diagnostics controlled by this flag are enabled by default.

**Diagnostic text:**

+--------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`named variadic macros are a GNU extension`|
+--------------------------------------------------------------------------------+

+-----------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`\_\_VA\_OPT\_\_ can only appear in the expansion of a variadic macro`|
+-----------------------------------------------------------------------------------------------------------+

+------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`variadic macros are a C99 feature`|
+------------------------------------------------------------------------+


-Wvec-elem-size
---------------
This diagnostic is an error by default, but the flag ``-Wno-vec-elem-size`` can be used to disable the error.

**Diagnostic text:**

+--------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|:error:`error:` |nbsp| :diagtext:`vector operands do not have the same elements sizes (`:placeholder:`A` |nbsp| :diagtext:`and` |nbsp| :placeholder:`B`:diagtext:`)`|
+--------------------------------------------------------------------------------------------------------------------------------------------------------------------+


-Wvector-conversion
-------------------
**Diagnostic text:**

+------------------------------------------------------------------------+----------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`incompatible vector types` |nbsp| |+--------------------------------------------------------------+|
|                                                                        ||:diagtext:`assigning to different types`                      ||
|                                                                        |+--------------------------------------------------------------+|
|                                                                        ||:diagtext:`passing to parameter of different type`            ||
|                                                                        |+--------------------------------------------------------------+|
|                                                                        ||:diagtext:`returning from function with different return type`||
|                                                                        |+--------------------------------------------------------------+|
|                                                                        ||:diagtext:`converting between types`                          ||
|                                                                        |+--------------------------------------------------------------+|
|                                                                        ||:diagtext:`initializing with expression of different type`    ||
|                                                                        |+--------------------------------------------------------------+|
|                                                                        ||:diagtext:`sending to parameter of different type`            ||
|                                                                        |+--------------------------------------------------------------+|
|                                                                        ||:diagtext:`casting between types`                             ||
|                                                                        |+--------------------------------------------------------------+|
+------------------------------------------------------------------------+----------------------------------------------------------------+


-Wvector-conversions
--------------------
Synonym for `-Wvector-conversion`_.


-Wvexing-parse
--------------
This diagnostic is enabled by default.

**Diagnostic text:**

+----------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`empty parentheses interpreted as a function declaration`|
+----------------------------------------------------------------------------------------------+

+-----------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`parentheses were disambiguated as a function declaration`|
+-----------------------------------------------------------------------------------------------+

+-----------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`parentheses were disambiguated as redundant parentheses around declaration of variable named` |nbsp| :placeholder:`A`|
+-----------------------------------------------------------------------------------------------------------------------------------------------------------+


-Wvisibility
------------
This diagnostic is enabled by default.

**Diagnostic text:**

+---------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`declaration of` |nbsp| :placeholder:`A` |nbsp| :diagtext:`will not be visible outside of this function`|
+---------------------------------------------------------------------------------------------------------------------------------------------+

+----------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`redefinition of` |nbsp| :placeholder:`A` |nbsp| :diagtext:`will not be visible outside of this function`|
+----------------------------------------------------------------------------------------------------------------------------------------------+


-Wvla
-----
**Diagnostic text:**

+-----------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`variable length array used`|
+-----------------------------------------------------------------+


-Wvla-extension
---------------
**Diagnostic text:**

+-------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`variable length arrays are a C99 feature`|
+-------------------------------------------------------------------------------+


-Wvoid-ptr-dereference
----------------------
This diagnostic is enabled by default.

**Diagnostic text:**

+--------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`ISO C++ does not allow indirection on operand of type` |nbsp| :placeholder:`A`|
+--------------------------------------------------------------------------------------------------------------------+


-Wvolatile-register-var
-----------------------
This diagnostic flag exists for GCC compatibility, and has no effect in Clang.

-Wweak-template-vtables
-----------------------
**Diagnostic text:**

+--------------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`explicit template instantiation` |nbsp| :placeholder:`A` |nbsp| :diagtext:`will emit a vtable in every translation unit`|
+--------------------------------------------------------------------------------------------------------------------------------------------------------------+


-Wweak-vtables
--------------
**Diagnostic text:**

+------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :placeholder:`A` |nbsp| :diagtext:`has no out-of-line virtual method definitions; its vtable will be emitted in every translation unit`|
+------------------------------------------------------------------------------------------------------------------------------------------------------------------+


-Wwritable-strings
------------------
This diagnostic is enabled by default.

Also controls `-Wdeprecated-writable-strings`_.

**Diagnostic text:**

+-------------------------------------------------------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`ISO C++11 does not allow conversion from string literal to` |nbsp| :placeholder:`A`|
+-------------------------------------------------------------------------------------------------------------------------+


-Wwrite-strings
---------------
Synonym for `-Wwritable-strings`_.


-Wzero-as-null-pointer-constant
-------------------------------
**Diagnostic text:**

+--------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`zero as null pointer constant`|
+--------------------------------------------------------------------+


-Wzero-length-array
-------------------
**Diagnostic text:**

+------------------------------------------------------------------------+
|:warning:`warning:` |nbsp| :diagtext:`zero size arrays are an extension`|
+------------------------------------------------------------------------+


