//==--- DiagnosticSemaKinds.def - libsema diagnostics -----------*- C++ -*-===//
//
// The LLVM Compiler Infrastructure
//
// This file is distributed under the University of Illinois Open Source
// License. See LICENSE.TXT for details.
//
//===----------------------------------------------------------------------===//
//
// Semantic Analysis
//
//===----------------------------------------------------------------------===//
#ifdef SEMASTART
__SEMASTART = DIAG_START_SEMA,
#undef SEMASTART
#endif
// Constant expressions
DIAG(err_expr_not_ice, ERROR,
"expression is not an integer constant expression")
DIAG(ext_expr_not_ice, EXTENSION,
"expression is not integer constant expression "
"(but is allowed as an extension)")
DIAG(ext_null_pointer_expr_not_ice, EXTENSION,
"null pointer expression is not an integer constant expression "
"(but is allowed as an extension)")
// Semantic analysis of string and character constant literals.
DIAG(ext_predef_outside_function, WARNING,
"predefined identifier is only valid inside function")
// C99 Designated Initializers
DIAG(err_array_designator_nonconstant, ERROR,
"array designator value must be a constant expression")
DIAG(err_array_designator_negative, ERROR,
"array designator value '%0' is negative")
DIAG(err_array_designator_empty_range, ERROR,
"array designator range [%0, %1] is empty")
DIAG(err_array_designator_non_array, ERROR,
"array designator cannot initialize non-array type %0")
DIAG(err_array_designator_too_large, ERROR,
"array designator index (%0) exceeds array bounds (%1)")
DIAG(err_field_designator_non_aggr, ERROR,
"field designator cannot initialize a %select{non-struct, non-union|non-class}0 type %1")
DIAG(err_field_designator_unknown, ERROR,
"field designator %0 does not refer to any field in type %1")
DIAG(err_field_designator_nonfield, ERROR,
"field designator %0 does not refer to a non-static data member")
DIAG(note_field_designator_found, NOTE,
"field designator refers here")
DIAG(err_field_designator_anon_class, ERROR,
"field designator %0 refers to a member of an anonymous %select{struct|class|union}1")
DIAG(err_designator_for_scalar_init, ERROR,
"designator in initializer for scalar type %0")
DIAG(warn_subobject_initializer_overrides, WARNING,
"subobject initialization overrides initialization of other fields within its enclosing subobject")
DIAG(warn_initializer_overrides, WARNING,
"initializer overrides prior initialization of this subobject")
DIAG(note_previous_initializer, NOTE,
"previous initialization %select{|with side effects }0is here%select{| (side effects may not occur at run time)}0")
DIAG(err_designator_into_flexible_array_member, ERROR,
"designator into flexible array member subobject")
DIAG(note_flexible_array_member, NOTE,
"initialized flexible array member %0 is here")
// Declarations.
DIAG(ext_vla, EXTENSION,
"variable length arrays are a C99 feature, accepted as an extension")
DIAG(ext_anon_param_requires_type_specifier, EXTENSION,
"type specifier required for unnamed