Namespaces
Variants
Views
Actions

Difference between revisions of "cpp/language/ndr"

From cppreference.com
< cpp‎ | language
(link back to UB where this term is also introduced)
Line 3: Line 3:
  
 
"No diagnostic required" indicates that some phraseology is ill-formed according to the language rules, but a compiler need not issue any diagnostic or error message.  Usually, the reason is that trying to detect these situations would result in prohibitively long compile times.
 
"No diagnostic required" indicates that some phraseology is ill-formed according to the language rules, but a compiler need not issue any diagnostic or error message.  Usually, the reason is that trying to detect these situations would result in prohibitively long compile times.
 +
 +
If such a program is executed, [[cpp/language/ub|the behavior is undefined]].
  
 
{{dsc begin}}
 
{{dsc begin}}

Revision as of 07:44, 29 November 2021

 
 
C++ language
General topics
Flow control
Conditional execution statements
if
Iteration statements (loops)
for
range-for (C++11)
Jump statements
Functions
Function declaration
Lambda function expression
inline specifier
Dynamic exception specifications (until C++17*)
noexcept specifier (C++11)
Exceptions
Namespaces
Types
Specifiers
const/volatile
decltype (C++11)
auto (C++11)
constexpr (C++11)
consteval (C++20)
constinit (C++20)
Storage duration specifiers
Initialization
Expressions
Alternative representations
Literals
Boolean - Integer - Floating-point
Character - String - nullptr (C++11)
User-defined (C++11)
Utilities
Attributes (C++11)
Types
typedef declaration
Type alias declaration (C++11)
Casts
Memory allocation
Classes
Class-specific function properties
explicit (C++11)
static

Special member functions
Templates
Miscellaneous
 

"No diagnostic required" indicates that some phraseology is ill-formed according to the language rules, but a compiler need not issue any diagnostic or error message. Usually, the reason is that trying to detect these situations would result in prohibitively long compile times.

If such a program is executed, the behavior is undefined.

C documentation for No Diagnostic Required