Clangの診断メッセージ一覧がネット上に見つからなかったので、ソースコードから定義一覧を探してきてスクリプトで生成してみました。
診断メッセージ一覧はhttp://llvm.org/svn/llvm-project/cfe/trunk/include/clang/Basic/ 内の以下のファイルから取得しています。
- DiagnosticASTKinds.td
- DiagnosticAnalysisKinds.td
- DiagnosticCommentKinds.td
- DiagnosticCommonKinds.td
- DiagnosticDriverKinds.td
- DiagnosticFrontendKinds.td
- DiagnosticLexKinds.td
- DiagnosticParseKinds.td
- DiagnosticSemaKinds.td
- DiagnosticSerializationKinds.td
このファイル一覧は http://llvm.org/svn/llvm-project/cfe/trunk/include/clang/Basic/Diagnostic.td に記述されていたものです。
// Definitions for Diagnostics.
include "DiagnosticASTKinds.td"
include "DiagnosticAnalysisKinds.td"
include "DiagnosticCommentKinds.td"
include "DiagnosticCommonKinds.td"
include "DiagnosticDriverKinds.td"
include "DiagnosticFrontendKinds.td"
include "DiagnosticLexKinds.td"
include "DiagnosticParseKinds.td"
include "DiagnosticSemaKinds.td"
include "DiagnosticSerializationKinds.td"
このファイルリストから自動生成しているので、利用者にはあまり関係がない内部的な診断情報も含まれているかもしれません。
(おまけ)
- 特定の警告を有効にする :
-W警告名
- 特定の警告を無効にする :
-Wno-警告名
- 特定の警告をエラーにする :
-Werror=警告名
参考: http://clang.llvm.org/docs/UsersManual.html#options-to-control-error-and-warning-messages
#DiagnosticASTKinds.td
Type | Name | Message |
---|---|---|
Note | note_expr_divide_by_zero | division by zero |
Note | note_constexpr_invalid_cast | [1]:%select{reinterpret_cast|dynamic_cast|cast that performs the conversions of [2]: a reinterpret_cast|cast from %1}0 is not allowed in a constant expression |
Note | note_constexpr_invalid_downcast | cannot cast object of dynamic type %0 to type %1 |
Note | note_constexpr_overflow | value %0 is outside the range of representable values of type %1 |
Note | note_constexpr_negative_shift | negative shift count %0 |
Note | note_constexpr_large_shift | shift count %0 >= width of type %1 (%2 bit%s2) |
Note | note_constexpr_lshift_of_negative | left shift of negative value %0 |
Note | note_constexpr_lshift_discards | signed left shift discards bits |
Note | note_constexpr_invalid_function | [1]:%select{non-constexpr|undefined}0 %select{function|constructor}1 %2 cannot [2]:be used in a constant expression |
Note | note_constexpr_no_return | control reached end of constexpr function |
Note | note_constexpr_virtual_call | cannot evaluate virtual function call in a constant expression |
Note | note_constexpr_virtual_base | [1]:cannot construct object of type %0 with virtual base class [2]:in a constant expression |
Note | note_constexpr_nonliteral | non-literal type %0 cannot be used in a constant expression |
Note | note_constexpr_non_global | [1]:%select{pointer|reference}0 to %select{|subobject of }1 [2]:%select{temporary|%3}2 is not a constant expression |
Note | note_constexpr_uninitialized | %select{|sub}0object of type %1 is not initialized |
Note | note_constexpr_array_index | [1]:cannot refer to element %0 of [2]:%select{array of %2 elements|non-array object}1 in a constant expression |
Note | note_constexpr_float_arithmetic | floating point arithmetic produces %select{an infinity|a NaN}0 |
Note | note_constexpr_pointer_subtraction_not_same_array | subtracted pointers are not elements of the same array |
Note | note_constexpr_pointer_subtraction_zero_size | subtraction of pointers to type %0 of zero size |
Note | note_constexpr_pointer_comparison_base_classes | [1]:comparison of addresses of subobjects of different base classes [2]:has unspecified value |
Note | note_constexpr_pointer_comparison_base_field | [1]:comparison of address of base class subobject %0 of class %1 to field %2 [2]:has unspecified value |
Note | note_constexpr_pointer_comparison_differing_access | [1]:comparison of address of fields %0 and %2 of %4 with differing access [2]:specifiers (%1 vs %3) has unspecified value |
Note | note_constexpr_compare_virtual_mem_ptr | comparison of pointer to virtual member function %0 has unspecified value |
Note | note_constexpr_past_end | [1]:dereferenced pointer past the end of %select{|subobject of }0 [2]:%select{temporary|%2}1 is not a constant expression |
Note | note_constexpr_past_end_subobject | [1]:cannot %select{access base class of|access derived class of|access field of| [2]:[1]:access array element of|ERROR|call member function on| [2]:[1]:access real component of|access imaginary component of}0 [2]:pointer past the end of object |
Note | note_constexpr_null_subobject | [1]:cannot %select{access base class of|access derived class of|access field of| [2]:[1]:access array element of|perform pointer arithmetic on| [2]:[1]:call member function on|access real component of| [2]:access imaginary component of}0 null pointer |
Note | note_constexpr_var_init_non_constant | initializer of %0 is not a constant expression |
Note | note_constexpr_typeid_polymorphic | [1]:typeid applied to expression of polymorphic type %0 is [2]:not allowed in a constant expression |
Note | note_constexpr_void_comparison | comparison between unequal pointers to void has unspecified result |
Note | note_constexpr_temporary_here | temporary created here |
Note | note_constexpr_conditional_never_const | [1]:both arms of conditional operator are unable to produce a [2]:constant expression |
Note | note_constexpr_depth_limit_exceeded | constexpr evaluation exceeded maximum depth of %0 calls |
Note | note_constexpr_call_limit_exceeded | constexpr evaluation hit maximum call limit |
Note | note_constexpr_step_limit_exceeded | constexpr evaluation hit maximum step limit; possible infinite loop? |
Note | note_constexpr_this | [1]:%select{|implicit }0use of 'this' pointer is only allowed within the [2]:evaluation of a call to a 'constexpr' member function |
Note | note_constexpr_lifetime_ended | [1]:%select{read of|assignment to|increment of|decrement of}0 [2]:%select{temporary|variable}1 whose lifetime has ended |
Note | note_constexpr_access_uninit | [1]:%select{read of|assignment to|increment of|decrement of}0 [2]:object outside its lifetime is not allowed in a constant expression |
Note | note_constexpr_use_uninit_reference | [1]:use of reference outside its lifetime [2]:is not allowed in a constant expression |
Note | note_constexpr_modify_const_type | [1]:modification of object of const-qualified type %0 is not allowed [2]:in a constant expression |
Note | note_constexpr_access_volatile_type | [1]:%select{read of|assignment to|increment of|decrement of}0 [2]:volatile-qualified type %1 is not allowed in a constant expression |
Note | note_constexpr_access_volatile_obj | [1]:%select{read of|assignment to|increment of|decrement of}0 volatile [2]:[1]:%select{temporary|object %2|member %2}1 is not allowed in [2]:a constant expression |
Note | note_constexpr_ltor_mutable | read of mutable member %0 is not allowed in a constant expression |
Note | note_constexpr_ltor_non_const_int | read of non-const variable %0 is not allowed in a constant expression |
Note | note_constexpr_ltor_non_constexpr | read of non-constexpr variable %0 is not allowed in a constant expression |
Note | note_constexpr_access_null | [1]:%select{read of|assignment to|increment of|decrement of}0 [2]:dereferenced null pointer is not allowed in a constant expression |
Note | note_constexpr_access_past_end | [1]:%select{read of|assignment to|increment of|decrement of}0 [2]:dereferenced one-past-the-end pointer is not allowed in a constant expression |
Note | note_constexpr_access_inactive_union_member | [1]:%select{read of|assignment to|increment of|decrement of}0 [2]:[1]:member %1 of union with %select{active member %3|no active member}2 [2]:is not allowed in a constant expression |
Note | note_constexpr_access_static_temporary | [1]:%select{read of|assignment to|increment of|decrement of}0 temporary [2]:[1]:is not allowed in a constant expression outside the expression that [2]:created the temporary |
Note | note_constexpr_modify_global | [1]:a constant expression cannot modify an object that is visible outside [2]:that expression |
Note | note_constexpr_stmt_expr_unsupported | [1]:this use of statement expressions is not supported in a [2]:constant expression |
Note | note_constexpr_calls_suppressed | [1]:(skipping %0 call%s0 in backtrace; use -fconstexpr-backtrace-limit=0 to [2]:see all) |
Note | note_constexpr_call_here | in call to '%0' |
Note | note_constexpr_baa_insufficient_alignment | [1]:%select{alignment of|offset of the aligned pointer from}0 the base pointee [2]:[1]:object (%1 %plural{1:byte|:bytes}1) is %select{less than|not a multiple of}0 the [2]:asserted %2 %plural{1:byte|:bytes}2 |
Note | note_constexpr_baa_value_insufficient_alignment | [1]:value of the aligned pointer (%0) is not a multiple of the asserted %1 [2]:%plural{1:byte|:bytes}1 |
Warning | warn_integer_constant_overflow | overflow in expression; result is %0 with type %1 |
Error | err_asm_invalid_escape | invalid %% escape in inline assembly string |
Error | err_asm_unknown_symbolic_operand_name | unknown symbolic operand name in inline assembly string |
Error | err_asm_unterminated_symbolic_operand_name | unterminated symbolic operand name in inline assembly string |
Error | err_asm_empty_symbolic_operand_name | empty symbolic operand name in inline assembly string |
Error | err_asm_invalid_operand_number | invalid operand number in inline asm string |
Error | err_vftable_ambiguous_component | [1]:ambiguous vftable component for %0 introduced via covariant thunks; [2]:this is an inherent limitation of the ABI |
Note | note_covariant_thunk | covariant thunk required by %0 |
Error | err_odr_variable_type_inconsistent | [1]:external variable %0 declared with incompatible types in different [2]:translation units (%1 vs. %2) |
Error | err_odr_variable_multiple_def | external variable %0 defined in multiple translation units |
Note | note_odr_value_here | declared here with type %0 |
Note | note_odr_defined_here | also defined here |
Error | err_odr_function_type_inconsistent | [1]:external function %0 declared with incompatible types in different [2]:translation units (%1 vs. %2) |
Warning | warn_odr_tag_type_inconsistent | type %0 has incompatible definitions in different translation units |
Note | note_odr_tag_kind_here | %0 is a %select{struct|interface|union|class|enum}1 here |
Note | note_odr_field | field %0 has type %1 here |
Note | note_odr_missing_field | no corresponding field here |
Note | note_odr_bit_field | bit-field %0 with type %1 and length %2 here |
Note | note_odr_not_bit_field | field %0 is not a bit-field |
Note | note_odr_base | class has base type %0 |
Note | note_odr_virtual_base | %select{non-virtual|virtual}0 derivation here |
Note | note_odr_missing_base | no corresponding base class here |
Note | note_odr_number_of_bases | class has %0 base %plural{1:class|:classes}0 |
Note | note_odr_enumerator | enumerator %0 with value %1 here |
Note | note_odr_missing_enumerator | no corresponding enumerator here |
Error | err_odr_field_type_inconsistent | [1]:field %0 declared with incompatible types in different [2]:translation units (%1 vs. %2) |
Error | err_odr_ivar_type_inconsistent | [1]:instance variable %0 declared with incompatible types in different [2]:translation units (%1 vs. %2) |
Error | err_odr_objc_superclass_inconsistent | class %0 has incompatible superclasses |
Note | note_odr_objc_superclass | inherits from superclass %0 here |
Note | note_odr_objc_missing_superclass | no corresponding superclass here |
Error | err_odr_objc_method_result_type_inconsistent | [1]:%select{class|instance}0 method %1 has incompatible result types in [2]:different translation units (%2 vs. %3) |
Error | err_odr_objc_method_num_params_inconsistent | [1]:%select{class|instance}0 method %1 has a different number of parameters in [2]:different translation units (%2 vs. %3) |
Error | err_odr_objc_method_param_type_inconsistent | [1]:%select{class|instance}0 method %1 has a parameter with a different types [2]:in different translation units (%2 vs. %3) |
Error | err_odr_objc_method_variadic_inconsistent | [1]:%select{class|instance}0 method %1 is variadic in one translation unit [2]:and not variadic in another |
Note | note_odr_objc_method_here | %select{class|instance}0 method %1 also declared here |
Error | err_odr_objc_property_type_inconsistent | [1]:property %0 declared with incompatible types in different [2]:translation units (%1 vs. %2) |
Error | err_odr_objc_property_impl_kind_inconsistent | [1]:property %0 is implemented with %select{@synthesize|@dynamic}1 in one [2]:translation but %select{@dynamic|@synthesize}1 in another translation unit |
Note | note_odr_objc_property_impl_kind | property %0 is implemented with %select{@synthesize|@dynamic}1 here |
Error | err_odr_objc_synthesize_ivar_inconsistent | [1]:property %0 is synthesized to different ivars in different translation [2]:units (%1 vs. %2) |
Note | note_odr_objc_synthesize_ivar_here | property is synthesized to ivar %0 here |
Error | err_odr_different_num_template_parameters | template parameter lists have a different number of parameters (%0 vs %1) |
Note | note_odr_template_parameter_list | template parameter list also declared here |
Error | err_odr_different_template_parameter_kind | template parameter has different kinds in different translation units |
Note | note_odr_template_parameter_here | template parameter declared here |
Error | err_odr_parameter_pack_non_pack | parameter kind mismatch; parameter is %select{not a|a}0 parameter pack |
Note | note_odr_parameter_pack_non_pack | %select{parameter|parameter pack}0 declared here |
Error | err_odr_non_type_parameter_type_inconsistent | [1]:non-type template parameter declared with incompatible types in different [2]:translation units (%0 vs. %1) |
Error | err_unsupported_ast_node | cannot import unsupported AST node %0 |
#DiagnosticCommentKinds.td
Type | Name | Message |
---|---|---|
Warning | warn_doc_html_start_tag_expected_quoted_string | expected quoted string after equals sign |
Warning | warn_doc_html_start_tag_expected_ident_or_greater | HTML start tag prematurely ended, expected attribute name or '>' |
Note | note_doc_html_tag_started_here | HTML tag started here |
Warning | warn_doc_html_end_forbidden | HTML end tag '%0' is forbidden |
Warning | warn_doc_html_end_unbalanced | HTML end tag does not match any start tag |
Warning | warn_doc_html_start_end_mismatch | HTML start tag '%0' closed by '%1' |
Note | note_doc_html_end_tag | end tag |
Warning | warn_doc_html_missing_end_tag | HTML tag '%0' requires an end tag |
Warning | warn_doc_block_command_empty_paragraph | empty paragraph passed to '%select{\\|@}0%1' command |
Warning | warn_doc_block_command_duplicate | duplicated command '%select{\\|@}0%1' |
Note | note_doc_block_command_previous | previous command '%select{\\|@}0%1' here |
Note | note_doc_block_command_previous_alias | previous command '%select{\\|@}0%1' (an alias of '\\%2') here |
Warning | warn_doc_param_invalid_direction | [1]:unrecognized parameter passing direction, [2]:valid directions are '[in]', '[out]' and '[in,out]' |
Warning | warn_doc_param_spaces_in_direction | whitespace is not allowed in parameter passing direction |
Warning | warn_doc_param_not_attached_to_a_function_decl | [1]:'%select{\\|@}0param' command used in a comment that is not attached to [2]:a function declaration |
Warning | warn_doc_function_method_decl_mismatch | [1]:'%select{\\|@}0%select{function|functiongroup|method|methodgroup|callback}1' [2]:[1]:command should be used in a comment attached to [2]:[1]:%select{a function|a function|an Objective-C method|an Objective-C method| [2]:a pointer to function}2 declaration |
Warning | warn_doc_api_container_decl_mismatch | [1]:'%select{\\|@}0%select{class|interface|protocol|struct|union}1' [2]:[1]:command should not be used in a comment attached to a [2]:non-%select{class|interface|protocol|struct|union}2 declaration |
Warning | warn_doc_container_decl_mismatch | [1]:'%select{\\|@}0%select{classdesign|coclass|dependency|helper [2]:[1]:|helperclass|helps|instancesize|ownership|performance|security|superclass}1' [2]:command should not be used in a comment attached to a non-container declaration |
Warning | warn_doc_param_duplicate | parameter '%0' is already documented |
Note | note_doc_param_previous | previous documentation |
Warning | warn_doc_param_not_found | parameter '%0' not found in the function declaration |
Note | note_doc_param_name_suggestion | did you mean '%0'? |
Warning | warn_doc_tparam_not_attached_to_a_template_decl | [1]:'%select{\\|@}0tparam' command used in a comment that is not attached to [2]:a template declaration |
Warning | warn_doc_tparam_duplicate | template parameter '%0' is already documented |
Note | note_doc_tparam_previous | previous documentation |
Warning | warn_doc_tparam_not_found | template parameter '%0' not found in the template declaration |
Note | note_doc_tparam_name_suggestion | did you mean '%0'? |
Warning | warn_doc_returns_not_attached_to_a_function_decl | [1]:'%select{\\|@}0%1' command used in a comment that is not attached to [2]:a function or method declaration |
Warning | warn_doc_returns_attached_to_a_void_function | [1]:'%select{\\|@}0%1' command used in a comment that is attached to a [2]:[1]:%select{function returning void|constructor|destructor| [2]:method returning void}2 |
Warning | warn_doc_deprecated_not_sync | [1]:declaration is marked with '\\deprecated' command but does not have [2]:a deprecation attribute |
Note | note_add_deprecation_attr | add a deprecation attribute to the declaration to silence this warning |
Warning | warn_verbatim_block_end_without_start | '%select{\\|@}0%1' command does not terminate a verbatim text block |
Warning | warn_unknown_comment_command_name | unknown command tag name |
Warning | warn_correct_comment_command_name | unknown command tag name '%0'; did you mean '%1'? |
#DiagnosticCommonKinds.td
Type | Name | Message |
---|---|---|
Error | fatal_too_many_errors | too many errors emitted, stopping now |
Note | note_declared_at | declared here |
Note | note_previous_definition | previous definition is here |
Note | note_previous_declaration | previous declaration is here |
Note | note_previous_implicit_declaration | previous implicit declaration is here |
Note | note_previous_use | previous use is here |
Note | note_duplicate_case_prev | previous case defined here |
Note | note_forward_declaration | forward declaration of %0 |
Note | note_type_being_defined | definition of %0 is not complete until the closing '}' |
Note | note_matching | to match this %0 |
Note | note_using | using |
Note | note_possibility | one possibility |
Note | note_also_found | also found |
Error | err_expected_colon_after_setter_name | [1]:method name referenced in property setter attribute [2]:must end with ':' |
Error | err_expected_string_literal | [1]:expected string literal [2]:[1]:%select{in %1|for diagnostic message in static_assert| [2]:for optional message in 'availability' attribute}0 |
Error | err_invalid_string_udl | string literal with user-defined suffix cannot be used here |
Error | err_invalid_character_udl | character literal with user-defined suffix cannot be used here |
Error | err_invalid_numeric_udl | numeric literal with user-defined suffix cannot be used here |
Error | err_expected | expected %0 |
Error | err_expected_either | expected %0 or %1 |
Error | err_expected_after | expected %1 after %0 |
Error | err_param_redefinition | redefinition of parameter %0 |
Warning | warn_method_param_redefinition | redefinition of method parameter %0 |
Warning | warn_method_param_declaration | redeclaration of method parameter %0 |
Error | err_invalid_storage_class_in_func_decl | invalid storage class specifier in function declarator |
Error | err_expected_namespace_name | expected namespace name |
ExtWarn | ext_variadic_templates | variadic templates are a C++11 extension |
Warning | warn_cxx98_compat_variadic_templates | variadic templates are incompatible with C++98 |
Error | err_default_special_members | only special member functions may be defaulted |
Error | err_deleted_non_function | only functions can have deleted definitions |
Error | err_module_not_found | module '%0' not found |
Error | err_module_not_built | could not build module '%0' |
Error | err_module_build_disabled | [1]:module '%0' is needed but has not been provided, and implicit use of module [2]:files is disabled |
Error | err_module_unavailable | module '%0' %select{is incompatible with|requires}1 feature '%2' |
Error | err_module_header_missing | %select{|umbrella }0header '%1' not found |
Error | err_module_lock_failure | could not acquire lock file for module '%0' |
Error | err_module_lock_timeout | timed out waiting to acquire lock file for module '%0' |
Error | err_module_cycle | cyclic dependency in module '%0': %1 |
Note | note_pragma_entered_here | #pragma entered here |
Note | note_decl_hiding_tag_type | %1 %0 is hidden by a non-type declaration of %0 here |
Error | err_attribute_not_type_attr | %0 attribute cannot be applied to types |
Error | err_enum_template | enumeration cannot be a template |
Warning | warn_nullability_duplicate | duplicate nullability specifier %0 |
Warning | warn_conflicting_nullability_attr_overriding_ret_types | [1]:conflicting nullability specifier on return types, %0 [2]:conflicts with existing specifier %1 |
Warning | warn_conflicting_nullability_attr_overriding_param_types | [1]:conflicting nullability specifier on parameter types, %0 [2]:conflicts with existing specifier %1 |
Error | err_nullability_conflicting | nullability specifier %0 conflicts with existing specifier %1 |
Extension | ext_c99_longlong | 'long long' is an extension when C99 mode is not enabled |
Extension | ext_cxx11_longlong | 'long long' is a C++11 extension |
Warning | warn_cxx98_compat_longlong | 'long long' is incompatible with C++98 |
Error | err_integer_literal_too_large | [1]:integer literal is too large to be represented in any %select{signed |}0 [2]:integer type |
ExtWarn | ext_integer_literal_too_large_for_signed | [1]:integer literal is too large to be represented in a signed integer type, [2]:interpreting as unsigned |
Warning | warn_old_implicitly_unsigned_long | [1]:integer literal is too large to be represented in type 'long', [2]:[1]:interpreting as 'unsigned long' per C89; this literal will [2]:%select{have type 'long long'|be ill-formed}0 in C99 onwards |
Warning | warn_old_implicitly_unsigned_long_cxx | [1]:integer literal is too large to be represented in type 'long', [2]:[1]:interpreting as 'unsigned long' per C++98; this literal will [2]:%select{have type 'long long'|be ill-formed}0 in C++11 onwards |
ExtWarn | ext_old_implicitly_unsigned_long_cxx | [1]:integer literal is too large to be represented in type 'long' and is [2]:[1]:subject to undefined behavior under C++98, interpreting as 'unsigned long'; [2]:[1]:this literal will %select{have type 'long long'|be ill-formed}0 [2]:in C++11 onwards |
Extension | ext_clang_enable_if | 'enable_if' is a clang extension |
Error | err_seh_expected_handler | expected '__except' or '__finally' block |
Error | err_seh___except_block | %0 only allowed in __except block or filter expression |
Error | err_seh___except_filter | %0 only allowed in __except filter expression |
Error | err_seh___finally_block | %0 only allowed in __finally block |
Note | note_invalid_subexpr_in_const_expr | subexpression not valid in a constant expression |
Error | err_target_unknown_triple | unknown target triple '%0', please use -triple or -arch |
Error | err_target_unknown_cpu | unknown target CPU '%0' |
Error | err_target_unknown_abi | unknown target ABI '%0' |
Error | err_target_unknown_fpmath | unknown FP unit '%0' |
Error | err_target_unsupported_fpmath | the '%0' unit is not supported with this instruction set |
Error | err_target_unsupported_unaligned | the %0 sub-architecture does not support unaligned accesses |
Error | err_opt_not_valid_with_opt | option '%0' cannot be specified with '%1' |
Error | err_cannot_open_file | cannot open file '%0': %1 |
Error | err_file_modified | file '%0' modified since it was first processed |
Error | err_unsupported_bom | [1]:%0 byte order mark detected in '%1', but [2]:encoding is not supported |
Error | err_unable_to_rename_temp | unable to rename temporary '%0' to output file '%1': '%2' |
Error | err_unable_to_make_temp | unable to make temporary file: %0 |
Error | err_module_format_unhandled | no handler registered for module format '%0' |
Error | err_mt_message | [rewriter] %0 |
Warning | warn_mt_message | [rewriter] %0 |
Note | note_mt_message | [rewriter] %0 |
Warning | warn_arcmt_nsalloc_realloc | [rewriter] call returns pointer to GC managed memory; it will become unmanaged in ARC |
Error | err_arcmt_nsinvocation_ownership | NSInvocation's %0 is not safe to be used with an object with ownership other than __unsafe_unretained |
Error | err_omp_more_one_clause | directive '#pragma omp %0' cannot contain more than one '%1' clause%select{| with '%3' name modifier| with 'source' dependence}2 |
#DiagnosticDriverKinds.td
Type | Name | Message |
---|---|---|
Error | err_drv_no_such_file | no such file or directory: '%0' |
Error | err_drv_unsupported_opt | unsupported option '%0' |
Error | err_drv_unsupported_opt_for_target | unsupported option '%0' for target '%1' |
Error | err_drv_unsupported_option_argument | unsupported argument '%1' to option '%0' |
Error | err_drv_unknown_stdin_type | -E or -x required when input is from standard input |
Error | err_drv_unknown_stdin_type_clang_cl | use /Tc or /Tp to set input type for standard input |
Error | err_drv_unknown_language | language not recognized: '%0' |
Error | err_drv_invalid_arch_name | invalid arch name '%0' |
Error | err_drv_cuda_bad_gpu_arch | Unsupported CUDA gpu architecture: %0 |
Error | err_drv_invalid_thread_model_for_target | invalid thread model '%0' in '%1' for this target |
Error | err_drv_invalid_linker_name | invalid linker name in argument '%0' |
Error | err_drv_invalid_pgo_instrumentor | invalid PGO instrumentor in argument '%0' |
Error | err_drv_invalid_rtlib_name | invalid runtime library name in argument '%0' |
Error | err_drv_unsupported_rtlib_for_platform | unsupported runtime library '%0' for platform '%1' |
Error | err_drv_invalid_stdlib_name | invalid library name in argument '%0' |
Error | err_drv_invalid_output_with_multiple_archs | cannot use '%0' output with multiple -arch options |
Error | err_drv_no_input_files | no input files |
Error | err_drv_use_of_Z_option | unsupported use of internal gcc -Z option '%0' |
Error | err_drv_output_argument_with_multiple_files | cannot specify -o when generating multiple output files |
Error | err_drv_out_file_argument_with_multiple_sources | cannot specify '%0%1' when compiling multiple source files |
Error | err_no_external_assembler | there is no external assembler that can be used on this platform |
Error | err_drv_unable_to_remove_file | unable to remove file: %0 |
Error | err_drv_command_failure | unable to execute command: %0 |
Error | err_drv_invalid_darwin_version | invalid Darwin version number: %0 |
Error | err_drv_missing_argument | argument to '%0' is missing (expected %1 value%s1) |
Error | err_drv_invalid_Xarch_argument_with_args | invalid Xarch argument: '%0', options requiring arguments are unsupported |
Error | err_drv_invalid_Xarch_argument_isdriver | invalid Xarch argument: '%0', cannot change driver behavior inside Xarch argument |
Error | err_drv_argument_only_allowed_with | invalid argument '%0' only allowed with '%1' |
Error | err_drv_argument_not_allowed_with | invalid argument '%0' not allowed with '%1' |
Error | err_drv_invalid_version_number | invalid version number in '%0' |
Error | err_drv_no_linker_llvm_support | '%0': unable to pass LLVM bit-code files to linker |
Error | err_drv_no_ast_support | '%0': unable to use AST files with this tool |
Error | err_drv_no_module_support | '%0': unable to use module files with this tool |
Error | err_drv_clang_unsupported | the clang compiler does not support '%0' |
Error | err_drv_clang_unsupported_opt_cxx_darwin_i386 | the clang compiler does not support '%0' for C++ on Darwin/i386 |
Error | err_drv_command_failed | %0 command failed with exit code %1 (use -v to see invocation) |
Error | err_drv_command_signalled | %0 command failed due to signal (use -v to see invocation) |
Error | err_drv_force_crash | failing because environment variable '%0' is set |
Error | err_drv_invalid_mfloat_abi | invalid float ABI '%0' |
Error | err_drv_invalid_libcxx_deployment | invalid deployment target for -stdlib=libc++ (requires %0 or later) |
Error | err_drv_invalid_argument_to_fdebug_prefix_map | invalid argument '%0' to -fdebug-prefix-map |
Error | err_drv_malformed_sanitizer_blacklist | malformed sanitizer blacklist: '%0' |
Error | err_target_unsupported_arch | the target architecture '%0' is not supported by the target '%1' |
Error | err_drv_I_dash_not_supported | '%0' not supported, please use -iquote instead |
Error | err_drv_unknown_argument | unknown argument: '%0' |
Warning | warn_drv_unknown_argument_clang_cl | unknown argument ignored in clang-cl: '%0' |
Warning | warn_drv_ycyu_no_arg_clang_cl | support for '%0' without a filename not implemented yet; flag ignored |
Warning | warn_drv_ycyu_different_arg_clang_cl | support for '/Yc' and '/Yu' with different filenames not implemented yet; flags ignored |
Warning | warn_drv_ycyu_no_fi_arg_clang_cl | support for '%0' without a corresponding /FI flag not implemented yet; flag ignored |
Warning | warn_drv_yc_multiple_inputs_clang_cl | support for '/Yc' with more than one source file not implemented yet; flag ignored |
Error | err_drv_invalid_value | invalid value '%1' in '%0' |
Error | err_drv_invalid_int_value | invalid integral value '%1' in '%0' |
Error | err_drv_invalid_remap_file | invalid option '%0' not of the form ; |
Error | err_drv_invalid_gcc_output_type | invalid output type '%0' for use with gcc tool |
Error | err_drv_cc_print_options_failure | unable to open CC_PRINT_OPTIONS file: %0 |
Error | err_drv_preamble_format | incorrect format for -preamble-bytes=N,END |
Error | err_drv_conflicting_deployment_targets | conflicting deployment targets, both '%0' and '%1' are present in environment |
Error | err_drv_objc_gc_arr | cannot specify both '-fobjc-arc' and '%0' |
Error | err_arc_unsupported_on_runtime | -fobjc-arc is not supported on platforms using the legacy runtime |
Error | err_arc_unsupported_on_toolchain | -fobjc-arc is not supported on versions of OS X prior to 10.6 |
Error | err_objc_weak_with_gc | -fobjc-weak is not supported in Objective-C garbage collection |
Error | err_objc_weak_unsupported | -fobjc-weak is not supported on the current deployment target |
Error | err_drv_mg_requires_m_or_mm | option '-MG' requires '-M' or '-MM' |
Error | err_drv_unknown_objc_runtime | unknown or ill-formed Objective-C runtime '%0' |
Error | err_drv_emit_llvm_link | -emit-llvm cannot be used when linking |
Error | err_drv_optimization_remark_pattern | %0 in '%1' |
Error | err_drv_no_neon_modifier | [no]neon is not accepted as modifier, please use [no]simd instead |
Error | err_drv_invalid_omp_target | OpenMP target is invalid: '%0' |
Error | err_drv_omp_host_ir_file_not_found | The provided host compiler IR file '%0' is required to generate code for OpenMP target regions but cannot be found. |
Error | err_drv_omp_host_target_not_supported | The target '%0' is not a supported OpenMP host target. |
Error | err_drv_bitcode_unsupported_on_toolchain | -fembed-bitcode is not supported on versions of iOS prior to 6.0 |
Warning | warn_O4_is_O3 | -O4 is equivalent to -O3 |
Warning | warn_drv_lto_libpath | libLTO.dylib relative to clang installed dir not found; using 'ld' default search path instead |
Warning | warn_drv_optimization_value | optimization level '%0' is not supported; using '%1%2' instead |
Warning | warn_ignored_gcc_optimization | optimization flag '%0' is not supported |
Warning | warn_c_kext | ignoring -fapple-kext which is valid for C++ and Objective-C++ only |
Warning | warn_drv_input_file_unused | %0: '%1' input unused%select{ when '%3' is present|}2 |
Warning | warn_drv_input_file_unused_by_cpp | %0: '%1' input unused in cpp mode |
Warning | warn_drv_preprocessed_input_file_unused | %0: previously preprocessed input%select{ unused when '%2' is present|}1 |
Warning | warn_drv_unused_argument | argument unused during compilation: '%0' |
Warning | warn_drv_empty_joined_argument | joined argument expects additional value: '%0' |
Warning | warn_drv_clang_unsupported | the clang compiler does not support '%0' |
Warning | warn_drv_deprecated_arg | argument '%0' is deprecated, use '%1' instead |
Warning | warn_drv_assuming_mfloat_abi_is | unknown platform, assuming -mfloat-abi=%0 |
Warning | warn_ignoring_ftabstop_value | ignoring invalid -ftabstop value '%0', using default value %1 |
Warning | warn_drv_overriding_flag_option | overriding '%0' option with '%1' |
Warning | warn_drv_treating_input_as_cxx | treating '%0' input as '%1' when in C++ mode, this behavior is deprecated |
Warning | warn_drv_objc_gc_unsupported | Objective-C garbage collection is not supported on this platform, ignoring '%0' |
Warning | warn_drv_pch_not_first_include | precompiled header '%0' was ignored because '%1' is not first '-include' |
Warning | warn_missing_sysroot | no such sysroot directory: '%0' |
Warning | warn_debug_compression_unavailable | cannot compress debug sections (zlib not installed) |
Warning | warn_drv_enabling_rtti_with_exceptions | implicitly enabling rtti for exception handling |
Warning | warn_drv_disabling_vptr_no_rtti_default | implicitly disabling vptr sanitizer because rtti wasn't enabled |
Note | note_drv_command_failed_diag_msg | diagnostic msg: %0 |
Note | note_drv_t_option_is_global | The last /TC or /TP option takes precedence over earlier instances |
Note | note_drv_address_sanitizer_debug_runtime | AddressSanitizer doesn't support linking with debug runtime libraries yet |
Error | err_analyzer_config_no_value | analyzer-config option '%0' has a key but no value |
Error | err_analyzer_config_multiple_values | analyzer-config option '%0' should contain only one '=' |
Error | err_drv_modules_validate_once_requires_timestamp | [1]:option '-fmodules-validate-once-per-build-session' requires [2]:'-fbuild-session-timestamp=' or '-fbuild-session-file=' |
Error | err_test_module_file_extension_format | [1]:-ftest-module-file-extension argument '%0' is not of the required form [2]:'blockname:major:minor:hashed:user info' |
Warning | warn_drv_invoking_fallback | falling back to %0 |
Warning | warn_target_unsupported_nan2008 | ignoring '-mnan=2008' option because the '%0' architecture does not support it |
Warning | warn_target_unsupported_nanlegacy | ignoring '-mnan=legacy' option because the '%0' architecture does not support it |
Warning | warn_drv_unable_to_find_directory_expected | unable to find %0 directory, expected to be in '%1' |
Warning | warn_drv_ps4_force_pic | option '%0' was ignored by the PS4 toolchain, using '-fPIC' |
Warning | warn_drv_ps4_sdk_dir | environment variable SCE_PS4_SDK_DIR is set, but points to invalid or nonexistent directory '%0' |
Error | err_drv_unsupported_linker | unsupported value '%0' for -linker option |
#DiagnosticFrontendKinds.td
Type | Name | Message |
---|---|---|
Error | err_fe_error_opening | error opening '%0': %1 |
Error | err_fe_error_reading | error reading '%0' |
Error | err_fe_error_reading_stdin | error reading stdin: %0 |
Error | err_fe_error_backend | error in backend: %0 |
Error | err_fe_inline_asm | %0 |
Warning | warn_fe_inline_asm | %0 |
Note | note_fe_inline_asm | %0 |
Note | note_fe_inline_asm_here | instantiated into assembly here |
Error | err_fe_cannot_link_module | cannot link module '%0': %1 |
Warning | warn_fe_frame_larger_than | stack frame size of %0 bytes in %q1 |
Warning | warn_fe_backend_frame_larger_than | %0 |
Error | err_fe_backend_frame_larger_than | %0 |
Note | note_fe_backend_frame_larger_than | %0 |
Warning | warn_fe_backend_plugin | %0 |
Error | err_fe_backend_plugin | %0 |
Remark | remark_fe_backend_plugin | %0 |
Note | note_fe_backend_plugin | %0 |
Warning | warn_fe_override_module | overriding the module target triple with %0 |
Remark | remark_fe_backend_optimization_remark | %0 |
Remark | remark_fe_backend_optimization_remark_missed | %0 |
Remark | remark_fe_backend_optimization_remark_analysis | %0 |
Remark | remark_fe_backend_optimization_remark_analysis_fpcommute | [1]:%0; [2]:[1]:allow reordering by specifying '#pragma clang loop vectorize(enable)' [2]:before the loop or by providing the compiler option '-ffast-math'. |
Remark | remark_fe_backend_optimization_remark_analysis_aliasing | [1]:%0; [2]:[1]:allow reordering by specifying '#pragma clang loop vectorize(enable)' [2]:[1]:before the loop. If the arrays will always be independent specify [2]:[1]:'#pragma clang loop vectorize(assume_safety)' before the loop or provide [2]:[1]:the '__restrict__' qualifier with the independent array arguments. [2]:Erroneous results will occur if these options are incorrectly applied! |
Warning | warn_fe_backend_optimization_failure | %0 |
Note | note_fe_backend_invalid_loc | [1]:could [2]:not determine the original source location for %0:%1:%2 |
Error | err_fe_backend_unsupported | %0 |
Remark | remark_sanitize_address_insert_extra_padding_accepted | -fsanitize-address-field-padding applied to %0 |
Remark | remark_sanitize_address_insert_extra_padding_rejected | [1]:-fsanitize-address-field-padding ignored for %0 because it [2]:[1]:%select{is not C++|is packed|is a union|is trivially copyable| [2]:[1]:has trivial destructor|is standard layout|is in a blacklisted file| [2]:is blacklisted}1 |
Error | err_fe_invalid_code_complete_file | cannot locate code-completion file %0 |
Error | err_fe_stdout_binary | unable to change standard output to binary |
Error | err_fe_dependency_file_requires_MT | -dependency-file requires at least one -MT or -MQ option |
Error | err_fe_invalid_plugin_name | unable to find plugin '%0' |
Error | err_fe_expected_compiler_job | unable to handle compilation, expected exactly one compiler job in '%0' |
Error | err_fe_expected_clang_command | expected a clang compiler command |
Error | err_fe_remap_missing_to_file | could not remap file '%0' to the contents of file '%1' |
Error | err_fe_remap_missing_from_file | could not remap from missing file '%0' |
Error | err_fe_unable_to_load_pch | unable to load PCH file |
Error | err_fe_unable_to_load_plugin | unable to load plugin '%0': '%1' |
Error | err_fe_unable_to_create_target | unable to create target: '%0' |
Error | err_fe_unable_to_interface_with_target | unable to interface with target machine |
Error | err_fe_unable_to_open_output | unable to open output file '%0': '%1' |
Error | err_fe_pth_file_has_no_source_header | PTH file '%0' does not designate an original source header file for -include-pth |
Warning | warn_fe_macro_contains_embedded_newline | macro '%0' contains embedded newline; text after the newline is ignored |
Warning | warn_fe_cc_print_header_failure | unable to open CC_PRINT_HEADERS file: %0 (using stderr) |
Warning | warn_fe_cc_log_diagnostics_failure | unable to open CC_LOG_DIAGNOSTICS file: %0 (using stderr) |
Error | err_fe_no_pch_in_dir | no suitable precompiled header file found in directory '%0' |
Error | err_fe_action_not_available | action %0 not compiled in |
Warning | warn_fe_serialized_diag_merge_failure | unable to merge a subprocess's serialized diagnostics |
Warning | warn_fe_serialized_diag_failure | unable to open file %0 for serializing diagnostics (%1) |
Error | err_verify_missing_line | missing or invalid line number following '@' in expected %0 |
Error | err_verify_missing_file | file '%0' could not be located in expected %1 |
Error | err_verify_invalid_range | invalid range following '-' in expected %0 |
Error | err_verify_missing_start | cannot find start ('{{') of expected %0 |
Error | err_verify_missing_end | cannot find end ('}}') of expected %0 |
Error | err_verify_invalid_content | invalid expected %0: %1 |
Error | err_verify_missing_regex | cannot find start of regex ('{{') in %0 |
Error | err_verify_inconsistent_diags | [1]:'%0' diagnostics %select{expected|seen}1 but not %select{seen|expected}1: [2]:%2 |
Error | err_verify_invalid_no_diags | [1]:%select{expected|'expected-no-diagnostics'}0 directive cannot follow [2]:%select{'expected-no-diagnostics' directive|other expected directives}0 |
Error | err_verify_no_directives | no expected directives found: consider use of 'expected-no-diagnostics' |
Note | note_fixit_applied | FIX-IT applied suggested code changes |
Note | note_fixit_in_macro | FIX-IT unable to apply suggested code changes in a macro |
Note | note_fixit_failed | FIX-IT unable to apply suggested code changes |
Note | note_fixit_unfixed_error | FIX-IT detected an error it cannot fix |
Note | warn_fixit_no_changes | FIX-IT detected errors it could not fix; no output will be generated |
Error | err_relocatable_without_isysroot | [1]:must specify system root with -isysroot when building a relocatable [2]:PCH file |
Warning | warn_unknown_diag_option | unknown %select{warning|remark}0 option '%1'%select{|; did you mean '%3'?}2 |
Warning | warn_unknown_warning_specifier | unknown %0 warning specifier: '%1' |
Error | err_unknown_analyzer_checker | no analyzer checkers are associated with '%0' |
Note | note_suggest_disabling_all_checkers | use -analyzer-disable-all-checks to disable all static analyzer checkers |
Warning | warn_incompatible_analyzer_plugin_api | checker plugin '%0' is not compatible with this version of the analyzer |
Note | note_incompatible_analyzer_plugin_api | current API version is '%0', but plugin was compiled with version '%1' |
Warning | warn_module_config_mismatch | [1]:module file %0 cannot be loaded due to a configuration mismatch with the current [2]:compilation |
Error | err_module_map_not_found | module map file '%0' not found |
Error | err_missing_module_name | no module name provided; specify one with -fmodule-name= |
Error | err_missing_module | no module named '%0' declared in module map file '%1' |
Error | err_no_submodule | no submodule named %0 in module '%1' |
Error | err_no_submodule_suggest | no submodule named %0 in module '%1'; did you mean '%2'? |
Warning | warn_missing_submodule | missing submodule '%0' |
Error | err_module_cannot_create_includes | cannot create includes file for module %0: %1 |
Warning | warn_module_config_macro_undef | [1]:%select{definition|#undef}0 of configuration macro '%1' has no effect on [2]:[1]:the import of '%2'; pass '%select{-D%1=...|-U%1}0' on the command line [2]:to configure the module |
Note | note_module_def_undef_here | macro was %select{defined|#undef'd}0 here |
Remark | remark_module_build | building module '%0' as '%1' |
Remark | remark_module_build_done | finished building module '%0' |
Error | err_modules_embed_file_not_found | file '%0' specified by '-fmodules-embed-file=' not found |
Error | err_test_module_file_extension_version | [1]:test module file extension '%0' has different version (%1.%2) than expected [2]:(%3.%4) |
Error | err_missing_vfs_overlay_file | virtual filesystem overlay file '%0' not found |
Error | err_invalid_vfs_overlay | invalid virtual filesystem overlay file '%0' |
#DiagnosticLexKinds.td
Type | Name | Message |
---|---|---|
Warning | null_in_char_or_string | null character(s) preserved in %select{char|string}0 literal |
Warning | null_in_file | null character ignored |
Warning | warn_nested_block_comment | '/*' within block comment |
Warning | escaped_newline_block_comment_end | escaped newline between */ characters at block comment end |
Warning | backslash_newline_space | backslash and newline separated by space |
Warning | warn_cxx98_compat_less_colon_colon | '<::' is treated as digraph '<:' (aka '[') followed by ':' in C++98 |
Warning | trigraph_ignored | trigraph ignored |
Warning | trigraph_ignored_block_comment | ignored trigraph would end block comment |
Warning | trigraph_ends_block_comment | trigraph ends block comment |
Warning | trigraph_converted | trigraph converted to '%0' character |
Extension | ext_multi_line_line_comment | multi-line // comment |
Extension | ext_line_comment | // comments are not allowed in this language |
Extension | ext_no_newline_eof | no newline at end of file |
Warning | warn_no_newline_eof | no newline at end of file |
Warning | warn_cxx98_compat_no_newline_eof | C++98 requires newline at end of file |
Extension | ext_dollar_in_identifier | '$' in identifier |
Extension | ext_charize_microsoft | charizing operator #@ is a Microsoft extension |
Extension | ext_comment_paste_microsoft | pasting two '/' tokens into a '//' comment is a Microsoft extension |
Extension | ext_ctrl_z_eof_microsoft | treating Ctrl-Z as end-of-file is a Microsoft extension |
Extension | ext_token_used | extension used |
Warning | warn_cxx11_keyword | '%0' is a keyword in C++11 |
ExtWarn | ext_unterminated_char_or_string | missing terminating %select{'|'\"'}0 character |
ExtWarn | ext_empty_character | empty character constant |
Error | err_unterminated_block_comment | unterminated /* comment |
Error | err_invalid_character_to_charify | invalid argument to convert to character |
Error | err_unterminated___pragma | missing terminating ')' character |
Error | err_conflict_marker | version control conflict marker in file |
Error | err_raw_delim_too_long | [1]:raw string delimiter longer than 16 characters [2]:; use PREFIX( )PREFIX to delimit raw string |
Error | err_invalid_char_raw_delim | [1]:invalid character '%0' character in raw string delimiter [2]:; use PREFIX( )PREFIX to delimit raw string |
Error | err_unterminated_raw_string | raw string missing terminating delimiter )%0\" |
Warning | warn_cxx98_compat_raw_string_literal | raw string literals are incompatible with C++98 |
ExtWarn | ext_multichar_character_literal | multi-character character constant |
Extension | ext_four_char_character_literal | multi-character character constant |
Error | err_invalid_utf8 | source file is not valid UTF-8 |
Error | err_non_ascii | non-ASCII characters are not allowed outside of literals and identifiers |
ExtWarn | ext_unicode_whitespace | treating Unicode character as whitespace |
Error | err_hex_escape_no_digits | \\%0 used with no following hex digits |
Warning | warn_ucn_escape_no_digits | [1]:\\%0 used with no following hex digits; [2]:treating as '\\' followed by identifier |
Error | err_ucn_escape_incomplete | incomplete universal character name |
Warning | warn_ucn_escape_incomplete | [1]:incomplete universal character name; [2]:treating as '\\' followed by identifier |
Note | note_ucn_four_not_eight | did you mean to use '\\u'? |
Error | err_ucn_escape_basic_scs | character '%0' cannot be specified by a universal character name |
Error | err_ucn_control_character | universal character name refers to a control character |
Error | err_ucn_escape_invalid | invalid universal character |
Warning | warn_ucn_escape_surrogate | universal character name refers to a surrogate character |
Warning | warn_c99_compat_unicode_id | [1]:%select{using this character in an identifier|starting an identifier with [2]:this character}0 is incompatible with C99 |
Warning | warn_cxx98_compat_unicode_id | using this character in an identifier is incompatible with C++98 |
Warning | warn_cxx98_compat_literal_ucn_escape_basic_scs | [1]:specifying character '%0' with a universal character name [2]:is incompatible with C++98 |
Warning | warn_cxx98_compat_literal_ucn_control_character | [1]:universal character name referring to a control character [2]:is incompatible with C++98 |
Warning | warn_ucn_not_valid_in_c89 | [1]:universal character names are only valid in C99 or C++; [2]:treating as '\\' followed by identifier |
ExtWarn | warn_ucn_not_valid_in_c89_literal | universal character names are only valid in C99 or C++ |
Extension | ext_nonstandard_escape | use of non-standard escape character '\\%0' |
ExtWarn | ext_unknown_escape | unknown escape sequence '\\%0' |
Error | err_invalid_digit | invalid digit '%0' in %select{decimal|octal|binary}1 constant |
Error | err_invalid_suffix_constant | invalid suffix '%0' on %select{integer|floating}1 constant |
Warning | warn_cxx11_compat_digit_separator | digit separators are incompatible with C++ standards before C++14 |
Error | err_digit_separator_not_between_digits | digit separator cannot appear at %select{start|end}0 of digit sequence |
Warning | warn_extraneous_char_constant | extraneous characters in character constant ignored |
Warning | warn_char_constant_too_large | character constant too long for its type |
Error | err_multichar_utf_character_literal | Unicode character literals may not contain multiple characters |
Error | err_exponent_has_no_digits | exponent has no digits |
Extension | ext_imaginary_constant | imaginary constants are a GNU extension |
Error | err_hex_constant_requires | [1]:hexadecimal floating %select{constant|literal}0 requires [2]:%select{an exponent|a significand}1 |
Extension | ext_hex_constant_invalid | hexadecimal floating constants are a C99 feature |
Extension | ext_hex_literal_invalid | hexadecimal floating literals are a C++1z feature |
Warning | warn_cxx1z_hex_literal | [1]:hexidecimal floating literals are incompatible with [2]:C++ standards before C++1z |
Extension | ext_binary_literal | binary integer literals are a GNU extension |
Extension | ext_binary_literal_cxx14 | binary integer literals are a C++14 extension |
Warning | warn_cxx11_compat_binary_literal | binary integer literals are incompatible with C++ standards before C++14 |
Error | err_pascal_string_too_long | Pascal string is too long |
Error | err_escape_too_large | %select{hex|octal}0 escape sequence out of range |
Extension | ext_string_too_long | [1]:string literal of length %0 exceeds [2]:[1]:maximum length %1 that %select{C90|ISO C99|C++}2 compilers are required to [2]:support |
Error | err_character_too_large | character too large for enclosing character literal type |
Warning | warn_c99_compat_unicode_literal | unicode literals are incompatible with C99 |
Warning | warn_cxx98_compat_unicode_literal | unicode literals are incompatible with C++98 |
Warning | warn_cxx14_compat_u8_character_literal | unicode literals are incompatible with C++ standards before C++1z |
Warning | warn_cxx11_compat_user_defined_literal | [1]:identifier after literal will be treated as a user-defined literal suffix [2]:in C++11 |
Warning | warn_cxx11_compat_reserved_user_defined_literal | [1]:identifier after literal will be treated as a reserved user-defined literal [2]:suffix in C++11 |
ExtWarn | ext_reserved_user_defined_literal | [1]:invalid suffix on literal; C++11 requires a space between literal and [2]:identifier |
ExtWarn | ext_ms_reserved_user_defined_literal | [1]:invalid suffix on literal; C++11 requires a space between literal and [2]:identifier |
Error | err_unsupported_string_concat | unsupported non-standard concatenation of string literals |
Error | err_string_concat_mixed_suffix | [1]:differing user-defined suffixes ('%0' and '%1') in string literal [2]:concatenation |
Error | err_pp_invalid_udl | [1]:%select{character|integer}0 literal with user-defined suffix [2]:cannot be used in preprocessor constant expression |
Error | err_bad_string_encoding | illegal character encoding in string literal |
ExtWarn | warn_bad_string_encoding | illegal character encoding in string literal |
Error | err_bad_character_encoding | illegal character encoding in character literal |
ExtWarn | warn_bad_character_encoding | illegal character encoding in character literal |
Error | err_lexing_string | failure when lexing a string |
Error | err_invalid_pth_file | invalid or corrupt PTH file '%0' |
Warning | pp_hash_warning | %0 |
Error | err_pp_hash_error | %0 |
Warning | pp_include_next_in_primary | #include_next in primary source file |
Error | pp_include_macros_out_of_predefines | the #__include_macros directive is only for internal use by -imacros |
Warning | pp_include_next_absolute_path | #include_next with absolute path |
ExtWarn | ext_c99_whitespace_required_after_macro_name | ISO C99 requires whitespace after the macro name |
ExtWarn | ext_missing_whitespace_after_macro_name | whitespace required after macro name |
Warning | warn_missing_whitespace_after_macro_name | whitespace recommended after macro name |
Warning | pp_pragma_once_in_main_file | #pragma once in main file |
Warning | pp_pragma_sysheader_in_main_file | #pragma system_header ignored in main file |
Warning | pp_poisoning_existing_macro | poisoning existing macro |
Warning | pp_out_of_date_dependency | current file is older than dependency %0 |
ExtWarn | ext_pp_undef_builtin_macro | undefining builtin macro |
ExtWarn | ext_pp_redef_builtin_macro | redefining builtin macro |
Warning | pp_disabled_macro_expansion | disabled expansion of recursive macro |
Warning | pp_macro_not_used | macro is not used |
Warning | warn_pp_undef_identifier | %0 is not defined, evaluates to 0 |
Warning | warn_pp_ambiguous_macro | ambiguous expansion of macro %0 |
Note | note_pp_ambiguous_macro_chosen | expanding this definition of %0 |
Note | note_pp_ambiguous_macro_other | other definition of %0 |
Extension | warn_pp_macro_hides_keyword | keyword is hidden by macro definition |
Warning | warn_pp_macro_is_reserved_id | macro name is a reserved identifier |
Warning | warn_pp_objc_macro_redef_ignored | ignoring redefinition of Objective-C qualifier macro |
Warning | pp_invalid_string_literal | invalid string literal, ignoring final '\\' |
Warning | warn_pp_expr_overflow | integer overflow in preprocessor expression |
Warning | warn_pp_convert_to_positive | [1]:%select{left|right}0 side of operator converted from negative value to [2]:unsigned: %1 |
Extension | ext_pp_import_directive | #import is a language extension |
Error | err_pp_import_directive_ms | #import of type library is an unsupported Microsoft feature |
ExtWarn | ext_pp_include_search_ms | #include resolved using non-portable Microsoft search rules as: %0 |
Extension | ext_pp_ident_directive | #ident is a language extension |
Extension | ext_pp_include_next_directive | #include_next is a language extension |
Extension | ext_pp_warning_directive | #warning is a language extension |
ExtWarn | ext_pp_extra_tokens_at_eol | extra tokens at end of #%0 directive |
Extension | ext_pp_comma_expr | comma operator in operand of #if |
Extension | ext_pp_bad_vaargs_use | __VA_ARGS__ can only appear in the expansion of a C99 variadic macro |
ExtWarn | ext_pp_macro_redef | %0 macro redefined |
Extension | ext_variadic_macro | variadic macros are a C99 feature |
Warning | warn_cxx98_compat_variadic_macro | variadic macros are incompatible with C++98 |
Extension | ext_named_variadic_macro | named variadic macros are a GNU extension |
Error | err_embedded_directive | embedding a #%0 directive within macro arguments is not supported |
Extension | ext_embedded_directive | embedding a directive within macro arguments has undefined behavior |
Extension | ext_missing_varargs_arg | must specify at least one argument for '...' parameter of variadic macro |
Extension | ext_empty_fnmacro_arg | empty macro arguments are a C99 feature |
Warning | warn_cxx98_compat_empty_fnmacro_arg | empty macro arguments are incompatible with C++98 |
Note | note_macro_here | macro %0 defined here |
Error | err_pp_opencl_variadic_macros | variadic macros not supported in OpenCL |
Error | err_pp_invalid_directive | invalid preprocessing directive |
Error | err_pp_directive_required | %0 must be used within a preprocessing directive |
Error | err_pp_file_not_found | '%0' file not found |
Error | err_pp_file_not_found_not_fatal | '%0' file not found with include; use \"quotes\" instead |
Error | err_pp_error_opening_file | error opening file '%0': %1 |
Error | err_pp_empty_filename | empty filename |
Error | err_pp_include_too_deep | #include nested too deeply |
Error | err_pp_expects_filename | expected \"FILENAME\" or |
Error | err_pp_macro_not_identifier | macro name must be an identifier |
Error | err_pp_missing_macro_name | macro name missing |
Error | err_pp_missing_rparen_in_macro_def | missing ')' in macro parameter list |
Error | err_pp_invalid_tok_in_arg_list | invalid token in macro parameter list |
Error | err_pp_expected_ident_in_arg_list | expected identifier in macro parameter list |
Error | err_pp_expected_comma_in_arg_list | expected comma in macro parameter list |
Error | err_pp_duplicate_name_in_arg_list | duplicate macro parameter name %0 |
Error | err_pp_stringize_not_parameter | '#' is not followed by a macro parameter |
Error | err_pp_malformed_ident | invalid #ident directive |
Error | err_pp_unterminated_conditional | unterminated conditional directive |
Error | pp_err_else_after_else | #else after #else |
Error | pp_err_elif_after_else | #elif after #else |
Error | pp_err_else_without_if | #else without #if |
Error | pp_err_elif_without_if | #elif without #if |
Error | err_pp_endif_without_if | #endif without #if |
Error | err_pp_expected_value_in_expr | expected value in expression |
Error | err_pp_expected_rparen | expected ')' in preprocessor expression |
Error | err_pp_expected_eol | expected end of line in preprocessor expression |
Error | err_pp_expected_after | missing %1 after %0 |
Error | err_pp_colon_without_question | ':' without preceding '?' |
Error | err_pp_division_by_zero | division by zero in preprocessor expression |
Error | err_pp_remainder_by_zero | remainder by zero in preprocessor expression |
Error | err_pp_expr_bad_token_binop | token is not a valid binary operator in a preprocessor subexpression |
Error | err_pp_expr_bad_token_start_expr | invalid token at start of a preprocessor expression |
Error | err_pp_invalid_poison | can only poison identifier tokens |
Error | err_pp_used_poisoned_id | attempt to use a poisoned identifier |
Error | err_feature_check_malformed | builtin feature check macro requires a parenthesized identifier |
Error | err_warning_check_malformed | builtin warning check macro requires a parenthesized string |
ExtWarn | warn_has_warning_invalid_option | __has_warning expected option name (e.g. \"-Wundef\") |
Error | err_pp_identifier_arg_not_identifier | cannot convert %0 token to an identifier |
ExtWarn | warn_pragma_include_alias_mismatch_angle | [1]:angle-bracketed include <%0> cannot be aliased to double-quoted [2]:include \"%1\" |
ExtWarn | warn_pragma_include_alias_mismatch_quote | [1]:double-quoted include \"%0\" cannot be aliased to angle-bracketed [2]:include <%1> |
ExtWarn | warn_pragma_include_alias_expected | pragma include_alias expected '%0' |
ExtWarn | warn_pragma_include_alias_expected_filename | pragma include_alias expected include filename |
ExtWarn | warn_pragma_warning_expected | #pragma warning expected '%0' |
ExtWarn | warn_pragma_warning_spec_invalid | [1]:#pragma warning expected 'push', 'pop', 'default', 'disable', [2]: 'error', 'once', 'suppress', 1, 2, 3, or 4 |
ExtWarn | warn_pragma_warning_push_level | #pragma warning(push, level) requires a level between 0 and 4 |
ExtWarn | warn_pragma_warning_expected_number | #pragma warning expected a warning number |
Error | err__Pragma_malformed | _Pragma takes a parenthesized string literal |
Error | err_pragma_message_malformed | pragma %select{message|warning|error}0 requires parenthesized string |
Error | err_pragma_push_pop_macro_malformed | pragma %0 requires a parenthesized string |
Warning | warn_pragma_pop_macro_no_push | pragma pop_macro could not pop '%0', no matching push_macro |
Warning | warn_pragma_message | %0 |
Error | err_pragma_message | %0 |
Warning | warn_pragma_ignored | unknown pragma ignored |
ExtWarn | ext_stdc_pragma_ignored | unknown pragma in STDC namespace |
ExtWarn | ext_on_off_switch_syntax | expected 'ON' or 'OFF' or 'DEFAULT' in pragma |
ExtWarn | ext_pragma_syntax_eod | expected end of directive in pragma |
Warning | warn_stdc_fenv_access_not_supported | pragma STDC FENV_ACCESS ON is not supported, ignoring pragma |
ExtWarn | warn_pragma_diagnostic_invalid | [1]:pragma diagnostic expected 'error', 'warning', 'ignored', 'fatal', [2]: 'push', or 'pop' |
ExtWarn | warn_pragma_diagnostic_cannot_pop | pragma diagnostic pop could not pop, no matching push |
ExtWarn | warn_pragma_diagnostic_invalid_option | pragma diagnostic expected option name (e.g. \"-Wundef\") |
ExtWarn | warn_pragma_diagnostic_invalid_token | unexpected token in pragma diagnostic |
ExtWarn | warn_pragma_diagnostic_unknown_warning | unknown warning group '%0', ignored |
Warning | warn_pragma_debug_unexpected_command | unexpected debug command '%0' |
Warning | warn_pragma_debug_missing_argument | missing argument to debug command '%0' |
Error | err_defined_macro_name | 'defined' cannot be used as a macro name |
Error | err_paste_at_start | '##' cannot appear at start of macro expansion |
Error | err_paste_at_end | '##' cannot appear at end of macro expansion |
Extension | ext_paste_comma | token pasting of ',' and __VA_ARGS__ is a GNU extension |
Error | err_unterm_macro_invoc | unterminated function-like macro invocation |
Error | err_too_many_args_in_macro_invoc | too many arguments provided to function-like macro invocation |
Note | note_suggest_parens_for_macro | [1]:parentheses are required around macro argument containing braced [2]:initializer list |
Note | note_init_list_at_beginning_of_macro_argument | cannot use initializer list at the beginning of a macro argument |
Error | err_too_few_args_in_macro_invoc | too few arguments provided to function-like macro invocation |
Error | err_pp_bad_paste | pasting formed '%0', an invalid preprocessing token |
ExtWarn | ext_pp_bad_paste_ms | pasting formed '%0', an invalid preprocessing token |
Error | err_pp_operator_used_as_macro_name | C++ operator %0 (aka %1) used as a macro name |
Extension | ext_pp_operator_used_as_macro_name | err_pp_operator_used_as_macro_name.Text |
Error | err_pp_illegal_floating_literal | floating point literal in preprocessor expression |
Error | err_pp_line_requires_integer | #line directive requires a positive integer argument |
Extension | ext_pp_line_zero | #line directive with zero argument is a GNU extension |
Error | err_pp_line_invalid_filename | invalid filename for #line directive |
Warning | warn_pp_line_decimal | %select{#line|GNU line marker}0 directive interprets number as decimal, not octal |
Error | err_pp_line_digit_sequence | %select{#line|GNU line marker}0 directive requires a simple digit sequence |
Error | err_pp_linemarker_requires_integer | line marker directive requires a positive integer argument |
Error | err_pp_linemarker_invalid_filename | invalid filename for line marker directive |
Error | err_pp_linemarker_invalid_flag | invalid flag line marker directive |
Error | err_pp_linemarker_invalid_pop | invalid line marker flag '2': cannot pop empty include stack |
Extension | ext_pp_line_too_big | C requires #line number to be less than %0, allowed as extension |
Warning | warn_cxx98_compat_pp_line_too_big | #line number greater than 32767 is incompatible with C++98 |
Error | err_pp_visibility_non_macro | no macro named %0 |
Error | err_pp_arc_cf_code_audited_syntax | expected 'begin' or 'end' |
Error | err_pp_double_begin_of_arc_cf_code_audited | already inside '#pragma clang arc_cf_code_audited' |
Error | err_pp_unmatched_end_of_arc_cf_code_audited | not currently inside '#pragma clang arc_cf_code_audited' |
Error | err_pp_include_in_arc_cf_code_audited | cannot #include files inside '#pragma clang arc_cf_code_audited' |
Error | err_pp_eof_in_arc_cf_code_audited | '#pragma clang arc_cf_code_audited' was not ended within this file |
Warning | warn_pp_date_time | expansion of date or time macro is not reproducible |
Error | err_mmap_unknown_token | skipping stray token |
Error | err_mmap_expected_module | expected module declaration |
Error | err_mmap_expected_module_name | expected module name |
Error | err_mmap_expected_lbrace | expected '{' to start module '%0' |
Error | err_mmap_expected_rbrace | expected '}' |
Note | note_mmap_lbrace_match | to match this '{' |
Error | err_mmap_expected_rsquare | expected ']' to close attribute |
Note | note_mmap_lsquare_match | to match this ']' |
Error | err_mmap_expected_member | expected umbrella, header, submodule, or module export |
Error | err_mmap_expected_header | expected a header name after '%0' |
Error | err_mmap_expected_mmap_file | expected a module map file name |
Error | err_mmap_module_redefinition | redefinition of module '%0' |
Note | note_mmap_prev_definition | previously defined here |
Error | err_mmap_umbrella_dir_not_found | umbrella directory '%0' not found |
Error | err_mmap_umbrella_clash | umbrella for module '%0' already covers this directory |
Error | err_mmap_module_id | expected a module name or '*' |
Error | err_mmap_expected_library_name | expected %select{library|framework}0 name as a string |
Error | err_mmap_config_macro_submodule | configuration macros are only allowed in top-level modules |
Error | err_mmap_use_decl_submodule | use declarations are only allowed in top-level modules |
Error | err_mmap_expected_config_macro | expected configuration macro name after ',' |
Error | err_mmap_expected_conflicts_comma | expected ',' after conflicting module name |
Error | err_mmap_expected_conflicts_message | expected a message describing the conflict with '%0' |
Error | err_mmap_missing_module_unqualified | no module named '%0' visible from '%1' |
Error | err_mmap_missing_module_qualified | no module named '%0' in '%1' |
Error | err_mmap_top_level_inferred_submodule | only submodules and framework modules may be inferred with wildcard syntax |
Error | err_mmap_inferred_no_umbrella | inferred submodules require a module with an umbrella |
Error | err_mmap_inferred_framework_submodule | inferred submodule cannot be a framework submodule |
Error | err_mmap_explicit_inferred_framework | inferred framework modules cannot be 'explicit' |
Error | err_mmap_missing_exclude_name | expected excluded module name |
Error | err_mmap_inferred_redef | redefinition of inferred submodule |
Error | err_mmap_expected_lbrace_wildcard | expected '{' to start inferred submodule |
Error | err_mmap_expected_inferred_member | expected %select{module exclusion with 'exclude'|'export *'}0 |
Error | err_mmap_expected_export_wildcard | only '*' can be exported from an inferred submodule |
Error | err_mmap_explicit_top_level | 'explicit' is not permitted on top-level modules |
Error | err_mmap_nested_submodule_id | qualified module name can only be used to define modules at the top level |
Error | err_mmap_expected_feature | expected a feature name |
Error | err_mmap_expected_attribute | expected an attribute name |
Warning | warn_mmap_unknown_attribute | unknown attribute '%0' |
Warning | warn_auto_module_import | [1]:treating #%select{include|import|include_next|__include_macros}0 as an [2]:import of module '%1' |
Note | note_implicit_top_level_module_import_here | submodule of top-level module '%0' implicitly imported here |
Warning | warn_uncovered_module_header | umbrella header for module '%0' does not include header '%1' |
Error | err_expected_id_building_module | expected a module name in '__building_module' expression |
Warning | warn_use_of_private_header_outside_module | use of private header from outside its module: '%0' |
Error | err_undeclared_use_of_module | module %0 does not depend on a module exporting '%1' |
Warning | warn_non_modular_include_in_framework_module | include of non-modular header inside framework module '%0' |
Warning | warn_non_modular_include_in_module | include of non-modular header inside module '%0' |
Warning | warn_module_conflict | module '%0' conflicts with already-imported module '%1': %2 |
Warning | warn_header_guard | %0 is used as a header guard here, followed by #define of a different macro |
Note | note_header_guard | %0 is defined here; did you mean %1? |
Warning | warn_defined_in_object_type_macro | macro expansion producing 'defined' has undefined behavior |
Extension | warn_defined_in_function_type_macro | macro expansion producing 'defined' has undefined behavior |
Error | err_pp_assume_nonnull_syntax | expected 'begin' or 'end' |
Error | err_pp_double_begin_of_assume_nonnull | already inside '#pragma clang assume_nonnull' |
Error | err_pp_unmatched_end_of_assume_nonnull | not currently inside '#pragma clang assume_nonnull' |
Error | err_pp_include_in_assume_nonnull | cannot #include files inside '#pragma clang assume_nonnull' |
Error | err_pp_eof_in_assume_nonnull | '#pragma clang assume_nonnull' was not ended within this file |
#DiagnosticParseKinds.td
Type | Name | Message |
---|---|---|
Warning | w_asm_qualifier_ignored | ignored %0 qualifier on asm |
Warning | warn_file_asm_volatile | meaningless 'volatile' on asm outside function |
Error | err_asm_empty | __asm used with no assembly instructions |
Error | err_inline_ms_asm_parsing | %0 |
Error | err_msasm_unsupported_arch | Unsupported architecture '%0' for MS-style inline assembly |
Error | err_msasm_unable_to_create_target | MS-style inline assembly is not available: %0 |
Error | err_gnu_inline_asm_disabled | GNU-style inline assembly is disabled |
Extension | ext_empty_translation_unit | ISO C requires a translation unit to contain at least one declaration |
Warning | warn_cxx98_compat_top_level_semi | extra ';' outside of a function is incompatible with C++98 |
Extension | ext_extra_semi | [1]:extra ';' %select{ [2]:[1]:outside of a function| [2]:[1]:inside a %1| [2]:[1]:inside instance variable list| [2]:after member function definition}0 |
Extension | ext_extra_semi_cxx11 | extra ';' outside of a function is a C++11 extension |
Warning | warn_extra_semi_after_mem_fn_def | extra ';' after member function definition |
Extension | ext_thread_before | '__thread' before '%0' |
ExtWarn | ext_keyword_as_ident | [1]:keyword '%0' will be made available as an identifier [2]:%select{here|for the remainder of the translation unit}1 |
Extension | ext_nullability | type nullability specifier %0 is a Clang extension |
Error | error_empty_enum | use of empty enum |
Extension | ext_ident_list_in_param | type-less parameter names in function declaration |
Extension | ext_c99_variable_decl_in_for_loop | variable declaration in for loop is a C99-specific feature |
Extension | ext_c99_compound_literal | compound literals are a C99-specific feature |
Extension | ext_enumerator_list_comma_c | [1]:commas at the end of enumerator lists are a C99-specific [2]:feature |
Extension | ext_enumerator_list_comma_cxx | commas at the end of enumerator lists are a C++11 extension |
Warning | warn_cxx98_compat_enumerator_list_comma | commas at the end of enumerator lists are incompatible with C++98 |
Error | err_enumerator_list_missing_comma | missing ',' between enumerators |
Error | err_enumerator_unnamed_no_def | unnamed enumeration must be a definition |
Extension | ext_cxx11_enum_fixed_underlying_type | enumeration types with a fixed underlying type are a C++11 extension |
Extension | ext_c_enum_fixed_underlying_type | enumeration types with a fixed underlying type are a Microsoft extension |
Warning | warn_cxx98_compat_enum_fixed_underlying_type | enumeration types with a fixed underlying type are incompatible with C++98 |
Warning | warn_cxx98_compat_alignof | alignof expressions are incompatible with C++98 |
ExtWarn | ext_alignof_expr | %0 applied to an expression is a GNU extension |
Warning | warn_microsoft_dependent_exists | dependent %select{__if_not_exists|__if_exists}0 declarations are ignored |
Warning | warn_microsoft_qualifiers_ignored | qualifiers after comma in declarator list are ignored |
Extension | ext_c11_generic_selection | generic selections are a C11-specific feature |
Error | err_duplicate_default_assoc | duplicate default generic association |
Note | note_previous_default_assoc | previous default generic association is here |
Extension | ext_c11_alignment | %0 is a C11-specific feature |
Extension | ext_c11_noreturn | _Noreturn functions are a C11-specific feature |
Error | err_c11_noreturn_misplaced | '_Noreturn' keyword must precede function declarator |
Extension | ext_gnu_indirect_goto | use of GNU indirect-goto extension |
Extension | ext_gnu_address_of_label | use of GNU address-of-label extension |
Error | err_stmtexpr_file_scope | statement expression not allowed at file scope |
Extension | ext_gnu_statement_expr | use of GNU statement expression extension |
Extension | ext_gnu_conditional_expr | use of GNU ?: conditional expression extension, omitting middle operand |
Extension | ext_gnu_empty_initializer | use of GNU empty initializer extension |
Extension | ext_gnu_array_range | use of GNU array range extension |
ExtWarn | ext_gnu_missing_equal_designator | use of GNU 'missing =' extension in designator |
Error | err_expected_equal_designator | expected '=' or another designator |
ExtWarn | ext_gnu_old_style_field_designator | use of GNU old-style field designator extension |
Extension | ext_gnu_case_range | use of GNU case range extension |
Error | err_expected_expression | expected expression |
Error | err_expected_type | expected a type |
Error | err_expected_external_declaration | expected external declaration |
Error | err_extraneous_closing_brace | extraneous closing brace ('}') |
Error | err_expected_semi_declaration | expected ';' at end of declaration |
Error | err_expected_semi_decl_list | expected ';' at end of declaration list |
ExtWarn | ext_expected_semi_decl_list | expected ';' at end of declaration list |
Error | err_expected_member_name_or_semi | expected member name or ';' after declaration specifiers |
Error | err_function_declared_typedef | function definition declared 'typedef' |
Error | err_at_defs_cxx | @defs is not supported in Objective-C++ |
Error | err_at_in_class | unexpected '@' in member specification |
Error | err_unexpected_semi | unexpected ';' before %0 |
Error | err_expected_fn_body | expected function body after function declarator |
Warning | warn_attribute_on_function_definition | GCC does not allow %0 attribute in this position on a function definition |
Warning | warn_gcc_attribute_location | GCC does not allow an attribute in this position on a function declaration |
Warning | warn_attribute_no_decl | attribute %0 ignored, because it is not attached to a declaration |
Error | err_expected_method_body | expected method body |
Error | err_declspec_after_virtspec | '%0' qualifier may not appear after the virtual specifier '%1' |
Error | err_invalid_token_after_toplevel_declarator | expected ';' after top level declarator |
Error | err_invalid_token_after_declarator_suggest_equal | invalid %0 at end of declaration; did you mean '='? |
Error | err_expected_statement | expected statement |
Error | err_expected_lparen_after | expected '(' after '%0' |
Error | err_expected_rparen_after | expected ')' after '%0' |
Error | err_expected_punc | expected ')' or ',' after '%0' |
Error | err_expected_less_after | expected '<' after '%0' |
Error | err_expected_lbrace_in_compound_literal | expected '{' in compound literal |
Error | err_expected_while | expected 'while' in do/while loop |
Error | err_expected_semi_after_stmt | expected ';' after %0 statement |
Error | err_expected_semi_after_expr | expected ';' after expression |
Error | err_extraneous_token_before_semi | extraneous '%0' before ';' |
Error | err_expected_semi_after_method_proto | expected ';' after method prototype |
Error | err_expected_semi_after_namespace_name | expected ';' after namespace name |
Error | err_unexpected_namespace_attributes_alias | attributes cannot be specified on namespace alias |
Error | err_unexpected_nested_namespace_attribute | attributes cannot be specified on a nested namespace definition |
Error | err_inline_namespace_alias | namespace alias cannot be inline |
Error | err_namespace_nonnamespace_scope | namespaces can only be defined in global or namespace scope |
ExtWarn | ext_nested_namespace_definition | [1]:nested namespace definition is a C++1z extension; [2]:define each namespace separately |
Warning | warn_cxx14_compat_nested_namespace_definition | nested namespace definition is incompatible with C++ standards before C++1z |
Error | err_inline_nested_namespace_definition | nested namespace definition cannot be 'inline' |
Error | err_expected_semi_after_attribute_list | expected ';' after attribute list |
Error | err_expected_semi_after_static_assert | expected ';' after static_assert |
Error | err_expected_semi_for | expected ';' in 'for' statement specifier |
Error | err_single_decl_assign_in_for_range | range-based 'for' statement uses ':', not '=' |
Warning | warn_missing_selector_name | [1]:%0 used as the name of the previous parameter rather than as part [2]:of the selector |
Note | note_missing_selector_name | introduce a parameter name to make %0 part of the selector |
Note | note_force_empty_selector_name | [1]:or insert whitespace before ':' to use %0 as parameter name [2]:and have an empty entry in the selector |
Error | err_label_end_of_compound_statement | label at end of compound statement: expected statement |
Error | err_address_of_label_outside_fn | use of address-of-label extension outside of a function body |
Error | err_asm_operand_wide_string_literal | cannot use %select{unicode|wide}0 string literal in 'asm' |
Error | err_expected_selector_for_method | expected selector for Objective-C method |
Error | err_expected_property_name | expected property name |
Error | err_unexpected_at | unexpected '@' in program |
Error | err_atimport | use of '@import' when modules are disabled |
Error | err_invalid_reference_qualifier_application | '%0' qualifier may not be applied to a reference |
Error | err_illegal_decl_reference_to_reference | %0 declared as a reference to a reference |
ExtWarn | ext_rvalue_reference | rvalue references are a C++11 extension |
Warning | warn_cxx98_compat_rvalue_reference | rvalue references are incompatible with C++98 |
ExtWarn | ext_ref_qualifier | reference qualifiers on functions are a C++11 extension |
Warning | warn_cxx98_compat_ref_qualifier | reference qualifiers on functions are incompatible with C++98 |
ExtWarn | ext_inline_namespace | inline namespaces are a C++11 feature |
Warning | warn_cxx98_compat_inline_namespace | inline namespaces are incompatible with C++98 |
ExtWarn | ext_generalized_initializer_lists | generalized initializer lists are a C++11 extension |
Warning | warn_cxx98_compat_generalized_initializer_lists | generalized initializer lists are incompatible with C++98 |
Error | err_init_list_bin_op | [1]:initializer list cannot be used on the [2]:%select{left|right}0 hand side of operator '%1' |
Warning | warn_cxx98_compat_trailing_return_type | trailing return types are incompatible with C++98 |
ExtWarn | ext_auto_storage_class | [1]:'auto' storage class specifier is not permitted in C++11, and will not [2]:be supported in future releases |
ExtWarn | ext_decltype_auto_type_specifier | 'decltype(auto)' type specifier is a C++14 extension |
Warning | warn_cxx11_compat_decltype_auto_type_specifier | [1]:'decltype(auto)' type specifier is incompatible with C++ standards before [2]:C++14 |
Extension | ext_auto_type | '__auto_type' is a GNU extension |
ExtWarn | ext_for_range | range-based for loop is a C++11 extension |
Warning | warn_cxx98_compat_for_range | range-based for loop is incompatible with C++98 |
Error | err_for_range_identifier | range-based for loop requires type for loop variable |
Error | err_for_range_expected_decl | for range declaration must declare a variable |
Error | err_argument_required_after_attribute | argument required after attribute |
Error | err_missing_param | expected parameter declarator |
Error | err_missing_comma_before_ellipsis | C requires a comma prior to the ellipsis in a variadic function type |
Error | err_unexpected_typedef_ident | unexpected type name %0: expected identifier |
Warning | warn_cxx98_compat_decltype | 'decltype' type specifier is incompatible with C++98 |
Error | err_unexpected_scope_on_base_decltype | unexpected namespace scope prior to decltype |
Error | err_expected_class_name | expected class name |
Error | err_expected_class_name_not_template | 'typename' is redundant; base classes are implicitly types |
Error | err_unspecified_vla_size_with_static | 'static' may not be used with an unspecified variable length array size |
Error | err_unspecified_size_with_static | 'static' may not be used without an array size |
Error | err_expected_parentheses_around_typename | expected parentheses around type name in %0 expression |
Error | err_expected_case_before_expression | expected 'case' keyword before expression |
Error | err_typename_requires_specqual | type name requires a specifier or qualifier |
Error | err_typename_invalid_storageclass | type name does not allow storage class to be specified |
Error | err_typename_invalid_functionspec | type name does not allow function specifier to be specified |
Error | err_typename_invalid_constexpr | type name does not allow constexpr specifier to be specified |
Error | err_typename_identifiers_only | typename is allowed for identifiers only |
Error | err_friend_invalid_in_context | 'friend' used outside of class |
Error | err_templated_using_directive_declaration | cannot template a using %select{directive|declaration}0 |
Error | err_unexpected_colon_in_nested_name_spec | unexpected ':' in nested name specifier; did you mean '::'? |
Error | err_unexpected_token_in_nested_name_spec | '%0' cannot be a part of nested name specifier; did you mean ':'? |
Error | err_bool_redeclaration | redeclaration of C++ built-in type 'bool' |
Extension | ext_c11_static_assert | _Static_assert is a C11-specific feature |
Warning | warn_cxx98_compat_static_assert | static_assert declarations are incompatible with C++98 |
Error | err_paren_after_colon_colon | unexpected parenthesis after '::' |
Error | err_function_definition_not_allowed | function definition is not allowed here |
Error | err_expected_end_of_enumerator | expected '= constant-expression' or end of enumerator definition |
Error | err_expected_coloncolon_after_super | expected '::' after '__super' |
Error | err_expected_minus_or_plus | method type specifier must start with '-' or '+' |
Error | err_objc_no_attributes_on_category | attributes may not be specified on a category |
Error | err_objc_missing_end | missing '@end' |
Note | note_objc_container_start | [1]:%select{class|protocol|category|class extension|implementation [2]:|category implementation}0 started here |
Warning | warn_objc_protocol_qualifier_missing_id | protocol has no object type specified; defaults to qualified 'id' |
Error | err_objc_unknown_at | expected an Objective-C directive after '@' |
Error | err_illegal_super_cast | cannot cast 'super' (it isn't an expression) |
Error | err_nsnumber_nonliteral_unary | @%0 must be followed by a number to form an NSNumber object |
Warning | warn_cstyle_param | [1]:use of C-style parameters in Objective-C method declarations [2]: is deprecated |
Error | err_arc_bridge_retain | unknown cast annotation __bridge_retain; did you mean __bridge_retained? |
Warning | warn_arc_bridge_cast_nonarc | '%0' casts have no effect when not using ARC |
Error | err_objc_illegal_visibility_spec | illegal visibility specification |
Error | err_objc_illegal_interface_qual | illegal interface qualifier |
Error | err_objc_expected_equal_for_getter | expected '=' for Objective-C getter |
Error | err_objc_expected_equal_for_setter | expected '=' for Objective-C setter |
Error | err_objc_expected_selector_for_getter_setter | expected selector for Objective-C %select{setter|getter}0 |
Error | err_objc_property_requires_field_name | property requires fields to be named |
Error | err_objc_property_bitfield | property name cannot be a bitfield |
Error | err_objc_expected_property_attr | unknown property attribute %0 |
Error | err_objc_properties_require_objc2 | properties are an Objective-C 2 feature |
Error | err_objc_unexpected_attr | prefix attribute must be followed by an interface or protocol |
Error | err_objc_postfix_attribute | postfix attributes are not allowed on Objective-C directives |
Error | err_objc_postfix_attribute_hint | [1]:postfix attributes are not allowed on Objective-C directives, place [2]: them in front of '%select{@interface|@protocol}0' |
Error | err_objc_directive_only_in_protocol | directive may only be specified in protocols only |
Error | err_missing_catch_finally | @try statement without a @catch and @finally clause |
Error | err_objc_concat_string | unexpected token after Objective-C string |
Error | err_expected_objc_container | '@end' must appear in an Objective-C context |
Error | err_unexpected_protocol_qualifier | @implementation declaration cannot be protocol qualified |
Error | err_objc_unexpected_atend | '@end' appears where closing brace '}' is expected |
Error | error_property_ivar_decl | property synthesize requires specification of an ivar |
Error | err_synthesized_property_name | expected a property name in @synthesize |
Warning | warn_semicolon_before_method_body | semicolon before method body is ignored |
Note | note_extra_comma_message_arg | comma separating Objective-C messaging arguments |
Error | err_expected_field_designator | expected a field designator, such as '.field = 4' |
Error | err_declaration_does_not_declare_param | declaration does not declare a parameter |
Error | err_no_matching_param | parameter named %0 is missing |
Error | err_invalid_operator_on_type | cannot use %select{dot|arrow}0 operator on a type |
Error | err_expected_unqualified_id | expected %select{identifier|unqualified-id}0 |
Error | err_brackets_go_after_unqualified_id | [1]:brackets are not allowed here; to declare an array, [2]:place the brackets after the %select{identifier|name}0 |
Error | err_unexpected_unqualified_id | type-id cannot have a name |
Error | err_func_def_no_params | function definition does not declare parameters |
Error | err_expected_lparen_after_type | expected '(' for function-style cast or type construction |
Error | err_expected_init_in_condition | variable declaration in condition must have an initializer |
Error | err_expected_init_in_condition_lparen | variable declaration in condition cannot have a parenthesized initializer |
Error | err_extraneous_rparen_in_condition | extraneous ')' after condition, expected a statement |
Warning | warn_dangling_else | add explicit braces to avoid dangling else |
Error | err_expected_member_or_base_name | expected class member or base class name |
Error | err_expected_lbrace_after_base_specifiers | expected '{' after base class list |
Error | err_missing_end_of_definition | missing '}' at end of definition of %q0 |
Note | note_missing_end_of_definition_before | still within definition of %q0 here |
Extension | ext_ellipsis_exception_spec | exception specification of '...' is a Microsoft extension |
Error | err_dynamic_and_noexcept_specification | cannot have both throw() and noexcept() clause on the same function |
Error | err_except_spec_unparsed | unexpected end of exception specification |
Warning | warn_cxx98_compat_noexcept_decl | noexcept specifications are incompatible with C++98 |
Error | err_expected_catch | expected catch |
Error | err_using_namespace_in_class | 'using namespace' is not allowed in classes |
Error | err_constructor_bad_name | missing return type for function %0; did you mean the constructor name %1? |
Error | err_destructor_tilde_identifier | expected a class name after '~' to name a destructor |
Error | err_destructor_tilde_scope | '~' in destructor name should be after nested name specifier |
Error | err_destructor_template_id | destructor name %0 does not refer to a template |
Error | err_default_arg_unparsed | unexpected end of default argument expression |
Error | err_bracket_depth_exceeded | bracket nesting level exceeded maximum of %0 |
Note | note_bracket_depth | use -fbracket-depth=N to increase maximum nesting level |
Error | err_misplaced_ellipsis_in_declaration | [1]:'...' must %select{immediately precede declared identifier| [2]:be innermost component of anonymous pack declaration}0 |
Warning | warn_misplaced_ellipsis_vararg | [1]:'...' in this location creates a C-style varargs function [2]:%select{, not a function parameter pack|}0 |
Note | note_misplaced_ellipsis_vararg_existing_ellipsis | preceding '...' declares a function parameter pack |
Note | note_misplaced_ellipsis_vararg_add_ellipsis | [1]:place '...' %select{immediately before declared identifier|here}0 [2]:to declare a function parameter pack |
Note | note_misplaced_ellipsis_vararg_add_comma | insert ',' before '...' to silence this warning |
ExtWarn | ext_abstract_pack_declarator_parens | ISO C++11 requires a parenthesized pack declaration to have a name |
Error | err_function_is_not_record | unexpected %0 in function call; perhaps remove the %0? |
Error | err_super_in_using_declaration | '__super' cannot be used with a using declaration |
Error | err_dup_virtual | duplicate 'virtual' in base specifier |
Error | err_literal_operator_string_prefix | string literal after 'operator' cannot have an encoding prefix |
Error | err_literal_operator_string_not_empty | string literal after 'operator' must be '\"\"' |
Warning | warn_cxx98_compat_literal_operator | literal operators are incompatible with C++98 |
Error | err_anon_type_definition | declaration of anonymous %0 must be a definition |
Error | err_default_delete_in_multiple_declaration | [1]:'= %select{default|delete}0' is a function definition and must occur in a [2]:standalone declaration |
Warning | warn_cxx98_compat_noexcept_expr | noexcept expressions are incompatible with C++98 |
Warning | warn_cxx98_compat_nullptr | 'nullptr' is incompatible with C++98 |
Warning | warn_cxx14_compat_attribute | [1]:attributes on %select{a namespace|an enumerator}0 declaration are [2]:incompatible with C++ standards before C++1z |
Warning | warn_cxx98_compat_alignas | 'alignas' is incompatible with C++98 |
Warning | warn_cxx98_compat_attribute | C++11 attribute syntax is incompatible with C++98 |
Error | err_cxx11_attribute_forbids_arguments | attribute %0 cannot have an argument list |
Error | err_attribute_requires_arguments | parentheses must be omitted if %0 attribute's argument list is empty |
Error | err_cxx11_attribute_forbids_ellipsis | attribute '%0' cannot be used as an attribute pack |
Error | err_cxx11_attribute_repeated | attribute %0 cannot appear multiple times in an attribute specifier |
Error | err_attributes_not_allowed | an attribute list cannot appear here |
Error | err_l_square_l_square_not_attribute | [1]:C++11 only allows consecutive left square brackets when [2]:introducing an attribute |
Error | err_ms_declspec_type | __declspec attributes must be an identifier or string literal |
Error | err_ms_property_no_getter_or_putter | property does not specify a getter or a putter |
Error | err_ms_property_unknown_accessor | expected 'get' or 'put' in property declaration |
Error | err_ms_property_has_set_accessor | putter for property must be specified as 'put', not 'set' |
Error | err_ms_property_missing_accessor_kind | missing 'get=' or 'put=' |
Error | err_ms_property_expected_equal | expected '=' after '%0' |
Error | err_ms_property_duplicate_accessor | property declaration specifies '%0' accessor twice |
Error | err_ms_property_expected_accessor_name | expected name of accessor method |
Error | err_ms_property_expected_comma_or_rparen | expected ',' or ')' at end of property accessor list |
Error | err_ms_property_initializer | property declaration cannot have an in-class initializer |
Error | err_expected_template | expected template |
Error | err_unknown_template_name | unknown template name %0 |
Error | err_expected_comma_greater | expected ',' or '>' in template-parameter-list |
Error | err_class_on_template_template_param | template template parameter requires 'class' after the parameter list |
ExtWarn | ext_template_template_param_typename | template template parameter using 'typename' is a C++1z extension |
Warning | warn_cxx14_compat_template_template_param_typename | [1]:template template parameter using 'typename' is [2]:incompatible with C++ standards before C++1z |
Error | err_template_spec_syntax_non_template | [1]:identifier followed by '<' indicates a class template specialization but [2]:[1]:%0 %select{does not refer to a template|refers to a function template| [2]:|refers to a variable template|}1 |
Error | err_id_after_template_in_nested_name_spec | expected template name after 'template' keyword in nested name specifier |
Error | err_two_right_angle_brackets_need_space | a space is required between consecutive right angle brackets (use '> >') |
Error | err_right_angle_bracket_equal_needs_space | [1]:a space is required between a right angle bracket and an equals sign [2]:(use '> =') |
Warning | warn_cxx11_right_shift_in_template_arg | [1]:use of right-shift operator ('>>') in template argument will require [2]:parentheses in C++11 |
Warning | warn_cxx98_compat_two_right_angle_brackets | consecutive right angle brackets are incompatible with C++98 (use '> >') |
Error | err_templated_invalid_declaration | a static_assert declaration cannot be a template |
Error | err_multiple_template_declarators | [1]:%select{|a template declaration|an explicit template specialization| [2]:[1]:an explicit template instantiation}0 can [2]:only %select{|declare|declare|instantiate}0 a single entity |
Error | err_explicit_instantiation_with_definition | [1]:explicit template instantiation cannot have a definition; if this [2]:[1]:definition is meant to be an explicit specialization, add '<>' after the [2]:'template' keyword |
Error | err_template_defn_explicit_instantiation | [1]:%select{function|class|variable}0 cannot be defined in an explicit instantiation; if this [2]:declaration is meant to be a %select{function|class|variable}0 definition, remove the 'template' keyword |
Error | err_friend_explicit_instantiation | [1]:friend cannot be declared in an explicit instantiation; if this [2]:declaration is meant to be a friend declaration, remove the 'template' keyword |
Error | err_explicit_instantiation_enum | enumerations cannot be explicitly instantiated |
Error | err_expected_template_parameter | expected template parameter |
Error | err_missing_dependent_template_keyword | use 'template' keyword to treat '%0' as a dependent template name |
ExtWarn | warn_missing_dependent_template_keyword | use 'template' keyword to treat '%0' as a dependent template name |
Extension | ext_extern_template | extern templates are a C++11 extension |
Warning | warn_cxx98_compat_extern_template | extern templates are incompatible with C++98 |
Warning | warn_static_inline_explicit_inst_ignored | [1]:ignoring '%select{static|inline}0' keyword on explicit template [2]:instantiation |
Error | err_out_of_line_constructor_template_id | out-of-line constructor for %0 cannot have template arguments |
Error | err_out_of_line_template_id_type_names_constructor | [1]:qualified reference to %0 is a constructor name rather than a [2]:%select{template name|type}1 wherever a constructor can be declared |
Error | err_expected_qualified_after_typename | expected a qualified name after 'typename' |
ExtWarn | warn_expected_qualified_after_typename | expected a qualified name after 'typename' |
Error | err_typename_refers_to_non_type_template | typename specifier refers to a non-type template |
Error | err_expected_type_name_after_typename | expected an identifier or template-id after '::' |
Error | err_explicit_spec_non_template | explicit %select{specialization|instantiation}0 of non-template %1 %2 |
Error | err_default_template_template_parameter_not_template | [1]:default template argument for a template template parameter must be a class [2]:template |
ExtWarn | ext_fold_expression | pack fold expression is a C++1z extension |
Warning | warn_cxx14_compat_fold_expression | pack fold expression is incompatible with C++ standards before C++1z |
Error | err_expected_fold_operator | expected a foldable binary operator in fold expression |
Error | err_fold_operator_mismatch | operators in fold expression must be the same |
Error | err_ctor_init_missing_comma | missing ',' between base or member initializers |
Error | err_friend_decl_defines_type | cannot define a type in a friend declaration |
Error | err_missing_whitespace_digraph | [1]:found '<::' after a [2]:[1]:%select{template name|const_cast|dynamic_cast|reinterpret_cast|static_cast}0 [2]: which forms the digraph '<:' (aka '[') and a ':', did you mean '< ::'? |
ExtWarn | ext_defaulted_deleted_function | %select{defaulted|deleted}0 function definitions are a C++11 extension |
Warning | warn_cxx98_compat_defaulted_deleted_function | %select{defaulted|deleted}0 function definitions are incompatible with C++98 |
ExtWarn | ext_nonstatic_member_init | in-class initialization of non-static data member is a C++11 extension |
Warning | warn_cxx98_compat_nonstatic_member_init | in-class initialization of non-static data members is incompatible with C++98 |
Error | err_bitfield_member_init | bitfield member cannot have an in-class initializer |
Error | err_incomplete_array_member_init | array bound cannot be deduced from an in-class initializer |
ExtWarn | ext_alias_declaration | alias declarations are a C++11 extension |
Warning | warn_cxx98_compat_alias_declaration | alias declarations are incompatible with C++98 |
Error | err_alias_declaration_not_identifier | name defined in alias declaration must be an identifier |
Error | err_alias_declaration_specialization | %select{partial specialization|explicit specialization|explicit instantiation}0 of alias templates is not permitted |
ExtWarn | ext_override_control_keyword | '%0' keyword is a C++11 extension |
Warning | warn_cxx98_compat_override_control_keyword | '%0' keyword is incompatible with C++98 |
Error | err_override_control_interface | '%0' keyword not permitted with interface types |
ExtWarn | ext_ms_sealed_keyword | 'sealed' keyword is a Microsoft extension |
Error | err_access_specifier_interface | interface types cannot specify '%select{private|protected}0' access |
Error | err_duplicate_virt_specifier | class member already marked '%0' |
Error | err_scoped_enum_missing_identifier | scoped enumeration requires a name |
ExtWarn | ext_scoped_enum | scoped enumerations are a C++11 extension |
Warning | warn_cxx98_compat_scoped_enum | scoped enumerations are incompatible with C++98 |
Error | err_expected_parameter_pack | expected the name of a parameter pack |
Error | err_paren_sizeof_parameter_pack | missing parentheses around the size of parameter pack %0 |
Error | err_sizeof_parameter_pack | expected parenthesized parameter pack name in 'sizeof...' expression |
Error | err_expected_comma_or_rsquare | expected ',' or ']' in lambda capture list |
Error | err_this_captured_by_reference | 'this' cannot be captured by reference |
Error | err_expected_capture | expected variable name or 'this' in lambda capture list |
Error | err_expected_lambda_body | expected body of lambda expression |
Warning | warn_cxx98_compat_lambda | lambda expressions are incompatible with C++98 |
Error | err_lambda_missing_parens | [1]:lambda requires '()' before %select{'mutable'|return type| [2]:attribute specifier}0 |
Error | err_expected_version | expected a version of the form 'major[.minor[.subminor]]' |
Warning | warn_expected_consistent_version_separator | [1]:use same version number separators '_' or '.'; as in [2]:'major[.minor[.subminor]]' |
Error | err_zero_version | version number must have non-zero major, minor, or sub-minor version |
Error | err_availability_expected_platform | expected a platform name, e.g., 'macosx' |
Error | err_objcbridge_related_expected_related_class | expected a related ObjectiveC class name, e.g., 'NSColor' |
Error | err_objcbridge_related_selector_name | expected a class method selector with single argument, e.g., 'colorWithCGColor:' |
Error | err_availability_expected_change | expected 'introduced', 'deprecated', or 'obsoleted' |
Error | err_availability_unknown_change | [1]:%0 is not an availability stage; use 'introduced', 'deprecated', or [2]:'obsoleted' |
Error | err_availability_redundant | [1]:redundant %0 availability change; only the last specified change will [2]:be used |
Warning | warn_availability_and_unavailable | 'unavailable' availability overrides all other availability information |
Error | err_type_safety_unknown_flag | invalid comparison flag %0; use 'layout_compatible' or 'must_be_null' |
Error | err_type_trait_arity | [1]:type trait requires %0%select{| or more}1 argument%select{|s}2; have [2]:%3 argument%s3 |
Warning | warn_pragma_expected_lparen | missing '(' after '#pragma %0' - ignoring |
Warning | warn_pragma_expected_rparen | missing ')' after '#pragma %0' - ignoring |
Warning | warn_pragma_expected_identifier | expected identifier in '#pragma %0' - ignored |
Warning | warn_pragma_expected_section_name | expected a string literal for the section name in '#pragma %0' - ignored |
Warning | warn_pragma_expected_section_push_pop_or_name | expected push, pop or a string literal for the section name in '#pragma %0' - ignored |
Warning | warn_pragma_expected_section_label_or_name | expected a stack label or a string literal for the section name in '#pragma %0' - ignored |
Warning | warn_pragma_expected_init_seg | expected 'compiler', 'lib', 'user', or a string literal for the section name in '#pragma %0' - ignored |
Warning | warn_pragma_expected_integer | expected integer between %0 and %1 inclusive in '#pragma %2' - ignored |
Warning | warn_pragma_ms_struct | incorrect use of '#pragma ms_struct on|off' - ignored |
Warning | warn_pragma_extra_tokens_at_eol | extra tokens at end of '#pragma %0' - ignored |
Warning | warn_pragma_expected_punc | expected ')' or ',' in '#pragma %0' |
Warning | warn_pragma_expected_non_wide_string | expected non-wide string literal in '#pragma %0' |
Error | err_pragma_missing_argument | missing argument to '#pragma %0'%select{|; expected %2}1 |
Warning | warn_pragma_options_expected_align | expected 'align' following '#pragma options' - ignored |
Warning | warn_pragma_align_expected_equal | expected '=' following '#pragma %select{align|options align}0' - ignored |
Warning | warn_pragma_align_invalid_option | invalid alignment option in '#pragma %select{align|options align}0' - ignored |
Warning | warn_pragma_unsupported_action | known but unsupported action '%1' for '#pragma %0' - ignored |
Warning | warn_pragma_invalid_specific_action | unknown action '%1' for '#pragma %0' - ignored |
Warning | warn_pragma_expected_action_or_r_paren | expected action or ')' in '#pragma %0' - ignored |
Warning | warn_pragma_invalid_action | unknown action for '#pragma %0' - ignored |
Warning | warn_pragma_pack_malformed | expected integer or identifier in '#pragma pack' - ignored |
Warning | warn_pragma_unused_expected_var | expected '#pragma unused' argument to be a variable name |
Warning | warn_pragma_init_seg_unsupported_target | [1]:'#pragma init_seg' is only supported when targeting a [2]:Microsoft environment |
Error | err_pragma_fp_contract_scope | [1]:'#pragma fp_contract' can only appear at file scope or at the start of a [2]:compound statement |
Error | err_pragma_comment_malformed | pragma comment requires parenthesized identifier and optional string |
Error | err_pragma_comment_unknown_kind | unknown kind of pragma comment |
Warning | warn_pragma_comment_ignored | '#pragma comment %0' ignored |
Error | err_pragma_detect_mismatch_malformed | [1]:pragma detect_mismatch is malformed; it requires two comma-separated [2]:string literals |
Error | err_pragma_pointers_to_members_unknown_kind | [1]:unexpected %0, expected to see one of %select{|'best_case', 'full_generality', }1 [2]:'single_inheritance', 'multiple_inheritance', or 'virtual_inheritance' |
Error | err_pragma_optimize_invalid_argument | [1]:unexpected argument '%0' to '#pragma clang optimize'; [2]:expected 'on' or 'off' |
Error | err_pragma_optimize_extra_argument | unexpected extra argument '%0' to '#pragma clang optimize' |
Error | err_opencl_unroll_hint_on_non_loop | OpenCL only supports 'opencl_unroll_hint' attribute on for, while, and do statements |
Warning | warn_pragma_expected_colon | missing ':' after %0 - ignoring |
Warning | warn_pragma_expected_enable_disable | expected 'enable' or 'disable' - ignoring |
Warning | warn_pragma_unknown_extension | unknown OpenCL extension %0 - ignoring |
Error | err_opencl_taking_function_address_parser | taking address of function is not allowed |
Error | err_opencl_logical_exclusive_or | ^^ is a reserved operator in OpenCL |
Warning | warn_pragma_omp_ignored | unexpected '#pragma omp ...' in program |
Warning | warn_omp_extra_tokens_at_eol | extra tokens at the end of '#pragma omp %0' are ignored |
Warning | warn_pragma_expected_colon_r_paren | missing ':' or ')' after %0 - ignoring |
Error | err_omp_unknown_directive | expected an OpenMP directive |
Error | err_omp_unexpected_directive | unexpected OpenMP directive '#pragma omp %0' |
Error | err_omp_expected_punc | expected ',' or ')' in '%0' %select{clause|directive}1 |
Error | err_omp_unexpected_clause | unexpected OpenMP clause '%0' in directive '#pragma omp %1' |
Error | err_omp_immediate_directive | '#pragma omp %0' %select{|with '%2' clause }1cannot be an immediate substatement |
Error | err_omp_expected_identifier_for_critical | expected identifier specifying the name of the 'omp critical' directive |
Error | err_omp_expected_reduction_identifier | expected identifier or one of the following operators: '+', '-', '*', '&', '|', '^', '&&', or '||' |
Error | err_omp_unknown_map_type | incorrect map type, expected one of 'to', 'from', 'tofrom', 'alloc', 'release', or 'delete' |
Error | err_omp_unknown_map_type_modifier | incorrect map type modifier, expected 'always' |
Error | err_omp_map_type_missing | missing map type |
Error | err_pragma_loop_missing_argument | [1]:missing argument; expected %select{an integer value| [2]:'enable', %select{'assume_safety'|'full'}1 or 'disable'}0 |
Error | err_pragma_loop_invalid_option | [1]:%select{invalid|missing}0 option%select{ %1|}0; expected vectorize, [2]:vectorize_width, interleave, interleave_count, unroll, or unroll_count |
Error | err_pragma_invalid_keyword | invalid argument; expected 'enable', %select{'assume_safety'|'full'}0 or 'disable' |
Warning | warn_pragma_unroll_cuda_value_in_parens | argument to '#pragma unroll' should not be in parentheses in CUDA C/C++ |
Error | err_module_expected_ident | expected a module name after module import |
Error | err_module_expected_semi | expected ';' after module name |
Error | err_missing_before_module_end | expected %0 at end of module |
Error | err_objc_expected_type_parameter | expected type parameter name |
Error | err_objc_parameterized_implementation | @implementation cannot have type parameters |
Error | err_objc_type_args_after_protocols | protocol qualifiers must precede type arguments |
Error | err_for_co_await_not_range_for | 'co_await' modifier can only be applied to range-based for loop |
#DiagnosticSemaKinds.td
Type | Name | Message |
---|---|---|
Note | note_previous_decl | %0 declared here |
Note | note_entity_declared_at | %0 declared here |
Note | note_callee_decl | %0 declared here |
Note | note_defined_here | %0 defined here |
Warning | warn_variables_not_in_loop_body | [1]:variable%select{s| %1|s %1 and %2|s %1, %2, and %3|s %1, %2, %3, and %4}0 [2]:used in loop condition not modified in loop body |
Warning | warn_redundant_loop_iteration | [1]:variable %0 is %select{decremented|incremented}1 both in the loop header [2]:and in the loop body |
Note | note_loop_iteration_here | %select{decremented|incremented}0 here |
Warning | warn_for_range_const_reference_copy | [1]:loop variable %0 [2]:[1]:%diff{has type $ but is initialized with type $ [2]:| is initialized with a value of a different type}1,2 resulting in a copy |
Note | note_use_type_or_non_reference | use non-reference type %0 to keep the copy or type %1 to prevent copying |
Warning | warn_for_range_variable_always_copy | [1]:loop variable %0 is always a copy because the range of type %1 does not [2]:return a reference |
Note | note_use_non_reference_type | use non-reference type %0 |
Warning | warn_for_range_copy | loop variable %0 of type %1 creates a copy from type %2 |
Note | note_use_reference_type | use reference type %0 to prevent copying |
Warning | warn_duplicate_enum_values | [1]:element %0 has been implicitly assigned %1 which another element has [2]:been assigned |
Note | note_duplicate_element | element %0 also has value %1 |
Warning | warn_unsigned_abs | taking the absolute value of unsigned type %0 has no effect |
Note | note_remove_abs | remove the call to '%0' since unsigned values cannot be negative |
Warning | warn_abs_too_small | [1]:absolute value function %0 given an argument of type %1 but has parameter [2]:of type %2 which may cause truncation of value |
Warning | warn_wrong_absolute_value_type | [1]:using %select{integer|floating point|complex}1 absolute value function %0 [2]:when argument is of %select{integer|floating point|complex}2 type |
Note | note_replace_abs_function | use function '%0' instead |
Warning | warn_pointer_abs | taking the absolute value of %select{pointer|function|array}0 type %1 is suspicious |
Warning | warn_infinite_recursive_function | all paths through this function will call itself |
Warning | warn_comma_operator | possible misuse of comma operator here |
Note | note_cast_to_void | cast expression to void to silence warning |
Error | err_expr_not_ice | expression is not an %select{integer|integral}0 constant expression |
Extension | ext_expr_not_ice | [1]:expression is not an %select{integer|integral}0 constant expression; [2]:folding it to a constant is a GNU extension |
Error | err_typecheck_converted_constant_expression | value of type %0 is not implicitly convertible to %1 |
Error | err_typecheck_converted_constant_expression_disallowed | conversion from %0 to %1 is not allowed in a converted constant expression |
Error | err_typecheck_converted_constant_expression_indirect | [1]:conversion from %0 to %1 in converted constant expression would [2]:bind reference to a temporary |
Error | err_expr_not_cce | [1]:%select{case value|enumerator value|non-type template argument|array size}0 [2]:is not a constant expression |
ExtWarn | ext_cce_narrowing | [1]:%select{case value|enumerator value|non-type template argument|array size}0 [2]:[1]:%select{cannot be narrowed from type %2 to %3| [2]:evaluates to %2, which cannot be narrowed to type %3}1 |
Error | err_ice_not_integral | [1]:integral constant expression must have integral or unscoped enumeration [2]:type, not %0 |
Error | err_ice_incomplete_type | integral constant expression has incomplete class type %0 |
Error | err_ice_explicit_conversion | integral constant expression requires explicit conversion from %0 to %1 |
Note | note_ice_conversion_here | conversion to %select{integral|enumeration}0 type %1 declared here |
Error | err_ice_ambiguous_conversion | [1]:ambiguous conversion from type %0 to an integral or unscoped [2]:enumeration type |
Error | err_ice_too_large | [1]:integer constant expression evaluates to value %0 that cannot be [2]:represented in a %1-bit %select{signed|unsigned}2 integer type |
Error | err_expr_not_string_literal | expression is not a string literal |
Warning | ext_predef_outside_function | predefined identifier is only valid inside function |
Warning | warn_float_overflow | magnitude of floating-point constant too large for type %0; maximum is %1 |
Warning | warn_float_underflow | magnitude of floating-point constant too small for type %0; minimum is %1 |
Warning | warn_double_const_requires_fp64 | double precision constant requires cl_khr_fp64, casting to single precision |
Error | err_half_const_requires_fp16 | half precision constant requires cl_khr_fp16 |
Extension | ext_vla | variable length arrays are a C99 feature |
Warning | warn_vla_used | variable length array used |
Error | err_vla_non_pod | variable length array of non-POD element type %0 |
Error | err_vla_in_sfinae | variable length array cannot be formed during template argument deduction |
Error | err_array_star_in_function_definition | variable length array must be bound in function definition |
Error | err_vla_decl_in_file_scope | variable length array declaration not allowed at file scope |
Error | err_vla_decl_has_static_storage | variable length array declaration cannot have 'static' storage duration |
Error | err_vla_decl_has_extern_linkage | variable length array declaration cannot have 'extern' linkage |
Extension | ext_vla_folded_to_constant | variable length array folded to constant array as an extension |
Error | err_variably_modified_template_arg | variably modified type %0 cannot be used as a template argument |
Error | err_variably_modified_nontype_template_param | non-type template parameter of variably modified type %0 |
Error | err_variably_modified_new_type | 'new' cannot allocate object of variably modified type %0 |
Extension | ext_designated_init | designated initializers are a C99 feature |
Error | err_array_designator_negative | array designator value '%0' is negative |
Error | err_array_designator_empty_range | array designator range [%0, %1] is empty |
Error | err_array_designator_non_array | array designator cannot initialize non-array type %0 |
Error | err_array_designator_too_large | array designator index (%0) exceeds array bounds (%1) |
Error | err_field_designator_non_aggr | [1]:field designator cannot initialize a [2]:%select{non-struct, non-union|non-class}0 type %1 |
Error | err_field_designator_unknown | field designator %0 does not refer to any field in type %1 |
Error | err_field_designator_nonfield | field designator %0 does not refer to a non-static data member |
Note | note_field_designator_found | field designator refers here |
Error | err_designator_for_scalar_init | designator in initializer for scalar type %0 |
Warning | warn_subobject_initializer_overrides | [1]:subobject initialization overrides initialization of other fields [2]:within its enclosing subobject |
Warning | warn_initializer_overrides | initializer overrides prior initialization of this subobject |
Note | note_previous_initializer | [1]:previous initialization %select{|with side effects }0is here [2]:%select{| (side effects may not occur at run time)}0 |
Error | err_designator_into_flexible_array_member | designator into flexible array member subobject |
Note | note_flexible_array_member | initialized flexible array member %0 is here |
Extension | ext_flexible_array_init | flexible array initialization is a GNU extension |
ExtWarn | ext_duplicate_declspec | duplicate '%0' declaration specifier |
Warning | warn_duplicate_declspec | duplicate '%0' declaration specifier |
ExtWarn | ext_plain_complex | plain '_Complex' requires a type specifier; assuming '_Complex double' |
Extension | ext_integer_complex | complex integer types are a GNU extension |
Error | err_invalid_sign_spec | '%0' cannot be signed or unsigned |
Error | err_invalid_width_spec | '%select{|short|long|long long}0 %1' is invalid |
Error | err_invalid_complex_spec | '_Complex %0' is invalid |
Error | err_friend_decl_spec | '%0' is invalid in friend declarations |
ExtWarn | ext_auto_type_specifier | 'auto' type specifier is a C++11 extension |
Warning | warn_auto_storage_class | 'auto' storage class specifier is redundant and incompatible with C++11 |
Warning | warn_deprecated_register | [1]:'register' storage class specifier is deprecated [2]:and incompatible with C++1z |
ExtWarn | ext_register_storage_class | ISO C++1z does not allow 'register' storage class specifier |
Error | err_invalid_decl_spec_combination | cannot combine with previous '%0' declaration specifier |
Error | err_invalid_vector_decl_spec_combination | [1]:cannot combine with previous '%0' declaration specifier. [2]:'__vector' must be first |
Error | err_invalid_pixel_decl_spec_combination | [1]:'__pixel' must be preceded by '__vector'. [2]:'%0' declaration specifier not allowed here |
Error | err_invalid_vector_bool_decl_spec | cannot use '%0' with '__vector bool' |
Error | err_invalid_vector_long_decl_spec | cannot use 'long' with '__vector' |
Error | err_invalid_vector_float_decl_spec | cannot use 'float' with '__vector' |
Error | err_invalid_vector_double_decl_spec | [1]:use of 'double' with '__vector' requires VSX support to be enabled [2]:(available on POWER7 or later) |
Error | err_invalid_vector_long_long_decl_spec | [1]:use of 'long long' with '__vector bool' requires VSX support (available on [2]:[1]:POWER7 or later) or extended Altivec support (available on POWER8 or later) [2]:to be enabled |
Error | err_invalid_vector_long_double_decl_spec | cannot use 'long double' with '__vector' |
Warning | warn_vector_long_decl_spec_combination | Use of 'long' with '__vector' is deprecated |
Error | err_use_of_tag_name_without_tag | must use '%1' tag to refer to type %0%select{| in this scope}2 |
Error | err_redeclaration_different_type | redeclaration of %0 with a different type%diff{: $ vs $|}1,2 |
Error | err_bad_variable_name | %0 cannot be the name of a variable or data member |
Error | err_bad_parameter_name | %0 cannot be the name of a parameter |
Error | err_parameter_name_omitted | parameter name omitted |
Error | err_anyx86_interrupt_attribute | [1]:%select{x86|x86-64}0 'interrupt' attribute only applies to functions that [2]:[1]:have %select{a 'void' return type| [2]:[1]:only a pointer parameter optionally followed by an integer parameter| [2]:a pointer as the first parameter|a %2 type as the second parameter}1 |
Error | err_anyx86_interrupt_called | interrupt service routine cannot be called directly |
Warning | warn_mips_interrupt_attribute | [1]:MIPS 'interrupt' attribute only applies to functions that have [2]:%select{no parameters|a 'void' return type}0 |
Warning | warn_unused_parameter | unused parameter %0 |
Warning | warn_unused_variable | unused variable %0 |
Warning | warn_unused_local_typedef | unused %select{typedef|type alias}0 %1 |
Warning | warn_unused_property_backing_ivar | [1]:ivar %0 which backs the property is not [2]:referenced in this property's accessor |
Warning | warn_unused_const_variable | unused variable %0 |
Warning | warn_unused_exception_param | unused exception parameter %0 |
Warning | warn_decl_in_param_list | declaration of %0 will not be visible outside of this function |
Warning | warn_redefinition_in_param_list | redefinition of %0 will not be visible outside of this function |
Warning | warn_empty_parens_are_function_decl | empty parentheses interpreted as a function declaration |
Warning | warn_parens_disambiguated_as_function_declaration | parentheses were disambiguated as a function declaration |
Note | note_additional_parens_for_variable_declaration | add a pair of parentheses to declare a variable |
Note | note_empty_parens_function_call | change this ',' to a ';' to call %0 |
Note | note_empty_parens_default_ctor | remove parentheses to declare a variable |
Note | note_empty_parens_zero_initialize | replace parentheses with an initializer to declare a variable |
Warning | warn_unused_function | unused function %0 |
Warning | warn_unused_member_function | unused member function %0 |
Warning | warn_used_but_marked_unused | %0 was marked unused but was used |
Warning | warn_unneeded_internal_decl | %select{function|variable}0 %1 is not needed and will not be emitted |
Warning | warn_unneeded_static_internal_decl | [1]:'static' function %0 declared in header file [2]:should be declared 'static inline' |
Warning | warn_unneeded_member_function | member function %0 is not needed and will not be emitted |
Warning | warn_unused_private_field | private field %0 is not used |
Warning | warn_parameter_size | [1]:%0 is a large (%1 bytes) pass-by-value argument; [2]:pass it by reference instead ? |
Warning | warn_return_value_size | [1]:return value of %0 is a large (%1 bytes) pass-by-value object; [2]:pass it by reference instead ? |
Warning | warn_return_value_udt | [1]:%0 has C-linkage specified, but returns user-defined type %1 which is [2]:incompatible with C |
Warning | warn_return_value_udt_incomplete | [1]:%0 has C-linkage specified, but returns incomplete type %1 which could be [2]:incompatible with C |
Warning | warn_implicit_function_decl | implicit declaration of function %0 |
ExtWarn | ext_implicit_function_decl | implicit declaration of function %0 is invalid in C99 |
Note | note_function_suggestion | did you mean %0? |
Error | err_ellipsis_first_param | ISO C requires a named parameter before '...' |
Error | err_declarator_need_ident | declarator requires an identifier |
Error | err_language_linkage_spec_unknown | unknown linkage language |
Error | err_language_linkage_spec_not_ascii | [1]:string literal in language linkage specifier cannot have an [2]:encoding-prefix |
Warning | warn_use_out_of_scope_declaration | use of out-of-scope declaration of %0 |
Error | err_inline_non_function | 'inline' can only appear on functions |
Error | err_noreturn_non_function | '_Noreturn' can only appear on functions |
Warning | warn_qual_return_type | '%0' type qualifier%s1 on return type %plural{1:has|:have}1 no effect |
Warning | warn_decl_shadow | [1]:declaration shadows a %select{ [2]:[1]:local variable| [2]:[1]:variable in %2| [2]:[1]:static data member of %2| [2]:field of %2}1 |
Error | err_using_requires_qualname | using declaration requires a qualified name |
Error | err_using_typename_non_type | 'typename' keyword used on a non-type |
Error | err_using_dependent_value_is_type | dependent using declaration resolved to type without 'typename' |
Error | err_using_decl_nested_name_specifier_is_not_class | using declaration in class refers into '%0', which is not a class |
Error | err_using_decl_nested_name_specifier_is_current_class | using declaration refers to its own class |
Error | err_using_decl_nested_name_specifier_is_not_base_class | using declaration refers into '%0', which is not a base class of %1 |
Error | err_using_decl_constructor_not_in_direct_base | %0 is not a direct base of %1, cannot inherit constructors |
Error | err_using_decl_constructor_conflict | [1]:cannot inherit constructor, already inherited constructor with [2]:the same signature |
Note | note_using_decl_constructor_conflict_current_ctor | conflicting constructor |
Note | note_using_decl_constructor_conflict_previous_ctor | previous constructor |
Note | note_using_decl_constructor_conflict_previous_using | previously inherited here |
Warning | warn_using_decl_constructor_ellipsis | inheriting constructor does not inherit ellipsis |
Note | note_using_decl_constructor_ellipsis | constructor declared with ellipsis here |
Error | err_using_decl_can_not_refer_to_class_member | using declaration cannot refer to class member |
Note | note_using_decl_class_member_workaround | [1]:use %select{an alias declaration|a typedef declaration|a reference}0 [2]:instead |
Error | err_using_decl_can_not_refer_to_namespace | using declaration cannot refer to namespace |
Error | err_using_decl_constructor | using declaration cannot refer to a constructor |
Warning | warn_cxx98_compat_using_decl_constructor | inheriting constructors are incompatible with C++98 |
Error | err_using_decl_destructor | using declaration cannot refer to a destructor |
Error | err_using_decl_template_id | using declaration cannot refer to a template specialization |
Note | note_using_decl_target | target of using declaration |
Note | note_using_decl_conflict | conflicting declaration |
Error | err_using_decl_redeclaration | redeclaration of using decl |
Error | err_using_decl_conflict | target of using declaration conflicts with declaration already in scope |
Error | err_using_decl_conflict_reverse | declaration conflicts with target of using declaration already in scope |
Note | note_using_decl | %select{|previous }0using declaration |
Warning | warn_access_decl_deprecated | access declarations are deprecated; use using declarations instead |
Error | err_access_decl | [1]:ISO C++11 does not allow access declarations; [2]:use using declarations instead |
Warning | warn_exception_spec_deprecated | dynamic exception specifications are deprecated |
Note | note_exception_spec_deprecated | use '%0' instead |
Warning | warn_deprecated_copy_operation | [1]:definition of implicit copy %select{constructor|assignment operator}1 [2]:[1]:for %0 is deprecated because it has a user-declared [2]:%select{copy %select{assignment operator|constructor}1|destructor}2 |
Warning | warn_global_constructor | declaration requires a global constructor |
Warning | warn_global_destructor | declaration requires a global destructor |
Warning | warn_exit_time_destructor | declaration requires an exit-time destructor |
Error | err_invalid_thread | '%0' is only allowed on variable declarations |
Error | err_thread_non_global | '%0' variables must have global storage |
Error | err_thread_unsupported | thread-local storage is not supported for the current target |
Warning | warn_maybe_falloff_nonvoid_function | control may reach end of non-void function |
Warning | warn_falloff_nonvoid_function | control reaches end of non-void function |
Error | err_maybe_falloff_nonvoid_block | control may reach end of non-void block |
Error | err_falloff_nonvoid_block | control reaches end of non-void block |
Warning | warn_suggest_noreturn_function | %select{function|method}0 %1 could be declared with attribute 'noreturn' |
Warning | warn_suggest_noreturn_block | block could be declared with attribute 'noreturn' |
Warning | warn_unreachable | code will never be executed |
Warning | warn_unreachable_break | 'break' will never be executed |
Warning | warn_unreachable_return | 'return' will never be executed |
Warning | warn_unreachable_loop_increment | loop will run at most once (loop increment never executed) |
Note | note_unreachable_silence | silence by adding parentheses to mark code as explicitly dead |
ExtWarn | ext_implicit_lib_function_decl | implicitly declaring library function '%0' with type %1 |
Note | note_include_header_or_declare | include the header <%0> or explicitly provide a declaration for '%1' |
Note | note_previous_builtin_declaration | %0 is a builtin with type %1 |
Warning | warn_implicit_decl_requires_sysheader | declaration of built-in function '%1' requires inclusion of the header <%0> |
Warning | warn_redecl_library_builtin | incompatible redeclaration of library function %0 |
Error | err_builtin_definition | definition of builtin function %0 |
Error | err_arm_invalid_specialreg | invalid special register for builtin |
Error | err_invalid_cpu_supports | invalid cpu feature string for builtin |
Error | err_builtin_needs_feature | %0 needs target feature %1 |
Error | err_function_needs_feature | [1]:always_inline function %1 requires target feature '%2', but would [2]:[1]:be inlined into function %0 that is compiled without support for [2]:'%2' |
Warning | warn_builtin_unknown | use of unknown builtin %0 |
Warning | warn_dyn_class_memaccess | [1]:%select{destination for|source of|first operand of|second operand of}0 this [2]:[1]:%1 call is a pointer to %select{|class containing a }2dynamic class %3; [2]:vtable pointer will be %select{overwritten|copied|moved|compared}4 |
Note | note_bad_memaccess_silence | explicitly cast the pointer to silence this warning |
Warning | warn_sizeof_pointer_expr_memaccess | [1]:'%0' call operates on objects of type %1 while the size is based on a [2]:different type %2 |
Note | warn_sizeof_pointer_expr_memaccess_note | [1]:did you mean to %select{dereference the argument to 'sizeof' (and multiply [2]:[1]:it by the number of elements)|remove the addressof in the argument to [2]:[1]:'sizeof' (and multiply it by the number of elements)|provide an explicit [2]:length}0? |
Warning | warn_sizeof_pointer_type_memaccess | [1]:argument to 'sizeof' in %0 call is the same pointer type %1 as the [2]:%select{destination|source}2; expected %3 or an explicit length |
Warning | warn_strlcpycat_wrong_size | [1]:size argument in %0 call appears to be size of the source; [2]:expected the size of the destination |
Note | note_strlcpycat_wrong_size | change size argument to be the size of the destination |
Warning | warn_memsize_comparison | size argument in %0 call is a comparison |
Note | note_memsize_comparison_paren | did you mean to compare the result of %0 instead? |
Note | note_memsize_comparison_cast_silence | explicitly cast the argument to size_t to silence this warning |
Warning | warn_strncat_large_size | [1]:the value of the size argument in 'strncat' is too large, might lead to a [2]:buffer overflow |
Warning | warn_strncat_src_size | [1]:size argument in 'strncat' call appears [2]:to be size of the source |
Warning | warn_strncat_wrong_size | the value of the size argument to 'strncat' is wrong |
Note | note_strncat_wrong_size | [1]:change the argument to be the free space in the destination buffer minus [2]:the terminating null byte |
Warning | warn_assume_side_effects | the argument to %0 has side effects that will be discarded |
Warning | warn_memcpy_chk_overflow | %0 will always overflow destination buffer |
Warning | warn_static_main | 'main' should not be declared static |
Error | err_static_main | 'main' is not allowed to be declared static |
Error | err_inline_main | 'main' is not allowed to be declared inline |
ExtWarn | ext_variadic_main | 'main' is not allowed to be declared variadic |
ExtWarn | ext_noreturn_main | 'main' is not allowed to be declared _Noreturn |
Note | note_main_remove_noreturn | remove '_Noreturn' |
Error | err_constexpr_main | 'main' is not allowed to be declared constexpr |
Error | err_deleted_main | 'main' is not allowed to be deleted |
Error | err_mainlike_template_decl | %0 cannot be a template |
Error | err_main_returns_nonint | 'main' must return 'int' |
ExtWarn | ext_main_returns_nonint | return type of 'main' is not 'int' |
Note | note_main_change_return_type | change return type to 'int' |
Error | err_main_surplus_args | [1]:too many parameters (%0) for 'main': [2]:must be 0, 2, or 3 |
Warning | warn_main_one_arg | only one parameter on 'main' declaration |
Error | err_main_arg_wrong | [1]:%select{first|second|third|fourth}0 [2]:[1]:parameter of 'main' (%select{argument count|argument array|environment| [2]:platform-specific data}0) must be of type %1 |
Error | err_main_global_variable | main cannot be declared as global variable |
Warning | warn_main_redefined | [1]:variable named 'main' with external linkage [2]:has undefined behavior |
Extension | ext_main_used | ISO C++ does not allow 'main' to be used by a program |
ExtWarn | ext_no_declarators | declaration does not declare anything |
ExtWarn | ext_typedef_without_a_name | typedef requires a name |
Error | err_typedef_not_identifier | typedef name must be an identifier |
Error | err_typedef_changes_linkage | [1]:unsupported: typedef changes linkage [2]: of anonymous type, but linkage was already computed |
Note | note_typedef_changes_linkage | [1]:use a tag name here to establish [2]:linkage prior to definition |
Error | err_statically_allocated_object | interface type cannot be statically allocated |
Error | err_object_cannot_be_passed_returned_by_value | [1]:interface type %1 cannot be %select{returned|passed}0 by value [2]:; did you forget * in %1? |
Error | err_parameters_retval_cannot_have_fp16_type | %select{parameters|function return value}0 cannot have __fp16 type; did you forget * ? |
Error | err_opencl_half_load_store | %select{loading directly from|assigning directly to}0 pointer to type %1 is not allowed |
Error | err_opencl_cast_to_half | casting to type %0 is not allowed |
Error | err_opencl_half_declaration | declaring variable of type %0 is not allowed |
Error | err_opencl_half_param | declaring function parameter of type %0 is not allowed; did you forget * ? |
Error | err_opencl_invalid_return | declaring function return value of type %0 is not allowed %select{; did you forget * ?|}1 |
Warning | warn_enum_value_overflow | overflow in enumeration value |
Warning | warn_pragma_options_align_reset_failed | #pragma options align=reset failed: %0 |
Error | err_pragma_options_align_mac68k_target_unsupported | mac68k alignment pragma is not supported on this target |
Warning | warn_pragma_pack_invalid_alignment | expected #pragma pack parameter to be '1', '2', '4', '8', or '16' |
Warning | warn_pragma_pack_show | value of #pragma pack(show) == %0 |
Warning | warn_pragma_pack_pop_identifer_and_alignment | specifying both a name and alignment to 'pop' is undefined |
Warning | warn_pragma_pop_failed | #pragma %0(pop, ...) failed: %1 |
Warning | warn_cxx_ms_struct | [1]:ms_struct may not produce Microsoft-compatible layouts for classes [2]:with base classes or virtual functions |
Error | err_section_conflict | %0 causes a section type conflict with %1 |
Error | err_no_base_classes | invalid use of '__super', %0 has no base classes |
Error | err_invalid_super_scope | [1]:invalid use of '__super', [2]:this keyword can only be used inside class or member function scope |
Error | err_super_in_lambda_unsupported | use of '__super' inside a lambda is unsupported |
Warning | warn_pragma_unused_undeclared_var | undeclared variable %0 used as an argument for '#pragma unused' |
Warning | warn_pragma_unused_expected_var_arg | only variables can be arguments to '#pragma unused' |
Error | err_pragma_push_visibility_mismatch | #pragma visibility push with no matching #pragma visibility pop |
Note | note_surrounding_namespace_ends_here | surrounding namespace with visibility attribute ends here |
Error | err_pragma_pop_visibility_mismatch | #pragma visibility pop with no matching #pragma visibility push |
Note | note_surrounding_namespace_starts_here | surrounding namespace with visibility attribute starts here |
Error | err_pragma_loop_invalid_argument_type | invalid argument of type %0; expected an integer type |
Error | err_pragma_loop_invalid_argument_value | %select{invalid value '%0'; must be positive|value '%0' is too large}1 |
Error | err_pragma_loop_compatibility | %select{incompatible|duplicate}0 directives '%1' and '%2' |
Error | err_pragma_loop_precedes_nonloop | expected a for, while, or do-while loop to follow '%0' |
Error | err_duplicate_class_def | duplicate interface definition for class %0 |
Error | err_undef_superclass | cannot find interface declaration for %0, superclass of %1 |
Error | err_forward_superclass | attempting to use the forward class %0 as superclass of %1 |
Error | err_no_nsconstant_string_class | cannot find interface declaration for %0 |
Error | err_recursive_superclass | trying to recursively use %0 as superclass of %1 |
Error | err_conflicting_aliasing_type | conflicting types for alias %0 |
Warning | warn_undef_interface | cannot find interface declaration for %0 |
Warning | warn_duplicate_protocol_def | duplicate protocol definition of %0 is ignored |
Error | err_protocol_has_circular_dependency | protocol has circular dependency |
Error | err_undeclared_protocol | cannot find protocol declaration for %0 |
Warning | warn_undef_protocolref | cannot find protocol definition for %0 |
Warning | warn_atprotocol_protocol | @protocol is using a forward protocol declaration of %0 |
Warning | warn_readonly_property | [1]:attribute 'readonly' of property %0 restricts attribute [2]:'readwrite' of property inherited from %1 |
Warning | warn_property_attribute | '%1' attribute on property %0 does not match the property inherited from %2 |
Warning | warn_property_types_are_incompatible | property type %0 is incompatible with type %1 inherited from %2 |
Warning | warn_protocol_property_mismatch | property of type %0 was selected for synthesis |
Error | err_undef_interface | cannot find interface declaration for %0 |
Error | err_category_forward_interface | cannot define %select{category|class extension}0 for undefined class %1 |
Error | err_class_extension_after_impl | cannot declare class extension for %0 after class implementation |
Note | note_implementation_declared | class implementation is declared here |
Note | note_while_in_implementation | detected while default synthesizing properties in class implementation |
Note | note_class_declared | class is declared here |
Note | note_receiver_class_declared | receiver is instance of class declared here |
Note | note_receiver_expr_here | receiver expression is here |
Note | note_receiver_is_id | receiver is treated with 'id' type for purpose of method lookup |
Note | note_suppressed_class_declare | class with specified objc_requires_property_definitions attribute is declared here |
Error | err_objc_root_class_subclass | objc_root_class attribute may only be specified on a root class declaration |
Warning | warn_objc_root_class_missing | class %0 defined without specifying a base class |
Note | note_objc_needs_superclass | add a super class to fix this problem |
Warning | warn_dup_category_def | duplicate definition of category %1 on interface %0 |
Error | err_conflicting_super_class | conflicting super class name %0 |
Error | err_dup_implementation_class | reimplementation of class %0 |
Error | err_dup_implementation_category | reimplementation of category %1 for class %0 |
Error | err_conflicting_ivar_type | instance variable %0 has conflicting type%diff{: $ vs $|}1,2 |
Error | err_duplicate_ivar_declaration | instance variable is already declared |
Warning | warn_on_superclass_use | class implementation may not have super class |
Error | err_conflicting_ivar_bitwidth | instance variable %0 has conflicting bit-field width |
Error | err_conflicting_ivar_name | conflicting instance variable names: %0 vs %1 |
Error | err_inconsistent_ivar_count | inconsistent number of instance variables specified |
Warning | warn_undef_method_impl | method definition for %0 not found |
Warning | warn_conflicting_overriding_ret_types | [1]:conflicting return type in [2]:declaration of %0%diff{: $ vs $|}1,2 |
Warning | warn_conflicting_ret_types | [1]:conflicting return type in [2]:implementation of %0%diff{: $ vs $|}1,2 |
Warning | warn_conflicting_overriding_ret_type_modifiers | [1]:conflicting distributed object modifiers on return type [2]:in declaration of %0 |
Warning | warn_conflicting_ret_type_modifiers | [1]:conflicting distributed object modifiers on return type [2]:in implementation of %0 |
Warning | warn_non_covariant_overriding_ret_types | [1]:conflicting return type in [2]:declaration of %0: %1 vs %2 |
Warning | warn_non_covariant_ret_types | [1]:conflicting return type in [2]:implementation of %0: %1 vs %2 |
Warning | warn_conflicting_overriding_param_types | [1]:conflicting parameter types in [2]:declaration of %0%diff{: $ vs $|}1,2 |
Warning | warn_conflicting_param_types | [1]:conflicting parameter types in [2]:implementation of %0%diff{: $ vs $|}1,2 |
Warning | warn_conflicting_param_modifiers | [1]:conflicting distributed object modifiers on parameter type [2]:in implementation of %0 |
Warning | warn_conflicting_overriding_param_modifiers | [1]:conflicting distributed object modifiers on parameter type [2]:in declaration of %0 |
Warning | warn_non_contravariant_overriding_param_types | [1]:conflicting parameter types in [2]:declaration of %0: %1 vs %2 |
Warning | warn_non_contravariant_param_types | [1]:conflicting parameter types in [2]:implementation of %0: %1 vs %2 |
Warning | warn_conflicting_overriding_variadic | [1]:conflicting variadic declaration of method and its [2]:implementation |
Warning | warn_conflicting_variadic | [1]:conflicting variadic declaration of method and its [2]:implementation |
Warning | warn_category_method_impl_match | [1]:category is implementing a method which will also be implemented [2]: by its primary class |
Warning | warn_implements_nscopying | [1]:default assign attribute on property %0 which implements [2]:NSCopying protocol is not appropriate with -fobjc-gc[-only] |
Warning | warn_multiple_method_decl | multiple methods named %0 found |
Warning | warn_strict_multiple_method_decl | multiple methods named %0 found |
Warning | warn_accessor_property_type_mismatch | type of property %0 does not match type of accessor %1 |
Note | not_conv_function_declared_at | type conversion function declared here |
Note | note_method_declared_at | method %0 declared here |
Note | note_property_attribute | [1]:property %0 is declared [2]:%select{deprecated|unavailable|partial}1 here |
Error | err_setter_type_void | type of setter must be void |
Error | err_duplicate_method_decl | duplicate declaration of method %0 |
Warning | warn_duplicate_method_decl | multiple declarations of method %0 found and ignored |
Warning | warn_objc_cdirective_format_string | [1]:using %0 directive in %select{NSString|CFString}1 [2]:[1]:which is being passed as a formatting argument to the formatting [2]:%select{method|CFfunction}2 |
Error | err_objc_var_decl_inclass | cannot declare variable inside @interface or @protocol |
Error | error_missing_method_context | missing context for method declaration |
Error | err_objc_property_attr_mutually_exclusive | property attributes '%0' and '%1' are mutually exclusive |
Error | err_objc_property_requires_object | property with '%0' attribute must be of object type |
Warning | warn_objc_property_no_assignment_attribute | [1]:no 'assign', 'retain', or 'copy' attribute is specified - [2]:'assign' is assumed |
Warning | warn_objc_isa_use | [1]:direct access to Objective-C's isa is deprecated in favor of [2]:object_getClass() |
Warning | warn_objc_isa_assign | [1]:assignment to Objective-C's isa is deprecated in favor of [2]:object_setClass() |
Warning | warn_objc_pointer_masking | [1]:bitmasking for introspection of Objective-C object pointers is strongly [2]:discouraged |
Warning | warn_objc_pointer_masking_performSelector | warn_objc_pointer_masking.Text |
Warning | warn_objc_property_default_assign_on_object | default property attribute 'assign' not appropriate for non-GC object |
Warning | warn_property_attr_mismatch | property attribute in class extension does not match the primary class |
Warning | warn_property_implicitly_mismatched | [1]:primary property declaration is implicitly strong while redeclaration [2]:in class extension is weak |
Warning | warn_objc_property_copy_missing_on_block | [1]:'copy' attribute must be specified for the block property [2]:when -fobjc-gc-only is specified |
Warning | warn_objc_property_retain_of_block | [1]:retain'ed block property does not copy the block [2]:- use copy attribute instead |
Warning | warn_objc_readonly_property_has_setter | setter cannot be specified for a readonly property |
Warning | warn_atomic_property_rule | [1]:writable atomic property %0 cannot pair a synthesized %select{getter|setter}1 [2]:with a user defined %select{getter|setter}2 |
Note | note_atomic_property_fixup_suggest | [1]:setter and getter must both be [2]:synthesized, or both be user defined,or the property must be nonatomic |
Error | err_atomic_property_nontrivial_assign_op | [1]:atomic property of reference type %0 cannot have non-trivial assignment [2]: operator |
Warning | warn_cocoa_naming_owned_rule | [1]:property follows Cocoa naming [2]: convention for returning 'owned' objects |
Error | err_cocoa_naming_owned_rule | [1]:property follows Cocoa naming [2]: convention for returning 'owned' objects |
Note | note_cocoa_naming_declare_family | [1]:explicitly declare getter %objcinstance0 with '%1' to return an 'unowned' [2]:object |
Warning | warn_auto_synthesizing_protocol_property | [1]:auto property synthesis will not synthesize property %0 [2]: declared in protocol %1 |
Warning | warn_no_autosynthesis_shared_ivar_property | [1]:auto property synthesis will not synthesize property [2]:%0 because it cannot share an ivar with another synthesized property |
Warning | warn_no_autosynthesis_property | [1]:auto property synthesis will not synthesize property [2]:[1]:%0 because it is 'readwrite' but it will be synthesized 'readonly' [2]:via another property |
Warning | warn_autosynthesis_property_in_superclass | [1]:auto property synthesis will not synthesize property [2]:[1]:%0; it will be implemented by its superclass, use @dynamic to [2]:acknowledge intention |
Warning | warn_autosynthesis_property_ivar_match | [1]:autosynthesized property %0 will use %select{|synthesized}1 instance variable [2]:%2, not existing instance variable %3 |
Warning | warn_missing_explicit_synthesis | auto property synthesis is synthesizing property not explicitly synthesized |
Warning | warn_property_getter_owning_mismatch | [1]:property declared as returning non-retained objects [2]:; getter returning retained objects |
Warning | warn_property_redecl_getter_mismatch | [1]:getter name mismatch between property redeclaration (%1) and its original [2]:declaration (%0) |
Error | error_property_setter_ambiguous_use | [1]:synthesized properties %0 and %1 both claim setter %2 - [2]: use of this setter will cause unexpected behavior |
Warning | warn_default_atomic_custom_getter_setter | [1]:atomic by default property %0 has a user defined %select{getter|setter}1 [2]:(property should be marked 'atomic' if this is intended) |
Error | err_use_continuation_class | [1]:illegal redeclaration of property in class extension %0 [2]: (attribute must be 'readwrite', while its primary must be 'readonly') |
Error | err_type_mismatch_continuation_class | [1]:type of property %0 in class extension does not match [2]:property type in primary class |
Error | err_use_continuation_class_redeclaration_readwrite | [1]:illegal redeclaration of 'readwrite' property in class extension %0 [2]:[1]: (perhaps you intended this to be a 'readwrite' redeclaration of a [2]:'readonly' public property?) |
Error | err_continuation_class | class extension has no primary class |
Error | err_property_type | property cannot have array or function type %0 |
Error | error_missing_property_context | missing context for property implementation declaration |
Error | error_bad_property_decl | [1]:property implementation must have its declaration in interface %0 or one of [2]:its extensions |
Error | error_category_property | [1]:property declared in category %0 cannot be implemented in [2]:class implementation |
Note | note_property_declare | property declared here |
Note | note_protocol_property_declare | it could also be property of type %0 declared here |
Note | note_property_synthesize | property synthesized here |
Error | error_synthesize_category_decl | @synthesize not allowed in a category's implementation |
Error | error_synthesize_on_class_property | @synthesize not allowed on a class property %0 |
Error | error_reference_property | property of reference type is not supported |
Error | error_missing_property_interface | property implementation in a category with no category declaration |
Error | error_bad_category_property_decl | property implementation must have its declaration in the category %0 |
Error | error_bad_property_context | property implementation must be in a class or category implementation |
Error | error_missing_property_ivar_decl | [1]:synthesized property %0 must either be named the same as a compatible [2]: instance variable or must explicitly name an instance variable |
Error | err_arc_perform_selector_retains | performSelector names a selector which retains the object |
Warning | warn_arc_perform_selector_leaks | performSelector may cause a leak because its selector is unknown |
Warning | warn_dealloc_in_category | -dealloc is being overridden in a category |
Error | err_gc_weak_property_strong_type | weak attribute declared on a __strong type property in GC mode |
Warning | warn_arc_repeated_use_of_weak | [1]:weak %select{variable|property|implicit property|instance variable}0 %1 is [2]:[1]:accessed multiple times in this %select{function|method|block|lambda}2 [2]:[1]:but may be unpredictably set to nil; assign to a strong variable to keep [2]:the object alive |
Warning | warn_implicitly_retains_self | [1]:block implicitly retains 'self'; explicitly mention 'self' to indicate [2]:this is intended behavior |
Warning | warn_arc_possible_repeated_use_of_weak | [1]:weak %select{variable|property|implicit property|instance variable}0 %1 may [2]:[1]:be accessed multiple times in this %select{function|method|block|lambda}2 [2]:[1]:and may be unpredictably set to nil; assign to a strong variable to keep [2]:the object alive |
Note | note_arc_weak_also_accessed_here | also accessed here |
Error | err_incomplete_synthesized_property | cannot synthesize property %0 with incomplete type %1 |
Error | error_property_ivar_type | type of property %0 (%1) does not match type of instance variable %2 (%3) |
Error | error_property_accessor_type | type of property %0 (%1) does not match type of accessor %2 (%3) |
Error | error_ivar_in_superclass_use | property %0 attempting to use instance variable %1 declared in super class %2 |
Error | error_weak_property | existing instance variable %1 for __weak property %0 must be __weak |
Error | error_strong_property | existing instance variable %1 for strong property %0 may not be __weak |
Error | error_dynamic_property_ivar_decl | dynamic property cannot have instance variable specification |
Error | error_duplicate_ivar_use | synthesized properties %0 and %1 both claim instance variable %2 |
Error | error_property_implemented | property %0 is already implemented |
Warning | warn_objc_missing_super_call | method possibly missing a [super %0] call |
Error | error_dealloc_bad_result_type | [1]:dealloc return type must be correctly specified as 'void' under ARC, [2]:instead of %0 |
Warning | warn_undeclared_selector | undeclared selector %0 |
Warning | warn_undeclared_selector_with_typo | undeclared selector %0; did you mean %1? |
Warning | warn_implicit_atomic_property | property is assumed atomic by default |
Note | note_auto_readonly_iboutlet_fixup_suggest | property should be changed to be readwrite |
Warning | warn_auto_readonly_iboutlet_property | [1]:readonly IBOutlet property %0 when auto-synthesized may [2]:not work correctly with 'nib' loader |
Warning | warn_auto_implicit_atomic_property | property is assumed atomic when auto-synthesizing the property |
Warning | warn_unimplemented_selector | no method with selector %0 is implemented in this translation unit |
Warning | warn_unimplemented_protocol_method | method %0 in protocol %1 not implemented |
Warning | warning_multiple_selectors | [1]:several methods with selector %0 of mismatched types are found [2]:for the @selector expression |
Error | err_objc_kindof_nonobject | '__kindof' specifier cannot be applied to non-object type %0 |
Error | err_objc_kindof_wrong_position | '__kindof' type specifier must precede the declarator |
Error | err_static_assert_expression_is_not_constant | static_assert expression is not an integral constant expression |
Error | err_static_assert_failed | static_assert failed%select{ %1|}0 |
ExtWarn | ext_static_assert_no_message | static_assert with no message is a C++1z extension |
Warning | warn_cxx14_compat_static_assert_no_message | static_assert with no message is incompatible with C++ standards before C++1z |
Warning | warn_inline_namespace_reopened_noninline | inline namespace cannot be reopened as a non-inline namespace |
Error | err_inline_namespace_mismatch | [1]:%select{|non-}0inline namespace [2]:cannot be reopened as %select{non-|}0inline |
Error | err_unexpected_friend | friends can only be classes or functions |
ExtWarn | ext_enum_friend | befriending enumeration type %0 is a C++11 extension |
Warning | warn_cxx98_compat_enum_friend | befriending enumeration type %0 is incompatible with C++98 |
ExtWarn | ext_nonclass_type_friend | non-class friend type %0 is a C++11 extension |
Warning | warn_cxx98_compat_nonclass_type_friend | non-class friend type %0 is incompatible with C++98 |
Error | err_friend_is_member | friends cannot be members of the declaring class |
Warning | warn_cxx98_compat_friend_is_member | [1]:friend declaration naming a member of the declaring class is incompatible [2]:with C++98 |
ExtWarn | ext_unelaborated_friend_type | [1]:unelaborated friend declaration is a C++11 extension; specify [2]:'%select{struct|interface|union|class|enum}0' to befriend %1 |
Warning | warn_cxx98_compat_unelaborated_friend_type | [1]:befriending %1 without '%select{struct|interface|union|class|enum}0' [2]:keyword is incompatible with C++98 |
Error | err_qualified_friend_not_found | no function named %0 with type %1 was found in the specified scope |
Error | err_introducing_special_friend | [1]:must use a qualified name when declaring a %select{constructor| [2]:destructor|conversion operator}0 as a friend |
Error | err_tagless_friend_type_template | friend type templates must use an elaborated type |
Error | err_no_matching_local_friend | no matching function found in local scope |
Error | err_no_matching_local_friend_suggest | no matching function %0 found in local scope; did you mean %3? |
Error | err_partial_specialization_friend | partial specialization cannot be declared as a friend |
Error | err_qualified_friend_def | friend function definition cannot be qualified with '%0' |
Error | err_friend_def_in_local_class | friend function cannot be defined in a local class |
Error | err_friend_not_first_in_declaration | 'friend' must appear first in a non-function declaration |
Error | err_using_decl_friend | cannot befriend target of using declaration |
Warning | warn_template_qualified_friend_unsupported | [1]:dependent nested name specifier '%0' for friend class declaration is [2]:not supported; turning off access control for %1 |
Warning | warn_template_qualified_friend_ignored | [1]:dependent nested name specifier '%0' for friend template declaration is [2]:not supported; ignoring this friend declaration |
ExtWarn | ext_friend_tag_redecl_outside_namespace | [1]:unqualified friend declaration referring to type outside of the nearest [2]:enclosing namespace is a Microsoft extension; add a nested name specifier |
Error | err_pure_friend | friend declaration cannot have a pure-specifier |
Error | err_invalid_member_in_interface | [1]:%select{data member |non-public member function |static member function | [2]:[1]:user-declared constructor|user-declared destructor|operator | [2]:nested class }0%1 is not permitted within an interface type |
Error | err_invalid_base_in_interface | [1]:interface type cannot inherit from [2]:%select{'struct|non-public 'interface|'class}0 %1' |
Error | err_abstract_type_in_decl | [1]:%select{return|parameter|variable|field|instance variable| [2]:synthesized instance variable}0 type %1 is an abstract class |
Error | err_allocation_of_abstract_type | allocating an object of abstract class type %0 |
Error | err_throw_abstract_type | cannot throw an object of abstract type %0 |
Error | err_array_of_abstract_type | array of abstract class type %0 |
Error | err_capture_of_abstract_type | by-copy capture of value of abstract type %0 |
Error | err_capture_of_incomplete_type | by-copy capture of variable %0 with incomplete type %1 |
Error | err_capture_default_non_local | non-local lambda expression cannot have a capture-default |
Error | err_multiple_final_overriders | virtual function %q0 has more than one final overrider in %1 |
Note | note_final_overrider | final overrider of %q0 in %1 |
Error | err_type_defined_in_type_specifier | %0 cannot be defined in a type specifier |
Error | err_type_defined_in_result_type | %0 cannot be defined in the result type of a function |
Error | err_type_defined_in_param_type | %0 cannot be defined in a parameter type |
Error | err_type_defined_in_alias_template | %0 cannot be defined in a type alias template |
Error | err_type_defined_in_condition | %0 cannot be defined in a condition |
Note | note_pure_virtual_function | unimplemented pure virtual method %0 in %1 |
Note | note_pure_qualified_call_kext | qualified call to %0::%1 is treated as a virtual call to %1 due to -fapple-kext |
Error | err_deleted_decl_not_first | deleted definition must be first declaration |
Error | err_deleted_override | deleted function %0 cannot override a non-deleted function |
Error | err_non_deleted_override | non-deleted function %0 cannot override a deleted function |
Warning | warn_weak_vtable | [1]:%0 has no out-of-line virtual method definitions; its vtable will be [2]:emitted in every translation unit |
Warning | warn_weak_template_vtable | [1]:explicit template instantiation %0 will emit a vtable in every [2]:translation unit |
ExtWarn | ext_using_undefined_std | using directive refers to implicitly-defined namespace 'std' |
Error | err_exception_spec_in_typedef | exception specifications are not allowed in %select{typedefs|type aliases}0 |
Error | err_distant_exception_spec | [1]:exception specifications are not allowed beyond a single level [2]:of indirection |
Error | err_incomplete_in_exception_spec | [1]:%select{|pointer to |reference to }0incomplete type %1 is not allowed [2]:in exception specification |
Error | err_rref_in_exception_spec | rvalue reference type %0 is not allowed in exception specification |
Error | err_mismatched_exception_spec | exception specification in declaration does not match previous declaration |
ExtWarn | ext_mismatched_exception_spec | err_mismatched_exception_spec.Text |
Error | err_override_exception_spec | [1]:exception specification of overriding function is more lax than [2]:base version |
ExtWarn | ext_override_exception_spec | err_override_exception_spec.Text |
Error | err_incompatible_exception_specs | target exception specification is not superset of source |
Error | err_deep_exception_specs_differ | exception specifications of %select{return|argument}0 types differ |
Error | err_missing_exception_specification | %0 is missing exception specification '%1' |
ExtWarn | ext_missing_exception_specification | err_missing_exception_specification.Text |
ExtWarn | ext_ms_missing_exception_specification | err_missing_exception_specification.Text |
Error | err_noexcept_needs_constant_expression | argument to noexcept specifier must be a constant expression |
Error | err_exception_spec_not_parsed | exception specification is not available until end of class definition |
Error | err_class_redeclared_with_different_access | %0 redeclared with '%1' access |
Error | err_access | %1 is a %select{private|protected}0 member of %3 |
ExtWarn | ext_ms_using_declaration_inaccessible | [1]:using declaration referring to inaccessible member '%0' (which refers [2]:to accessible member '%1') is a Microsoft compatibility extension |
Error | err_access_ctor | calling a %select{private|protected}0 constructor of class %2 |
Extension | ext_rvalue_to_reference_access_ctor | [1]:C++98 requires an accessible copy constructor for class %2 when binding [2]:a reference to a temporary; was %select{private|protected}0 |
Error | err_access_base_ctor | [1]:%select{base class|inherited virtual base class}0 %1 has %select{private| [2]:[1]:protected}3 %select{default |copy |move |*ERROR* |*ERROR* [2]:|*ERROR*|}2constructor |
Error | err_access_field_ctor | [1]:field of type %0 has %select{private|protected}2 [2]:%select{default |copy |move |*ERROR* |*ERROR* |*ERROR* |}1constructor |
Error | err_access_friend_function | friend function %1 is a %select{private|protected}0 member of %3 |
Error | err_access_dtor | calling a %select{private|protected}1 destructor of class %0 |
Error | err_access_dtor_base | base class %0 has %select{private|protected}1 destructor |
Error | err_access_dtor_vbase | [1]:inherited virtual base class %1 has [2]:%select{private|protected}2 destructor |
Error | err_access_dtor_temp | temporary of type %0 has %select{private|protected}1 destructor |
Error | err_access_dtor_exception | [1]:exception object of type %0 has %select{private|protected}1 [2]:destructor |
Error | err_access_dtor_field | field of type %1 has %select{private|protected}2 destructor |
Error | err_access_dtor_var | variable of type %1 has %select{private|protected}2 destructor |
Error | err_access_dtor_ivar | [1]:instance variable of type %0 has %select{private|protected}1 [2]:destructor |
Note | note_previous_access_declaration | previously declared '%1' here |
Note | note_access_natural | %select{|implicitly }1declared %select{private|protected}0 here |
Note | note_access_constrained_by_path | [1]:constrained by %select{|implicitly }1%select{private|protected}0 [2]: inheritance here |
Note | note_access_protected_restricted_noobject | must name member using the type of the current context %0 |
Note | note_access_protected_restricted_ctordtor | [1]:protected %select{constructor|destructor}0 can only be used to [2]:%select{construct|destroy}0 a base class subobject |
Note | note_access_protected_restricted_object | can only access this member on an object of type %0 |
Warning | warn_cxx98_compat_sfinae_access_control | substitution failure due to access control is incompatible with C++98 |
Error | err_incomplete_nested_name_spec | incomplete type %0 named in nested name specifier |
Error | err_dependent_nested_name_spec | [1]:nested name specifier for a declaration cannot depend on a template [2]:parameter |
Error | err_nested_name_member_ref_lookup_ambiguous | lookup of %0 in member access expression is ambiguous |
ExtWarn | ext_nested_name_member_ref_lookup_ambiguous | lookup of %0 in member access expression is ambiguous; using member of %1 |
Note | note_ambig_member_ref_object_type | lookup in the object type %0 refers here |
Note | note_ambig_member_ref_scope | lookup from the current scope refers here |
Error | err_qualified_member_nonclass | qualified member access refers to a member in %0 |
Error | err_incomplete_member_access | member access into incomplete type %0 |
Error | err_incomplete_type | incomplete type %0 where a complete type is required |
Warning | warn_cxx98_compat_enum_nested_name_spec | enumeration type in nested name specifier is incompatible with C++98 |
Error | err_nested_name_spec_is_not_class | [1]:%0 cannot appear before '::' because it is not a class [2]:%select{ or namespace|, namespace, or enumeration}1; did you mean ':'? |
ExtWarn | ext_nested_name_spec_is_enum | use of enumeration in a nested name specifier is a C++11 extension |
Error | err_storageclass_invalid_for_member | storage class specified for a member declaration |
Error | err_mutable_function | 'mutable' cannot be applied to functions |
Error | err_mutable_reference | 'mutable' cannot be applied to references |
ExtWarn | ext_mutable_reference | 'mutable' on a reference type is a Microsoft extension |
Error | err_mutable_const | 'mutable' and 'const' cannot be mixed |
Error | err_mutable_nonmember | 'mutable' can only be applied to member variables |
Error | err_virtual_in_union | unions cannot have virtual functions |
Error | err_virtual_non_function | 'virtual' can only appear on non-static member functions |
Error | err_virtual_out_of_class | 'virtual' can only be specified inside the class definition |
Error | err_virtual_member_function_template | 'virtual' cannot be specified on member function templates |
Error | err_static_overrides_virtual | 'static' member function %0 overrides a virtual function in a base class |
Error | err_explicit_non_function | 'explicit' can only appear on non-static member functions |
Error | err_explicit_out_of_class | 'explicit' can only be specified inside the class definition |
Error | err_explicit_non_ctor_or_conv_function | 'explicit' can only be applied to a constructor or conversion function |
Error | err_static_not_bitfield | static member %0 cannot be a bit-field |
Error | err_static_out_of_line | 'static' can only be specified inside the class definition |
Error | err_storage_class_for_static_member | static data member definition cannot specify a storage class |
Error | err_typedef_not_bitfield | typedef member %0 cannot be a bit-field |
Error | err_not_integral_type_bitfield | bit-field %0 has non-integral type %1 |
Error | err_not_integral_type_anon_bitfield | anonymous bit-field has non-integral type %0 |
Error | err_member_function_initialization | initializer on function does not look like a pure-specifier |
Error | err_non_virtual_pure | %0 is not virtual and cannot be declared pure |
ExtWarn | ext_pure_function_definition | function definition with pure-specifier is a Microsoft extension |
Error | err_implicit_object_parameter_init | [1]:cannot initialize object parameter of type %0 with an expression [2]:of type %1 |
Error | err_qualified_member_of_unrelated | %q0 is not a member of class %1 |
Warning | warn_call_to_pure_virtual_member_function_from_ctor_dtor | [1]:call to pure virtual member function %0 has undefined behavior; [2]:[1]:overrides of %0 in subclasses are not available in the [2]:%select{constructor|destructor}1 of %2 |
Note | note_member_declared_at | member is declared here |
Note | note_ivar_decl | instance variable is declared here |
Note | note_bitfield_decl | bit-field is declared here |
Note | note_implicit_param_decl | %0 is an implicit parameter |
Note | note_member_synthesized_at | [1]:implicit %select{default constructor|copy constructor|move constructor|copy [2]:[1]:assignment operator|move assignment operator|destructor}0 for %1 first [2]:required here |
Note | note_inhctor_synthesized_at | inheriting constructor for %0 first required here |
Error | err_missing_default_ctor | [1]:%select{|implicit default |inheriting }0constructor for %1 must explicitly [2]:[1]:initialize the %select{base class|member}2 %3 which does not have a default [2]:constructor |
Note | note_due_to_dllexported_class | due to '%0' being dllexported%select{|; try compiling in C++11 mode}1 |
Error | err_illegal_union_or_anon_struct_member | [1]:%select{anonymous struct|union}0 member %1 has a non-trivial [2]:[1]:%select{constructor|copy constructor|move constructor|copy assignment [2]:operator|move assignment operator|destructor}2 |
Warning | warn_cxx98_compat_nontrivial_union_or_anon_struct_member | [1]:%select{anonymous struct|union}0 member %1 with a non-trivial [2]:[1]:%select{constructor|copy constructor|move constructor|copy assignment [2]:operator|move assignment operator|destructor}2 is incompatible with C++98 |
Note | note_nontrivial_virtual_dtor | destructor for %0 is not trivial because it is virtual |
Note | note_nontrivial_has_virtual | because type %0 has a virtual %select{member function|base class}1 |
Note | note_nontrivial_no_def_ctor | [1]:because %select{base class of |field of |}0type %1 has no [2]:default constructor |
Note | note_user_declared_ctor | implicit default constructor suppressed by user-declared constructor |
Note | note_nontrivial_no_copy | [1]:because no %select{<>|constructor|constructor|assignment operator| [2]:[1]:assignment operator|<>}2 can be used to [2]:[1]:%select{<>|copy|move|copy|move|<>}2 [2]:%select{base class|field|an object}0 of type %3 |
Note | note_nontrivial_user_provided | [1]:because %select{base class of |field of |}0type %1 has a user-provided [2]:[1]:%select{default constructor|copy constructor|move constructor| [2]:copy assignment operator|move assignment operator|destructor}2 |
Note | note_nontrivial_in_class_init | because field %0 has an initializer |
Note | note_nontrivial_param_type | because its parameter is %diff{of type $, not $|of the wrong type}2,3 |
Note | note_nontrivial_default_arg | because it has a default argument |
Note | note_nontrivial_variadic | because it is a variadic function |
Note | note_nontrivial_subobject | [1]:because the function selected to %select{construct|copy|move|copy|move| [2]:destroy}2 %select{base class|field}0 of type %1 is not trivial |
Note | note_nontrivial_objc_ownership | [1]:because type %0 has a member with %select{no|no|__strong|__weak| [2]:__autoreleasing}1 ownership |
Error | err_static_data_member_not_allowed_in_anon_struct | static data member %0 not allowed in anonymous struct |
ExtWarn | ext_static_data_member_in_union | static data member %0 in union is a C++11 extension |
Warning | warn_cxx98_compat_static_data_member_in_union | static data member %0 in union is incompatible with C++98 |
ExtWarn | ext_union_member_of_reference_type | union member %0 has reference type %1, which is a Microsoft extension |
Error | err_union_member_of_reference_type | union member %0 has reference type %1 |
Extension | ext_anonymous_struct_union_qualified | anonymous %select{struct|union}0 cannot be '%1' |
Error | err_different_return_type_for_overriding_virtual_function | [1]:virtual function %0 has a different return type [2]:[1]:%diff{($) than the function it overrides (which has return type $)| [2]:than the function it overrides}1,2 |
Note | note_overridden_virtual_function | overridden virtual function is here |
Error | err_conflicting_overriding_cc_attributes | [1]:virtual function %0 has different calling convention attributes [2]:[1]:%diff{($) than the function it overrides (which has calling convention $)| [2]:than the function it overrides}1,2 |
Error | err_covariant_return_inaccessible_base | [1]:invalid covariant return for virtual function: %1 is a [2]:%select{private|protected}2 base class of %0 |
Error | err_covariant_return_ambiguous_derived_to_base_conv | [1]:return type of virtual function %3 is not covariant with the return type of [2]:[1]:the function it overrides (ambiguous conversion from derived class [2]:%0 to base class %1:%2) |
Error | err_covariant_return_not_derived | [1]:return type of virtual function %0 is not covariant with the return type of [2]:the function it overrides (%1 is not derived from %2) |
Error | err_covariant_return_incomplete | [1]:return type of virtual function %0 is not covariant with the return type of [2]:the function it overrides (%1 is incomplete) |
Error | err_covariant_return_type_different_qualifications | [1]:return type of virtual function %0 is not covariant with the return type of [2]:the function it overrides (%1 has different qualifiers than %2) |
Error | err_covariant_return_type_class_type_more_qualified | [1]:return type of virtual function %0 is not covariant with the return type of [2]:[1]:the function it overrides (class type %1 is more qualified than class [2]:type %2 |
Error | err_constructor_cannot_be | constructor cannot be declared '%0' |
Error | err_invalid_qualified_constructor | '%0' qualifier is not allowed on a constructor |
Error | err_ref_qualifier_constructor | ref-qualifier '%select{&&|&}0' is not allowed on a constructor |
Error | err_constructor_return_type | constructor cannot have a return type |
Error | err_constructor_redeclared | constructor cannot be redeclared |
Error | err_constructor_byvalue_arg | copy constructor must pass its first argument by reference |
Warning | warn_no_constructor_for_refconst | [1]:%select{struct|interface|union|class|enum}0 %1 does not declare any [2]:constructor to initialize its non-modifiable members |
Note | note_refconst_member_not_initialized | %select{const|reference}0 member %1 will never be initialized |
ExtWarn | ext_ms_explicit_constructor_call | explicit constructor calls are a Microsoft extension |
Error | err_destructor_not_member | destructor must be a non-static member function |
Error | err_destructor_cannot_be | destructor cannot be declared '%0' |
Error | err_invalid_qualified_destructor | '%0' qualifier is not allowed on a destructor |
Error | err_ref_qualifier_destructor | ref-qualifier '%select{&&|&}0' is not allowed on a destructor |
Error | err_destructor_return_type | destructor cannot have a return type |
Error | err_destructor_redeclared | destructor cannot be redeclared |
Error | err_destructor_with_params | destructor cannot have any parameters |
Error | err_destructor_variadic | destructor cannot be variadic |
Error | err_destructor_typedef_name | destructor cannot be declared using a %select{typedef|type alias}1 %0 of the class name |
Error | err_destructor_name | expected the class name after '~' to name the enclosing class |
Error | err_destructor_class_name | expected the class name after '~' to name a destructor |
Error | err_ident_in_dtor_not_a_type | identifier %0 in object destruction expression does not name a type |
Error | err_destructor_expr_type_mismatch | [1]:destructor type %0 in object destruction expression does not match the [2]:type %1 of the object being destroyed |
Note | note_destructor_type_here | type %0 is declared here |
Error | err_destructor_template | destructor cannot be declared as a template |
Error | err_init_conversion_failed | [1]:cannot initialize %select{a variable|a parameter|return object|an [2]:[1]:exception object|a member subobject|an array element|a new value|a value|a [2]:[1]:base class|a constructor delegation|a vector element|a block element|a [2]:[1]:complex element|a lambda capture|a compound literal initializer|a [2]:[1]:related result|a parameter of CF audited function}0 [2]:[1]:%diff{of type $ with an %select{rvalue|lvalue}2 of type $| [2]:[1]:with an %select{rvalue|lvalue}2 of incompatible type}1,3 [2]:[1]:%select{|: different classes%diff{ ($ vs $)|}5,6 [2]:[1]:|: different number of parameters (%5 vs %6) [2]:[1]:|: type mismatch at %ordinal5 parameter%diff{ ($ vs $)|}6,7 [2]:[1]:|: different return type%diff{ ($ vs $)|}5,6 [2]:[1]:|: different qualifiers ( [2]:[1]:%select{none|const|restrict|const and restrict|volatile|const and volatile| [2]:[1]:volatile and restrict|const, volatile, and restrict}5 vs [2]:[1]:%select{none|const|restrict|const and restrict|volatile|const and volatile| [2]:volatile and restrict|const, volatile, and restrict}6)}4 |
Error | err_lvalue_to_rvalue_ref | [1]:rvalue reference %diff{to type $ cannot [2]:bind to lvalue of type $|cannot bind to incompatible lvalue}0,1 |
Error | err_lvalue_reference_bind_to_initlist | [1]:%select{non-const|volatile}0 lvalue reference to type %1 cannot bind to an [2]:initializer list temporary |
Error | err_lvalue_reference_bind_to_temporary | [1]:%select{non-const|volatile}0 lvalue reference %diff{to type $ cannot bind [2]:to a temporary of type $|cannot bind to incompatible temporary}1,2 |
Error | err_lvalue_reference_bind_to_unrelated | [1]:%select{non-const|volatile}0 lvalue reference [2]:[1]:%diff{to type $ cannot bind to a value of unrelated type $| [2]:cannot bind to a value of unrelated type}1,2 |
Error | err_reference_bind_drops_quals | [1]:binding value %diff{of type $ to reference to type $|to reference}0,1 [2]:[1]:drops %select{<>|'const'|'restrict'|'const' and 'restrict'| [2]:[1]:'volatile'|'const' and 'volatile'|'restrict' and 'volatile'| [2]:'const', 'restrict', and 'volatile'}2 qualifier%plural{1:|2:|4:|:s}2 |
Error | err_reference_bind_failed | [1]:reference %diff{to type $ could not bind to an %select{rvalue|lvalue}1 of [2]:type $|could not bind to %select{rvalue|lvalue}1 of incompatible type}0,2 |
Error | err_reference_bind_init_list | reference to type %0 cannot bind to an initializer list |
Warning | warn_temporary_array_to_pointer_decay | [1]:pointer is initialized by a temporary array, which will be destroyed at the [2]:end of the full-expression |
Error | err_init_list_bad_dest_type | [1]:%select{|non-aggregate }0type %1 cannot be initialized with an initializer [2]:list |
Error | err_member_function_call_bad_cvr | [1]:member function %0 not viable: [2]:[1]:'this' argument has type %1, but function is not marked [2]:[1]:%select{const|restrict|const or restrict|volatile|const or volatile| [2]:volatile or restrict|const, volatile, or restrict}2 |
Error | err_reference_bind_to_bitfield | [1]:%select{non-const|volatile}0 reference cannot bind to [2]:bit-field%select{| %1}2 |
Error | err_reference_bind_to_vector_element | %select{non-const|volatile}0 reference cannot bind to vector element |
Error | err_reference_var_requires_init | declaration of reference variable %0 requires an initializer |
Error | err_reference_without_init | reference to type %0 requires an initializer |
Note | note_value_initialization_here | in value-initialization of type %0 here |
Error | err_reference_has_multiple_inits | reference cannot be initialized with multiple values |
Error | err_init_non_aggr_init_list | initialization of non-aggregate type %0 with an initializer list |
Error | err_init_reference_member_uninitialized | reference member of type %0 uninitialized |
Note | note_uninit_reference_member | uninitialized reference member is here |
Warning | warn_field_is_uninit | field %0 is uninitialized when used here |
Warning | warn_base_class_is_uninit | base class %0 is uninitialized when used here to access %q1 |
Warning | warn_reference_field_is_uninit | reference %0 is not yet bound to a value when used here |
Note | note_uninit_in_this_constructor | [1]:during field initialization in %select{this|the implicit default}0 [2]:constructor |
Warning | warn_static_self_reference_in_init | static variable %0 is suspiciously used within its own initialization |
Warning | warn_uninit_self_reference_in_init | variable %0 is uninitialized when used within its own initialization |
Warning | warn_uninit_self_reference_in_reference_init | [1]:reference %0 is not yet bound to a value when used within its own [2]: initialization |
Warning | warn_uninit_var | variable %0 is uninitialized when %select{used here|captured by block}1 |
Warning | warn_sometimes_uninit_var | [1]:variable %0 is %select{used|captured}1 uninitialized whenever [2]:[1]:%select{'%3' condition is %select{true|false}4| [2]:[1]:'%3' loop %select{is entered|exits because its condition is false}4| [2]:[1]:'%3' loop %select{condition is true|exits because its condition is false}4| [2]:[1]:switch %3 is taken| [2]:[1]:its declaration is reached| [2]:%3 is called}2 |
Warning | warn_maybe_uninit_var | [1]:variable %0 may be uninitialized when [2]:%select{used here|captured by block}1 |
Note | note_uninit_var_def | variable %0 is declared here |
Note | note_uninit_var_use | %select{uninitialized use occurs|variable is captured by block}0 here |
Warning | warn_uninit_byref_blockvar_captured_by_block | block pointer variable %0 is uninitialized when captured by block |
Note | note_block_var_fixit_add_initialization | did you mean to use __block %0? |
Note | note_in_omitted_aggregate_initializer | [1]:in implicit initialization of %select{array element %1|field %1}0 [2]:with omitted initializer |
Note | note_in_reference_temporary_list_initializer | [1]:in initialization of temporary of type %0 created to [2]:list-initialize this reference |
Note | note_var_fixit_add_initialization | initialize the variable %0 to silence this warning |
Note | note_uninit_fixit_remove_cond | [1]:remove the %select{'%1' if its condition|condition if it}0 [2]:is always %select{false|true}2 |
Error | err_init_incomplete_type | initialization of incomplete type %0 |
Warning | warn_unsequenced_mod_mod | multiple unsequenced modifications to %0 |
Warning | warn_unsequenced_mod_use | unsequenced modification and access to %0 |
Error | err_temp_copy_no_viable | [1]:no viable constructor %select{copying variable|copying parameter| [2]:[1]:returning object|throwing object|copying member subobject|copying array [2]:[1]:element|allocating object|copying temporary|initializing base subobject| [2]:initializing vector element|capturing value}0 of type %1 |
Extension | ext_rvalue_to_reference_temp_copy_no_viable | [1]:no viable constructor %select{copying variable|copying parameter| [2]:[1]:returning object|throwing object|copying member subobject|copying array [2]:[1]:element|allocating object|copying temporary|initializing base subobject| [2]:[1]:initializing vector element|capturing value}0 of type %1; C++98 requires a copy [2]:constructor when binding a reference to a temporary |
Error | err_temp_copy_ambiguous | [1]:ambiguous constructor call when %select{copying variable|copying [2]:[1]:parameter|returning object|throwing object|copying member subobject|copying [2]:[1]:array element|allocating object|copying temporary|initializing base subobject| [2]:initializing vector element|capturing value}0 of type %1 |
Error | err_temp_copy_deleted | [1]:%select{copying variable|copying parameter|returning object|throwing [2]:[1]:object|copying member subobject|copying array element|allocating object| [2]:[1]:copying temporary|initializing base subobject|initializing vector element| [2]:capturing value}0 of type %1 invokes deleted constructor |
Error | err_temp_copy_incomplete | copying a temporary object of incomplete type %0 |
Warning | warn_cxx98_compat_temp_copy | [1]:%select{copying variable|copying parameter|returning object|throwing [2]:[1]:object|copying member subobject|copying array element|allocating object| [2]:[1]:copying temporary|initializing base subobject|initializing vector element}1 [2]:[1]:of type %2 when binding a reference to a temporary would %select{invoke [2]:[1]:an inaccessible constructor|find no viable constructor|find ambiguous [2]:constructors|invoke a deleted constructor}0 in C++98 |
Error | err_selected_explicit_constructor | chosen constructor is explicit in copy-initialization |
Note | note_constructor_declared_here | constructor declared here |
Error | err_decltype_in_declarator | 'decltype' cannot be used to name a declaration |
Warning | warn_cxx98_compat_auto_type_specifier | 'auto' type specifier is incompatible with C++98 |
Error | err_auto_variable_cannot_appear_in_own_initializer | [1]:variable %0 declared with %select{'auto'|'decltype(auto)'|'__auto_type'}1 [2]:type cannot appear in its own initializer |
Error | err_illegal_decl_array_of_auto | '%0' declared as array of %1 |
Error | err_new_array_of_auto | cannot allocate array of 'auto' |
Error | err_auto_not_allowed | [1]:%select{'auto'|'decltype(auto)'|'__auto_type'}0 not allowed [2]:[1]:%select{in function prototype [2]:[1]:|in non-static struct member|in struct member [2]:[1]:|in non-static union member|in union member [2]:[1]:|in non-static class member|in interface member [2]:[1]:|in exception declaration|in template parameter|in block literal [2]:[1]:|in template argument|in typedef|in type alias|in function return type [2]:[1]:|in conversion function type|here|in lambda parameter [2]:|in type allocated by 'new'|in K&R-style function parameter}1 |
Error | err_auto_not_allowed_var_inst | 'auto' variable template instantiation is not allowed |
Error | err_auto_var_requires_init | declaration of variable %0 with type %1 requires an initializer |
Error | err_auto_new_requires_ctor_arg | new expression for type %0 requires a constructor argument |
Error | err_auto_new_list_init | new expression for type %0 cannot use list-initialization |
Error | err_auto_var_init_no_expression | initializer for variable %0 with type %1 is empty |
Error | err_auto_var_init_multiple_expressions | initializer for variable %0 with type %1 contains multiple expressions |
Error | err_auto_var_init_paren_braces | [1]:cannot deduce type for variable %1 with type %2 from [2]:%select{parenthesized|nested}0 initializer list |
Error | err_auto_new_ctor_multiple_expressions | new expression for type %0 contains multiple constructor arguments |
Error | err_auto_missing_trailing_return | [1]:'auto' return without trailing return type; deduced return types are a [2]:C++14 extension |
Error | err_deduced_return_type | deduced return types are a C++14 extension |
Error | err_trailing_return_without_auto | function with trailing return type must specify return type 'auto', not %0 |
Error | err_trailing_return_in_parens | trailing return type may not be nested within parentheses |
Error | err_auto_var_deduction_failure | variable %0 with type %1 has incompatible initializer of type %2 |
Error | err_auto_var_deduction_failure_from_init_list | cannot deduce actual type for variable %0 with type %1 from initializer list |
Error | err_auto_new_deduction_failure | new expression for type %0 has incompatible constructor argument of type %1 |
Error | err_auto_different_deductions | [1]:'%select{auto|decltype(auto)|__auto_type}0' deduced as %1 in declaration [2]:of %2 and deduced as %3 in declaration of %4 |
Error | err_implied_std_initializer_list_not_found | [1]:cannot deduce type of initializer list because std::initializer_list was [2]:not found; include |
Error | err_malformed_std_initializer_list | std::initializer_list must be a class template with a single type parameter |
Warning | warn_dangling_std_initializer_list | [1]:array backing the initializer list will be destroyed at the end of [2]:%select{the full-expression|the constructor}0 |
Error | err_auto_init_list_from_c | cannot use __auto_type with initializer list in C |
Error | err_auto_bitfield | cannot pass bit-field as __auto_type initializer in C |
Error | err_decltype_auto_cannot_be_combined | 'decltype(auto)' cannot be combined with other type specifiers |
Error | err_decltype_auto_function_declarator_not_declaration | [1]:'decltype(auto)' can only be used as a return type [2]:in a function declaration |
Error | err_decltype_auto_compound_type | cannot form %select{pointer to|reference to|array of}0 'decltype(auto)' |
Error | err_decltype_auto_initializer_list | cannot deduce 'decltype(auto)' from initializer list |
Error | err_auto_fn_deduction_failure | cannot deduce return type %0 from returned value of type %1 |
Error | err_auto_fn_different_deductions | [1]:'%select{auto|decltype(auto)}0' in return type deduced as %1 here but [2]:deduced as %2 in earlier return statement |
Error | err_auto_fn_used_before_defined | function %0 with deduced return type cannot be used before it is defined |
Error | err_auto_fn_no_return_but_not_auto | cannot deduce return type %0 for function with no return statements |
Error | err_auto_fn_return_void_but_not_auto | cannot deduce return type %0 from omitted return expression |
Error | err_auto_fn_return_init_list | cannot deduce return type from initializer list |
Error | err_auto_fn_virtual | function with deduced return type cannot be virtual |
Error | override_keyword_only_allowed_on_virtual_member_functions | only virtual member functions can be marked '%0' |
Error | override_keyword_hides_virtual_member_function | [1]:non-virtual member function marked '%0' hides virtual member [2]:%select{function|functions}1 |
Error | err_function_marked_override_not_overriding | %0 marked 'override' but does not override any member functions |
Warning | warn_function_marked_not_override_overriding | %0 overrides a member function but is not marked 'override' |
Error | err_class_marked_final_used_as_base | base %0 is marked '%select{final|sealed}1' |
Warning | warn_abstract_final_class | abstract class is marked '%select{final|sealed}0' |
Error | err_repeat_attribute | %0 attribute cannot be repeated |
Error | err_final_function_overridden | declaration of %0 overrides a '%select{final|sealed}1' function |
Error | err_enum_invalid_underlying | non-integral type %0 is an invalid underlying type |
Error | err_enumerator_too_large | enumerator value is not representable in the underlying type %0 |
ExtWarn | ext_enumerator_too_large | enumerator value is not representable in the underlying type %0 |
Error | err_enumerator_wrapped | enumerator value %0 is not representable in the underlying type %1 |
Error | err_enum_redeclare_type_mismatch | enumeration redeclared with different underlying type %0 (was %1) |
Error | err_enum_redeclare_fixed_mismatch | enumeration previously declared with %select{non|}0fixed underlying type |
Error | err_enum_redeclare_scoped_mismatch | enumeration previously declared as %select{un|}0scoped |
Error | err_enum_class_reference | [1]:reference to %select{|scoped }0enumeration must use 'enum' [2]:not 'enum class' |
Error | err_only_enums_have_underlying_types | only enumeration types have underlying types |
Error | err_underlying_type_of_incomplete_enum | cannot determine underlying type of incomplete enumeration type %0 |
Error | err_delegating_ctor | delegating constructors are permitted only in C++11 |
Warning | warn_cxx98_compat_delegating_ctor | delegating constructors are incompatible with C++98 |
Error | err_delegating_initializer_alone | an initializer for a delegating constructor must appear alone |
Warning | warn_delegating_ctor_cycle | constructor for %0 creates a delegation cycle |
Note | note_it_delegates_to | it delegates to |
Note | note_which_delegates_to | which delegates to |
Error | err_for_range_decl_must_be_var | for range declaration must declare a variable |
Error | err_for_range_storage_class | [1]:loop variable %0 may not be declared %select{'extern'|'static'| [2]:'__private_extern__'|'auto'|'register'|'constexpr'}1 |
Error | err_type_defined_in_for_range | types may not be defined in a for range declaration |
Error | err_for_range_deduction_failure | cannot use type %0 as a range |
Error | err_for_range_incomplete_type | cannot use incomplete type %0 as a range |
Error | err_for_range_iter_deduction_failure | cannot use type %0 as an iterator |
Error | err_for_range_member_begin_end_mismatch | range type %0 has '%select{begin|end}1' member but no '%select{end|begin}1' member |
Error | err_for_range_begin_end_types_differ | 'begin' and 'end' must return the same type (got %0 and %1) |
Note | note_in_for_range | [1]:when looking up '%select{begin|end}0' function for range expression [2]:of type %1 |
Error | err_for_range_invalid | [1]:invalid range expression of type %0; no viable '%select{begin|end}1' [2]:function available |
Error | err_range_on_array_parameter | [1]:cannot build range expression with array function parameter %0 since [2]:parameter with array type %1 is treated as pointer type %2 |
Error | err_for_range_dereference | [1]:invalid range expression of type %0; did you mean to dereference it [2]:with '*'? |
Note | note_for_range_invalid_iterator | in implicit call to 'operator%select{!=|*|++}0' for iterator of type %1 |
Note | note_for_range_begin_end | selected '%select{begin|end}0' %select{function|template }1%2 with iterator type %3 |
Warning | warn_cxx98_compat_constexpr | 'constexpr' specifier is incompatible with C++98 |
Warning | warn_cxx14_compat_constexpr_not_const | [1]:'constexpr' non-static member function will not be implicitly 'const' [2]:in C++14; add 'const' to avoid a change in behavior |
Error | err_invalid_constexpr | [1]:%select{function parameter|typedef|non-static data member}0 [2]:cannot be constexpr |
Error | err_invalid_constexpr_member | [1]:non-static data member cannot be [2]:constexpr%select{; did you intend to make it %select{const|static}0?|}1 |
Error | err_constexpr_tag | %select{class|struct|interface|union|enum}0 cannot be marked constexpr |
Error | err_constexpr_dtor | destructor cannot be marked constexpr |
Error | err_constexpr_no_declarators | constexpr can only be used in variable and function declarations |
Error | err_invalid_constexpr_var_decl | constexpr variable declaration must be a definition |
Error | err_constexpr_static_mem_var_requires_init | declaration of constexpr static data member %0 requires an initializer |
Error | err_constexpr_var_non_literal | constexpr variable cannot have non-literal type %0 |
Error | err_constexpr_var_requires_const_init | constexpr variable %0 must be initialized by a constant expression |
Error | err_constexpr_redecl_mismatch | [1]:%select{non-constexpr declaration of %0 follows constexpr declaration [2]:|constexpr declaration of %0 follows non-constexpr declaration}1 |
Error | err_constexpr_virtual | virtual function cannot be constexpr |
Error | err_constexpr_virtual_base | [1]:constexpr %select{member function|constructor}0 not allowed in [2]:[1]:%select{struct|interface|class}1 with virtual base [2]:%plural{1:class|:classes}2 |
Note | note_non_literal_incomplete | incomplete type %0 is not a literal type |
Note | note_non_literal_virtual_base | [1]:%select{struct|interface|class}0 [2]:with virtual base %plural{1:class|:classes}1 is not a literal type |
Note | note_constexpr_virtual_base_here | virtual base class declared here |
Error | err_constexpr_non_literal_return | constexpr function's return type %0 is not a literal type |
Error | err_constexpr_non_literal_param | [1]:constexpr %select{function|constructor}1's %ordinal0 parameter type %2 is [2]:not a literal type |
Error | err_constexpr_body_invalid_stmt | statement not allowed in constexpr %select{function|constructor}0 |
ExtWarn | ext_constexpr_body_invalid_stmt | [1]:use of this statement in a constexpr %select{function|constructor}0 [2]:is a C++14 extension |
Warning | warn_cxx11_compat_constexpr_body_invalid_stmt | [1]:use of this statement in a constexpr %select{function|constructor}0 [2]:is incompatible with C++ standards before C++14 |
ExtWarn | ext_constexpr_type_definition | [1]:type definition in a constexpr %select{function|constructor}0 [2]:is a C++14 extension |
Warning | warn_cxx11_compat_constexpr_type_definition | [1]:type definition in a constexpr %select{function|constructor}0 [2]:is incompatible with C++ standards before C++14 |
Error | err_constexpr_vla | [1]:variably-modified type %0 cannot be used in a constexpr [2]:%select{function|constructor}1 |
ExtWarn | ext_constexpr_local_var | [1]:variable declaration in a constexpr %select{function|constructor}0 [2]:is a C++14 extension |
Warning | warn_cxx11_compat_constexpr_local_var | [1]:variable declaration in a constexpr %select{function|constructor}0 [2]:is incompatible with C++ standards before C++14 |
Error | err_constexpr_local_var_static | [1]:%select{static|thread_local}1 variable not permitted in a constexpr [2]:%select{function|constructor}0 |
Error | err_constexpr_local_var_non_literal_type | [1]:variable of non-literal type %1 cannot be defined in a constexpr [2]:%select{function|constructor}0 |
Error | err_constexpr_local_var_no_init | [1]:variables defined in a constexpr %select{function|constructor}0 must be [2]:initialized |
ExtWarn | ext_constexpr_function_never_constant_expr | [1]:constexpr %select{function|constructor}0 never produces a [2]:constant expression |
Error | err_enable_if_never_constant_expr | 'enable_if' attribute expression never produces a constant expression |
Error | err_constexpr_body_no_return | no return statement in constexpr function |
Error | err_constexpr_return_missing_expr | non-void constexpr function %0 should return a value |
Warning | warn_cxx11_compat_constexpr_body_no_return | [1]:constexpr function with no return statements is incompatible with C++ [2]:standards before C++14 |
ExtWarn | ext_constexpr_body_multiple_return | multiple return statements in constexpr function is a C++14 extension |
Warning | warn_cxx11_compat_constexpr_body_multiple_return | [1]:multiple return statements in constexpr function [2]:is incompatible with C++ standards before C++14 |
Note | note_constexpr_body_previous_return | previous return statement is here |
Error | err_constexpr_function_try_block | function try block not allowed in constexpr %select{function|constructor}0 |
Error | err_constexpr_union_ctor_no_init | constexpr union constructor does not initialize any member |
Error | err_constexpr_ctor_missing_init | constexpr constructor must initialize all members |
Note | note_constexpr_ctor_missing_init | member not initialized by constructor |
Note | note_non_literal_no_constexpr_ctors | [1]:%0 is not literal because it is not an aggregate and has no constexpr [2]:constructors other than copy or move constructors |
Note | note_non_literal_base_class | %0 is not literal because it has base class %1 of non-literal type |
Note | note_non_literal_field | [1]:%0 is not literal because it has data member %1 of [2]:%select{non-literal|volatile}3 type %2 |
Note | note_non_literal_user_provided_dtor | %0 is not literal because it has a user-provided destructor |
Note | note_non_literal_nontrivial_dtor | %0 is not literal because it has a non-trivial destructor |
Warning | warn_private_extern | [1]:use of __private_extern__ on a declaration may not produce external symbol [2]:private to the linkage unit and is deprecated |
Note | note_private_extern | use __attribute__((visibility(\"hidden\"))) attribute instead |
Error | err_concept_wrong_decl_kind | 'concept' can only appear on the definition of a function template or variable template |
Error | err_concept_decls_may_only_appear_in_namespace_scope | concept declarations may only appear in namespace scope |
Error | err_function_concept_not_defined | function concept declaration must be a definition |
Error | err_var_concept_not_initialized | variable concept declaration must be initialized |
Error | err_function_concept_exception_spec | function concept cannot have exception specification |
Error | err_concept_decl_invalid_specifiers | [1]:%select{variable|function}0 concept cannot be declared [2]:'%select{thread_local|inline|friend|constexpr}1' |
Error | err_function_concept_with_params | function concept cannot have any parameters |
Error | err_function_concept_bool_ret | declared return type of function concept must be 'bool' |
Error | err_variable_concept_bool_decl | declared type of variable concept must be 'bool' |
Error | err_concept_specified_specialization | [1]:'concept' cannot be applied on an [2]:%select{explicit instantiation|explicit specialization|partial specialization}0 |
Warning | warn_cxx98_compat_unicode_type | '%0' type specifier is incompatible with C++98 |
Error | err_integer_sequence_negative_length | integer sequences must have non-negative sequence length |
Error | err_integer_sequence_integral_element_type | integer sequences must have integral element type |
Error | err_objc_decls_may_only_appear_in_global_scope | Objective-C declarations may only appear in global scope |
Warning | warn_auto_var_is_id | 'auto' deduced as 'id' in declaration of %0 |
Error | err_nsobject_attribute | 'NSObject' attribute is for pointer types only |
Error | err_attributes_are_not_compatible | %0 and %1 attributes are not compatible |
Error | err_attribute_wrong_number_arguments | [1]:%0 attribute %plural{0:takes no arguments|1:takes one argument| [2]::requires exactly %1 arguments}1 |
Error | err_attribute_too_many_arguments | %0 attribute takes no more than %1 argument%s1 |
Error | err_attribute_too_few_arguments | %0 attribute takes at least %1 argument%s1 |
Error | err_attribute_invalid_vector_type | invalid vector element type %0 |
Error | err_attribute_bad_neon_vector_size | Neon vector size must be 64 or 128 bits |
Error | err_attribute_requires_positive_integer | %0 attribute requires a positive integral compile time constant expression |
Error | err_attribute_requires_opencl_version | %0 attribute requires OpenCL version %1 or above |
Warning | warn_unsupported_target_attribute | Ignoring unsupported '%0' in the target attribute string |
Error | err_attribute_unsupported | %0 attribute is not supported for this target |
Error | err_aligned_attribute_argument_not_int | 'aligned' attribute requires integer constant |
Error | err_align_value_attribute_argument_not_int | 'align_value' attribute requires integer constant |
Error | err_alignas_attribute_wrong_decl_type | [1]:%0 attribute cannot be applied to a %select{function parameter| [2]:variable with 'register' storage class|'catch' variable|bit-field}1 |
Error | err_alignas_missing_on_definition | %0 must be specified on definition if it is specified on any declaration |
Note | note_alignas_on_declaration | declared with %0 attribute here |
Error | err_alignas_mismatch | redeclaration has different alignment requirement (%1 vs %0) |
Error | err_alignas_underaligned | requested alignment is less than minimum alignment of %1 for type %0 |
Error | err_attribute_argument_n_type | [1]:%0 attribute requires parameter %1 to be %select{int or bool|an integer [2]:constant|a string|an identifier}2 |
Error | err_attribute_argument_type | [1]:%0 attribute requires %select{int or bool|an integer [2]:constant|a string|an identifier}1 |
Error | err_attribute_argument_outof_range | %0 attribute requires integer constant between %1 and %2 inclusive |
Error | err_init_priority_object_attr | [1]:can only use 'init_priority' attribute on file-scope definitions [2]:of objects of class type |
Error | err_attribute_argument_vec_type_hint | invalid attribute argument %0 - expecting a vector or vectorizable scalar type |
Error | err_attribute_argument_out_of_bounds | %0 attribute parameter %1 is out of bounds |
Error | err_attribute_only_once_per_parameter | %0 attribute can only be applied once per parameter |
Error | err_attribute_uuid_malformed_guid | uuid attribute contains a malformed GUID |
Warning | warn_attribute_pointers_only | %0 attribute only applies to%select{| constant}1 pointer arguments |
Error | err_attribute_pointers_only | warn_attribute_pointers_only.Text |
Warning | warn_attribute_return_pointers_only | %0 attribute only applies to return values that are pointers |
Warning | warn_attribute_return_pointers_refs_only | %0 attribute only applies to return values that are pointers or references |
Warning | warn_attribute_pointer_or_reference_only | %0 attribute only applies to a pointer or reference (%1 is invalid) |
Error | err_attribute_no_member_pointers | %0 attribute cannot be used with pointers to members |
Error | err_attribute_invalid_implicit_this_argument | %0 attribute is invalid for the implicit this argument |
Error | err_ownership_type | %0 attribute only applies to %select{pointer|integer}1 arguments |
Error | err_ownership_returns_index_mismatch | 'ownership_returns' attribute index does not match; here it is %0 |
Note | note_ownership_returns_index_mismatch | declared with index %0 here |
Error | err_format_strftime_third_parameter | strftime format attribute requires 3rd parameter to be 0 |
Error | err_format_attribute_requires_variadic | format attribute requires variadic function |
Error | err_format_attribute_not | format argument not %0 |
Error | err_format_attribute_result_not | function does not return %0 |
Error | err_format_attribute_implicit_this_format_string | [1]:format attribute cannot specify the implicit this argument as the format [2]:string |
Error | err_init_method_bad_return_type | init methods must return an object pointer type, not %0 |
Error | err_attribute_invalid_size | vector size not an integral multiple of component size |
Error | err_attribute_zero_size | zero vector size |
Error | err_attribute_size_too_large | vector size too large |
Error | err_typecheck_vector_not_convertable | cannot convert between vector values of different size (%0 and %1) |
Error | err_typecheck_vector_not_convertable_non_scalar | cannot convert between vector and non-scalar values (%0 and %1) |
Error | err_typecheck_vector_lengths_not_equal | vector operands do not have the same number of elements (%0 and %1) |
Error | err_ext_vector_component_exceeds_length | vector component access exceeds type %0 |
Error | err_ext_vector_component_name_illegal | illegal vector component name '%0' |
Error | err_attribute_address_space_negative | address space is negative |
Error | err_attribute_address_space_too_high | address space is larger than the maximum supported (%0) |
Error | err_attribute_address_multiple_qualifiers | multiple address spaces specified for type |
Error | err_attribute_address_function_type | function type may not be qualified with an address space |
Error | err_as_qualified_auto_decl | automatic variable qualified with an address space |
Error | err_arg_with_address_space | parameter may not be qualified with an address space |
Error | err_field_with_address_space | field may not be qualified with an address space |
Error | err_attr_objc_ownership_redundant | the type %0 is already explicitly ownership-qualified |
Error | err_invalid_nsnumber_type | %0 is not a valid literal type for NSNumber |
Error | err_objc_illegal_boxed_expression_type | illegal type %0 used in a boxed expression |
Error | err_objc_non_trivially_copyable_boxed_expression_type | non-trivially copyable type %0 cannot be used in a boxed expression |
Error | err_objc_incomplete_boxed_expression_type | incomplete type %0 used in a boxed expression |
Error | err_undeclared_objc_literal_class | [1]:definition of class %0 must be available to use Objective-C [2]:[1]:%select{array literals|dictionary literals|numeric literals|boxed expressions| [2]:string literals}1 |
Error | err_undeclared_boxing_method | declaration of %0 is missing in %1 class |
Error | err_objc_literal_method_sig | literal construction method %0 has incompatible signature |
Note | note_objc_literal_method_param | [1]:%select{first|second|third}0 parameter has unexpected type %1 [2]:(should be %2) |
Note | note_objc_literal_method_return | method returns unexpected type %0 (should be an object type) |
Error | err_invalid_collection_element | collection element of type %0 is not an Objective-C object |
Error | err_box_literal_collection | [1]:%select{string|character|boolean|numeric}0 literal must be prefixed by '@' [2]:in a collection |
Warning | warn_objc_literal_comparison | [1]:direct comparison of %select{an array literal|a dictionary literal| [2]:a numeric literal|a boxed expression|}0 has undefined behavior |
Error | err_missing_atsign_prefix | string literal must be prefixed by '@' |
Warning | warn_objc_string_literal_comparison | direct comparison of a string literal has undefined behavior |
Warning | warn_concatenated_nsarray_literal | [1]:concatenated NSString literal for an NSArray expression - [2]:possibly missing a comma |
Note | note_objc_literal_comparison_isequal | use 'isEqual:' instead |
Warning | warn_objc_collection_literal_element | [1]:object of type %0 is not compatible with [2]:%select{array element type|dictionary key type|dictionary value type}1 %2 |
Error | err_swift_param_attr_not_swiftcall | '%0' parameter can only be used with swiftcall calling convention |
Error | err_swift_indirect_result_not_first | 'swift_indirect_result' parameters must be first parameters of function |
Error | err_swift_context_not_before_swift_error_result | [1]:'swift_context' parameter can only be followed by 'swift_error_result' [2]:parameter |
Error | err_swift_error_result_not_last | 'swift_error_result' parameter must be last parameter of function |
Error | err_swift_error_result_not_after_swift_context | 'swift_error_result' parameter must follow 'swift_context' parameter |
Error | err_swift_abi_parameter_wrong_type | [1]:'%0' parameter must have pointer%select{| to unqualified pointer}1 type; [2]:type here is %2 |
Error | err_attribute_argument_is_zero | %0 attribute must be greater than 0 |
Warning | warn_attribute_argument_n_negative | %0 attribute parameter %1 is negative and will be ignored |
Error | err_property_function_in_objc_container | [1]:use of Objective-C property in function nested in Objective-C [2]:container not supported, move function outside its container |
Warning | warn_objc_redundant_literal_use | using %0 with a literal is redundant |
Error | err_attr_tlsmodel_arg | [1]:tls_model must be \"global-dynamic\", [2]:\"local-dynamic\", \"initial-exec\" or \"local-exec\" |
Error | err_tls_var_aligned_over_maximum | [1]:alignment (%0) of thread-local variable %1 is greater than the maximum supported [2]:alignment (%2) for a thread-local variable on this target |
Error | err_only_annotate_after_access_spec | access specifier can only have annotation attributes |
Error | err_attribute_section_invalid_for_target | argument to 'section' attribute is not valid for this target: %0 |
Warning | warn_mismatched_section | section does not match previous declaration |
Error | err_anonymous_property | anonymous property is not supported |
Error | err_property_is_variably_modified | property %0 has a variably modified type |
Error | err_no_accessor_for_property | no %select{getter|setter}0 defined for property %1 |
Error | error_cannot_find_suitable_accessor | cannot find suitable %select{getter|setter}0 for property %1 |
Error | err_alignment_not_power_of_two | requested alignment is not a power of 2 |
Error | err_alignment_dependent_typedef_name | requested alignment is dependent but declaration is not dependent |
Error | err_attribute_aligned_too_great | requested alignment must be %0 bytes or smaller |
Warning | warn_redeclaration_without_attribute_prev_attribute_ignored | %q0 redeclared without %1 attribute: previous %1 ignored |
Warning | warn_dllimport_dropped_from_inline_function | %q0 redeclared inline; %1 attribute ignored |
Warning | warn_attribute_ignored | %0 attribute ignored |
Warning | warn_attribute_ignored_on_inline | %0 attribute ignored on inline function |
Warning | warn_attribute_after_definition_ignored | attribute %0 after definition is ignored |
Warning | warn_unknown_attribute_ignored | unknown attribute %0 ignored |
Warning | warn_cxx11_gnu_attribute_on_type | attribute %0 ignored, because it cannot be applied to a type |
Warning | warn_unhandled_ms_attribute_ignored | __declspec attribute %0 is not supported |
Error | err_decl_attribute_invalid_on_stmt | %0 attribute cannot be applied to a statement |
Error | err_stmt_attribute_invalid_on_decl | %0 attribute cannot be applied to a declaration |
Warning | warn_declspec_attribute_ignored | [1]:attribute %0 is ignored, place it after [2]:[1]:\"%select{class|struct|interface|union|enum}1\" to apply attribute to [2]:type declaration |
Warning | warn_attribute_precede_definition | attribute declaration must precede definition |
Warning | warn_attribute_void_function_method | [1]:attribute %0 cannot be applied to [2]:%select{functions|Objective-C method}1 without return value |
Warning | warn_attribute_weak_on_field | __weak attribute cannot be specified on a field declaration |
Warning | warn_gc_attribute_weak_on_local | Objective-C GC does not allow weak variables on the stack |
Warning | warn_nsobject_attribute | 'NSObject' attribute may be put on a typedef only; attribute is ignored |
Warning | warn_independentclass_attribute | [1]:'objc_independent_class' attribute may be put on a typedef only; [2]:attribute is ignored |
Warning | warn_ptr_independentclass_attribute | [1]:'objc_independent_class' attribute may be put on Objective-C object [2]:pointer type only; attribute is ignored |
Warning | warn_attribute_weak_on_local | [1]:__weak attribute cannot be specified on an automatic variable when ARC [2]:is not enabled |
Warning | warn_weak_identifier_undeclared | weak identifier %0 never declared |
Error | err_attribute_weak_static | weak declaration cannot have internal linkage |
Error | err_attribute_selectany_non_extern_data | 'selectany' can only be applied to data items with external linkage |
Error | err_declspec_thread_on_thread_variable | [1]:'__declspec(thread)' applied to variable that already has a [2]:thread-local storage specifier |
Error | err_attribute_dll_not_extern | %q0 must have external linkage when declared %q1 |
Error | err_attribute_dll_thread_local | %q0 cannot be thread local when declared %q1 |
Error | err_attribute_dll_lambda | lambda cannot be declared %0 |
Warning | warn_attribute_invalid_on_definition | '%0' attribute cannot be specified on a definition |
Error | err_attribute_dll_redeclaration | redeclaration of %q0 cannot add %q1 attribute |
Warning | warn_attribute_dll_redeclaration | redeclaration of %q0 should not add %q1 attribute |
Error | err_attribute_dllimport_function_definition | dllimport cannot be applied to non-inline function definition |
Error | err_attribute_dll_deleted | attribute %q0 cannot be applied to a deleted function |
Error | err_attribute_dllimport_data_definition | definition of dllimport data |
Error | err_attribute_dllimport_static_field_definition | definition of dllimport static field not allowed |
Warning | warn_attribute_dllimport_static_field_definition | definition of dllimport static field |
Warning | warn_attribute_dllexport_explicit_instantiation_decl | explicit instantiation declaration should not be 'dllexport' |
Warning | warn_invalid_initializer_from_system_header | invalid constructor form class in system header, should not be explicit |
Note | note_used_in_initialization_here | used in initialization here |
Error | err_attribute_dll_member_of_dll_class | attribute %q0 cannot be applied to member of %q1 class |
Warning | warn_attribute_dll_instantiated_base_class | [1]:propagating dll attribute to %select{already instantiated|explicitly specialized}0 [2]:base class template without dll attribute is not supported |
Error | err_attribute_dll_ambiguous_default_ctor | '__declspec(dllexport)' cannot be applied to more than one default constructor in %0 |
Error | err_attribute_weakref_not_static | weakref declaration must have internal linkage |
Error | err_attribute_weakref_not_global_context | weakref declaration of %0 must be in a global context |
Error | err_attribute_weakref_without_alias | weakref declaration of %0 must also have an alias attribute |
Error | err_alias_not_supported_on_darwin | only weak aliases are supported on darwin |
Error | err_alias_to_undefined | alias must point to a defined variable or function |
Warning | warn_alias_to_weak_alias | alias will always resolve to %0 even if weak definition of alias %1 is overridden |
Warning | warn_alias_with_section | alias will not be in section '%0' but in the same section as the aliasee |
Error | err_duplicate_mangled_name | definition with same mangled name as another definition |
Error | err_cyclic_alias | alias definition is part of a cycle |
Warning | warn_attribute_wrong_decl_type | [1]:%0 attribute only applies to %select{functions|unions| [2]:[1]:variables and functions|functions and methods|parameters| [2]:[1]:functions, methods and blocks|functions, methods, and classes| [2]:[1]:functions, methods, and parameters|classes|enums|variables|methods| [2]:[1]:fields and global variables|structs|variables and typedefs|thread-local variables| [2]:[1]:variables and fields|variables, data members and tag types| [2]:[1]:types and namespaces|Objective-C interfaces|methods and properties| [2]:[1]:struct or union|struct, union or class|types| [2]:[1]:Objective-C instance methods|init methods of interface or class extension declarations| [2]:[1]:variables, functions and classes|Objective-C protocols| [2]:[1]:functions and global variables|structs, unions, and typedefs|structs and typedefs| [2]:[1]:interface or protocol declarations|kernel functions|non-K&R-style functions| [2]:[1]:variables, enums, fields and typedefs|functions, methods, enums, and classes| [2]:[1]:structs, classes, variables, functions, and inline namespaces| [2]:variables, functions, methods, types, enumerations, enumerators, labels, and non-static data members}1 |
Error | err_attribute_wrong_decl_type | warn_attribute_wrong_decl_type.Text |
Warning | warn_type_attribute_wrong_type | [1]:'%0' only applies to %select{function|pointer| [2]:Objective-C object or block pointer}1 types; type here is %2 |
Warning | warn_incomplete_encoded_type | encoding of %0 type is incomplete because %1 component has unknown encoding |
Warning | warn_attribute_requires_functions_or_static_globals | %0 only applies to variables with static storage duration and functions |
Warning | warn_gnu_inline_attribute_requires_inline | [1]:'gnu_inline' attribute requires function to be marked 'inline', [2]: attribute ignored |
Error | err_attribute_vecreturn_only_vector_member | the vecreturn attribute can only be used on a class or structure with one member, which must be a vector |
Error | err_attribute_vecreturn_only_pod_record | the vecreturn attribute can only be used on a POD (plain old data) class or structure (i.e. no virtual functions) |
Error | err_cconv_change | [1]:function declared '%0' here was previously declared [2]:%select{'%2'|without calling convention}1 |
Warning | warn_cconv_ignored | calling convention %0 ignored for this target |
Error | err_cconv_knr | function with no prototype cannot use the %0 calling convention |
Warning | warn_cconv_knr | err_cconv_knr.Text |
Error | err_cconv_varargs | variadic function cannot use %0 calling convention |
Warning | warn_cconv_varargs | %0 calling convention ignored on variadic function |
Warning | warn_cconv_structors | %0 calling convention ignored on constructor/destructor |
Error | err_regparm_mismatch | [1]:function declared with regparm(%0) [2]:[1]:attribute was previously declared [2]:%plural{0:without the regparm|:with the regparm(%1)}1 attribute |
Error | err_returns_retained_mismatch | [1]:function declared with the ns_returns_retained attribute [2]:was previously declared without the ns_returns_retained attribute |
Error | err_objc_precise_lifetime_bad_type | objc_precise_lifetime only applies to retainable types; type here is %0 |
Error | warn_objc_precise_lifetime_meaningless | [1]:objc_precise_lifetime is not meaningful for [2]:%select{__unsafe_unretained|__autoreleasing}0 objects |
Error | err_invalid_pcs | invalid PCS type |
Warning | warn_attribute_not_on_decl | %0 attribute ignored when parsing type |
Error | err_base_specifier_attribute | %0 attribute cannot be applied to a base specifier |
Error | err_invalid_attribute_on_virtual_function | %0 attribute cannot be applied to virtual functions |
Warning | warn_availability_unknown_platform | unknown platform %0 in availability macro |
Warning | warn_availability_version_ordering | [1]:feature cannot be %select{introduced|deprecated|obsoleted}0 in %1 version [2]:[1]:%2 before it was %select{introduced|deprecated|obsoleted}3 in version %4; [2]:attribute ignored |
Warning | warn_mismatched_availability | availability does not match previous declaration |
Warning | warn_mismatched_availability_override | [1]:%select{|overriding }4method %select{introduced after| [2]:[1]:deprecated before|obsoleted before}0 [2]:[1]:%select{the protocol method it implements|overridden method}4 [2]:on %1 (%2 vs. %3) |
Warning | warn_mismatched_availability_override_unavail | [1]:%select{|overriding }1method cannot be unavailable on %0 when [2]:[1]:%select{the protocol method it implements|its overridden method}1 is [2]:available |
Note | note_overridden_method | overridden method is here |
Note | note_protocol_method | protocol method is here |
Warning | warn_invalid_capability_name | invalid capability name '%0'; capability name must be 'mutex' or 'role' |
Warning | warn_thread_attribute_ignored | ignoring %0 attribute because its argument is invalid |
Warning | warn_thread_attribute_argument_not_lockable | [1]:%0 attribute requires arguments whose type is annotated [2]:with 'capability' attribute; type here is %1 |
Warning | warn_thread_attribute_decl_not_lockable | [1]:%0 attribute can only be applied in a context annotated [2]:with 'capability(\"mutex\")' attribute |
Warning | warn_thread_attribute_decl_not_pointer | %0 only applies to pointer types; type here is %1 |
Error | err_attribute_argument_out_of_range | [1]:%0 attribute parameter %1 is out of bounds: [2]:[1]:%plural{0:no parameters to index into| [2]:[1]:1:can only be 1, since there is one parameter| [2]::must be between 1 and %2}2 |
Warning | warn_unlock_but_no_lock | releasing %0 '%1' that was not held |
Warning | warn_unlock_kind_mismatch | [1]:releasing %0 '%1' using %select{shared|exclusive}2 access, expected [2]:%select{shared|exclusive}3 access |
Warning | warn_double_lock | acquiring %0 '%1' that is already held |
Warning | warn_no_unlock | %0 '%1' is still held at the end of function |
Warning | warn_expecting_locked | expecting %0 '%1' to be held at the end of function |
Warning | warn_lock_some_predecessors | %0 '%1' is not held on every path through here |
Warning | warn_expecting_lock_held_on_loop | expecting %0 '%1' to be held at start of each loop |
Note | note_locked_here | %0 acquired here |
Warning | warn_lock_exclusive_and_shared | %0 '%1' is acquired exclusively and shared in the same scope |
Note | note_lock_exclusive_and_shared | the other acquisition of %0 '%1' is here |
Warning | warn_variable_requires_any_lock | [1]:%select{reading|writing}1 variable '%0' requires holding [2]:%select{any mutex|any mutex exclusively}1 |
Warning | warn_var_deref_requires_any_lock | [1]:%select{reading|writing}1 the value pointed to by '%0' requires holding [2]:%select{any mutex|any mutex exclusively}1 |
Warning | warn_fun_excludes_mutex | cannot call function '%1' while %0 '%2' is held |
Warning | warn_cannot_resolve_lock | cannot resolve lock expression |
Warning | warn_acquired_before | %0 '%1' must be acquired before '%2' |
Warning | warn_acquired_before_after_cycle | Cycle in acquired_before/after dependencies, starting with '%0' |
Warning | warn_acquire_requires_negative_cap | acquiring %0 '%1' requires negative capability '%2' |
Warning | warn_guarded_pass_by_reference | [1]:passing variable '%1' by reference requires holding %0 [2]:%select{'%2'|'%2' exclusively}3 |
Warning | warn_pt_guarded_pass_by_reference | [1]:passing the value that '%1' points to by reference requires holding %0 [2]:%select{'%2'|'%2' exclusively}3 |
Warning | warn_variable_requires_lock | [1]:%select{reading|writing}3 variable '%1' requires holding %0 [2]:%select{'%2'|'%2' exclusively}3 |
Warning | warn_var_deref_requires_lock | [1]:%select{reading|writing}3 the value pointed to by '%1' requires [2]:holding %0 %select{'%2'|'%2' exclusively}3 |
Warning | warn_fun_requires_lock | calling function '%1' requires holding %0 %select{'%2'|'%2' exclusively}3 |
Warning | warn_variable_requires_lock_precise | warn_variable_requires_lock.Text |
Warning | warn_var_deref_requires_lock_precise | warn_var_deref_requires_lock.Text |
Warning | warn_fun_requires_lock_precise | warn_fun_requires_lock.Text |
Note | note_found_mutex_near_match | found near match '%0' |
Warning | warn_thread_safety_verbose | Thread safety verbose warning. |
Note | note_thread_warning_in_fun | Thread warning in function '%0' |
Note | note_guarded_by_declared_here | Guarded_by declared here. |
Warning | warn_thread_safety_beta | Thread safety beta warning. |
Warning | warn_use_in_invalid_state | [1]:invalid invocation of method '%0' on object '%1' while it is in the '%2' [2]:state |
Warning | warn_use_of_temp_in_invalid_state | [1]:invalid invocation of method '%0' on a temporary object while it is in the [2]:'%1' state |
Warning | warn_attr_on_unconsumable_class | [1]:consumed analysis attribute is attached to member of class '%0' which isn't [2]:marked as consumable |
Warning | warn_return_typestate_for_unconsumable_type | return state set for an unconsumable type '%0' |
Warning | warn_return_typestate_mismatch | return value not in expected state; expected '%0', observed '%1' |
Warning | warn_loop_state_mismatch | state of variable '%0' must match at the entry and exit of loop |
Warning | warn_param_return_typestate_mismatch | [1]:parameter '%0' not in expected state when the function returns: expected [2]:'%1', observed '%2' |
Warning | warn_param_typestate_mismatch | argument not in expected state; expected '%0', observed '%1' |
Warning | warn_unknown_sanitizer_ignored | unknown sanitizer '%0' ignored |
Warning | warn_impcast_vector_scalar | implicit conversion turns vector to scalar: %0 to %1 |
Warning | warn_impcast_complex_scalar | implicit conversion discards imaginary component: %0 to %1 |
Warning | warn_impcast_float_precision | implicit conversion loses floating-point precision: %0 to %1 |
Warning | warn_impcast_double_promotion | implicit conversion increases floating-point precision: %0 to %1 |
Warning | warn_impcast_float_integer | implicit conversion turns floating-point number into integer: %0 to %1 |
Warning | warn_impcast_integer_sign | implicit conversion changes signedness: %0 to %1 |
Warning | warn_impcast_integer_sign_conditional | operand of ? changes signedness: %0 to %1 |
Warning | warn_impcast_integer_precision | implicit conversion loses integer precision: %0 to %1 |
Warning | warn_impcast_integer_64_32 | implicit conversion loses integer precision: %0 to %1 |
Warning | warn_impcast_integer_precision_constant | implicit conversion from %2 to %3 changes value from %0 to %1 |
Warning | warn_impcast_bitfield_precision_constant | implicit truncation from %2 to bitfield changes value from %0 to %1 |
Warning | warn_impcast_literal_float_to_integer | implicit conversion from %0 to %1 changes value from %2 to %3 |
Warning | warn_impcast_string_literal_to_bool | implicit conversion turns string literal into bool: %0 to %1 |
Warning | warn_impcast_different_enum_types | [1]:implicit conversion from enumeration type %0 to different enumeration type [2]:%1 |
Warning | warn_impcast_bool_to_null_pointer | [1]:initialization of pointer of type %0 to null from a constant boolean [2]:expression |
Warning | warn_non_literal_null_pointer | [1]:expression which evaluates to zero treated as a null pointer constant of [2]:type %0 |
Warning | warn_impcast_null_pointer_to_integer | implicit conversion of %select{NULL|nullptr}0 constant to %1 |
Warning | warn_impcast_floating_point_to_bool | implicit conversion turns floating-point number into bool: %0 to %1 |
ExtWarn | ext_ms_impcast_fn_obj | [1]:implicit conversion between pointer-to-function and pointer-to-object is a [2]:Microsoft extension |
Warning | warn_impcast_pointer_to_bool | [1]:address of%select{| function| array}0 '%1' will always evaluate to [2]:'true' |
Warning | warn_cast_nonnull_to_bool | [1]:nonnull %select{function call|parameter}0 '%1' will evaluate to [2]:'true' on first encounter |
Warning | warn_this_bool_conversion | [1]:'this' pointer cannot be null in well-defined C++ code; pointer may be [2]:assumed to always convert to true |
Warning | warn_address_of_reference_bool_conversion | [1]:reference cannot be bound to dereferenced null pointer in well-defined C++ [2]:code; pointer may be assumed to always convert to true |
Warning | warn_null_pointer_compare | [1]:comparison of %select{address of|function|array}0 '%1' %select{not |}2 [2]:equal to a null pointer is always %select{true|false}2 |
Warning | warn_nonnull_expr_compare | [1]:comparison of nonnull %select{function call|parameter}0 '%1' [2]:[1]:%select{not |}2equal to a null pointer is '%select{true|false}2' on first [2]:encounter |
Warning | warn_this_null_compare | [1]:'this' pointer cannot be null in well-defined C++ code; comparison may be [2]:assumed to always evaluate to %select{true|false}0 |
Warning | warn_address_of_reference_null_compare | [1]:reference cannot be bound to dereferenced null pointer in well-defined C++ [2]:[1]:code; comparison may be assumed to always evaluate to [2]:%select{true|false}0 |
Note | note_reference_is_return_value | %0 returns a reference |
Note | note_function_warning_silence | prefix with the address-of operator to silence this warning |
Note | note_function_to_function_call | suffix with parentheses to turn this into a function call |
Warning | warn_impcast_objective_c_literal_to_bool | [1]:implicit boolean conversion of Objective-C object literal always [2]:evaluates to true |
Warning | warn_cast_align | cast from %0 to %1 increases required alignment from %2 to %3 |
Warning | warn_old_style_cast | use of old-style cast |
Warning | warn_int_to_pointer_cast | cast to %1 from smaller integer type %0 |
Warning | warn_int_to_void_pointer_cast | cast to %1 from smaller integer type %0 |
Warning | warn_attribute_packed_for_bitfield | [1]:'packed' attribute was ignored on bit-fields with single-byte alignment [2]:in older versions of GCC and Clang |
Warning | warn_transparent_union_attribute_field_size_align | [1]:%select{alignment|size}0 of field %1 (%2 bits) does not match the [2]:[1]:%select{alignment|size}0 of the first field in transparent union; [2]:transparent_union attribute ignored |
Note | note_transparent_union_first_field_size_align | %select{alignment|size}0 of first field is %1 bits |
Warning | warn_transparent_union_attribute_not_definition | [1]:transparent_union attribute can only be applied to a union definition; [2]:attribute ignored |
Warning | warn_transparent_union_attribute_floating | [1]:first field of a transparent union cannot have %select{floating point| [2]:vector}0 type %1; transparent_union attribute ignored |
Warning | warn_transparent_union_attribute_zero_fields | [1]:transparent union definition must contain at least one field; [2]:transparent_union attribute ignored |
Warning | warn_attribute_type_not_supported | %0 attribute argument not supported: %1 |
Warning | warn_attribute_unknown_visibility | unknown visibility %0 |
Warning | warn_attribute_protected_visibility | target does not support 'protected' visibility; using 'default' |
Error | err_mismatched_visibility | visibility does not match previous declaration |
Note | note_previous_attribute | previous attribute is here |
Note | note_conflicting_attribute | conflicting attribute is here |
Note | note_attribute | attribute is here |
Error | err_mismatched_ms_inheritance | inheritance model does not match %select{definition|previous declaration}0 |
Warning | warn_ignored_ms_inheritance | inheritance model ignored on %select{primary template|partial specialization}0 |
Note | note_previous_ms_inheritance | previous inheritance model specified here |
Error | err_machine_mode | %select{unknown|unsupported}0 machine mode %1 |
Error | err_mode_not_primitive | mode attribute only supported for integer and floating-point types |
Error | err_mode_wrong_type | type of machine mode does not match type of base type |
Warning | warn_vector_mode_deprecated | [1]:specifying vector types with the 'mode' attribute is deprecated; [2]:use the 'vector_size' attribute instead |
Error | err_complex_mode_vector_type | type of machine mode does not support base vector types |
Error | err_enum_mode_vector_type | mode %0 is not supported for enumeration types |
Warning | warn_attribute_nonnull_no_pointers | 'nonnull' attribute applied to function with no pointer arguments |
Warning | warn_attribute_nonnull_parm_no_args | 'nonnull' attribute when used on parameters takes no arguments |
Warning | warn_attribute_sentinel_named_arguments | 'sentinel' attribute requires named arguments |
Warning | warn_attribute_sentinel_not_variadic | 'sentinel' attribute only supported for variadic %select{functions|blocks}0 |
Error | err_attribute_sentinel_less_than_zero | 'sentinel' parameter 1 less than zero |
Error | err_attribute_sentinel_not_zero_or_one | 'sentinel' parameter 2 not 0 or 1 |
Warning | warn_cleanup_ext | [1]:GCC does not allow the 'cleanup' attribute argument to be anything other [2]:than a simple identifier |
Error | err_attribute_cleanup_arg_not_function | 'cleanup' argument %select{|%1 |%1 }0is not a %select{||single }0function |
Error | err_attribute_cleanup_func_must_take_one_arg | 'cleanup' function %0 must take 1 parameter |
Error | err_attribute_cleanup_func_arg_incompatible_type | [1]:'cleanup' function %0 parameter has [2]:%diff{type $ which is incompatible with type $|incompatible type}1,2 |
Error | err_attribute_regparm_wrong_platform | 'regparm' is not valid on this platform |
Error | err_attribute_regparm_invalid_number | 'regparm' parameter must be between 0 and %0 inclusive |
Error | err_attribute_not_supported_in_lang | %0 attribute is not supported in %select{C|C++|Objective-C}1 |
Warning | warn_attribute_iboutlet | %0 attribute can only be applied to instance variables or properties |
Error | err_iboutletcollection_type | invalid type %0 as argument of iboutletcollection attribute |
Error | err_iboutletcollection_builtintype | type argument of iboutletcollection attribute cannot be a builtin type |
Warning | warn_iboutlet_object_type | [1]:%select{instance variable|property}2 with %0 attribute must [2]:be an object type (invalid %1) |
Warning | warn_iboutletcollection_property_assign | IBOutletCollection properties should be copy/strong and not assign |
Error | err_attribute_overloadable_missing | [1]:%select{overloaded function|redeclaration of}0 %1 must have the [2]:'overloadable' attribute |
Note | note_attribute_overloadable_prev_overload | previous overload of function is here |
Error | err_attribute_overloadable_no_prototype | 'overloadable' function %0 must have a prototype |
Warning | warn_ns_attribute_wrong_return_type | [1]:%0 attribute only applies to %select{functions|methods|properties}1 that [2]:return %select{an Objective-C object|a pointer|a non-retainable pointer}2 |
Error | err_ns_attribute_wrong_parameter_type | [1]:%0 attribute only applies to [2]:%select{Objective-C object|pointer|pointer-to-CF-pointer}1 parameters |
Warning | warn_ns_attribute_wrong_parameter_type | [1]:%0 attribute only applies to [2]:%select{Objective-C object|pointer|pointer-to-CF-pointer}1 parameters |
Warning | warn_objc_requires_super_protocol | %0 attribute cannot be applied to %select{methods in protocols|dealloc}1 |
Note | note_protocol_decl | protocol is declared here |
Note | note_protocol_decl_undefined | protocol %0 has no definition |
Warning | warn_objc_designated_init_missing_super_call | designated initializer missing a 'super' call to a designated initializer of the super class |
Note | note_objc_designated_init_marked_here | method marked as designated initializer of the class here |
Warning | warn_objc_designated_init_non_super_designated_init_call | designated initializer should only invoke a designated initializer on 'super' |
Warning | warn_objc_designated_init_non_designated_init_call | designated initializer invoked a non-designated initializer |
Warning | warn_objc_secondary_init_super_init_call | convenience initializer should not invoke an initializer on 'super' |
Warning | warn_objc_secondary_init_missing_init_call | convenience initializer missing a 'self' call to another initializer |
Warning | warn_objc_implementation_missing_designated_init_override | method override for the designated initializer of the superclass %objcinstance0 not found |
Error | err_objc_attr_not_id | parameter of %0 attribute must be a single name of an Objective-C %select{class|protocol}1 |
Error | err_objc_attr_typedef_not_id | parameter of %0 attribute must be 'id' when used on a typedef |
Error | err_objc_attr_typedef_not_void_pointer | 'objc_bridge(id)' is only allowed on structs and typedefs of void pointers |
Error | err_objc_cf_bridged_not_interface | CF object of type %0 is bridged to %1, which is not an Objective-C class |
Error | err_objc_ns_bridged_invalid_cfobject | ObjectiveC object of type %0 is bridged to %1, which is not valid CF object |
Warning | warn_objc_invalid_bridge | %0 bridges to %1, not %2 |
Warning | warn_objc_invalid_bridge_to_cf | %0 cannot bridge to %1 |
Error | err_objc_bridged_related_invalid_class | could not find Objective-C class %0 to convert %1 to %2 |
Error | err_objc_bridged_related_invalid_class_name | %0 must be name of an Objective-C class to be able to convert %1 to %2 |
Error | err_objc_bridged_related_known_method | [1]:%0 must be explicitly converted to %1; use %select{%objcclass2|%objcinstance2}3 [2]:method for this conversion |
Error | err_objc_attr_protocol_requires_definition | attribute %0 can only be applied to @protocol definitions, not forward declarations |
Error | err_param_with_void_type | argument may not have 'void' type |
Error | err_void_only_param | 'void' must be the first and only parameter if specified |
Error | err_void_param_qualified | 'void' as parameter must not have type qualifiers |
Error | err_ident_list_in_fn_declaration | a parameter list without types is only allowed in a function definition |
Extension | ext_param_not_declared | parameter %0 was not declared, defaulting to type 'int' |
Error | err_param_default_argument | C does not support default arguments |
Error | err_param_default_argument_redefinition | redefinition of default argument |
ExtWarn | ext_param_default_argument_redefinition | err_param_default_argument_redefinition.Text |
Error | err_param_default_argument_missing | missing default argument on parameter |
Error | err_param_default_argument_missing_name | missing default argument on parameter %0 |
Error | err_param_default_argument_references_param | default argument references parameter %0 |
Error | err_param_default_argument_references_local | default argument references local variable %0 of enclosing function |
Error | err_param_default_argument_references_this | default argument references 'this' |
Error | err_param_default_argument_nonfunc | [1]:default arguments can only be specified for parameters in a function [2]:declaration |
Error | err_param_default_argument_template_redecl | [1]:default arguments cannot be added to a function template that has already [2]:been declared |
Error | err_param_default_argument_member_template_redecl | [1]:default arguments cannot be added to an out-of-line definition of a member [2]:[1]:of a %select{class template|class template partial specialization|nested [2]:class in a template}0 |
Error | err_param_default_argument_on_parameter_pack | parameter pack cannot have a default argument |
Error | err_uninitialized_member_for_assign | [1]:cannot define the implicit copy assignment operator for %0, because [2]:[1]:non-static %select{reference|const}1 member %2 cannot use copy [2]:assignment operator |
Error | err_uninitialized_member_in_ctor | [1]:%select{|implicit default |inheriting }0constructor for %1 must explicitly [2]:initialize the %select{reference|const}2 member %3 |
Error | err_default_arg_makes_ctor_special | [1]:addition of default argument on redeclaration makes this constructor a [2]:%select{default|copy|move}0 constructor |
Error | err_use_of_default_argument_to_function_declared_later | use of default argument to function %0 that is declared later in class %1 |
Note | note_default_argument_declared_here | default argument declared here |
ExtWarn | ext_param_promoted_not_compatible_with_prototype | [1]:%diff{promoted type $ of K&R function parameter is not compatible with the [2]:[1]:parameter type $|promoted type of K&R function parameter is not compatible [2]:with parameter type}0,1 declared in a previous prototype |
Error | err_ovl_diff_return_type | functions that differ only in their return type cannot be overloaded |
Error | err_ovl_static_nonstatic_member | [1]:static and non-static member functions with the same parameter types [2]:cannot be overloaded |
Error | err_ovl_no_viable_function_in_call | no matching function for call to %0 |
Error | err_ovl_no_viable_member_function_in_call | no matching member function for call to %0 |
Error | err_ovl_ambiguous_call | call to %0 is ambiguous |
Error | err_ovl_deleted_call | call to %select{unavailable|deleted}0 function %1%2 |
Error | err_ovl_ambiguous_member_call | call to member function %0 is ambiguous |
Error | err_ovl_deleted_member_call | call to %select{unavailable|deleted}0 member function %1%2 |
Note | note_ovl_too_many_candidates | [1]:remaining %0 candidate%s0 omitted; [2]:pass -fshow-overloads=all to show them |
Note | note_ovl_candidate | [1]:candidate [2]:[1]:%select{function|function|constructor| [2]:[1]:function |function |constructor | [2]:[1]:is the implicit default constructor| [2]:[1]:is the implicit copy constructor| [2]:[1]:is the implicit move constructor| [2]:[1]:is the implicit copy assignment operator| [2]:[1]:is the implicit move assignment operator| [2]:[1]:is an inherited constructor}0%1 [2]:[1]:%select{| has different class%diff{ (expected $ but has $)|}3,4 [2]:[1]:| has different number of parameters (expected %3 but has %4) [2]:[1]:| has type mismatch at %ordinal3 parameter [2]:[1]:%diff{ (expected $ but has $)|}4,5 [2]:[1]:| has different return type%diff{ ($ expected but has $)|}3,4 [2]:[1]:| has different qualifiers (expected [2]:[1]:%select{none|const|restrict|const and restrict|volatile|const and volatile [2]:[1]:|volatile and restrict|const, volatile, and restrict}3 but found [2]:[1]:%select{none|const|restrict|const and restrict|volatile|const and volatile [2]:|volatile and restrict|const, volatile, and restrict}4)}2 |
Note | note_ovl_candidate_inherited_constructor | inherited from here |
Note | note_ovl_candidate_illegal_constructor | [1]:candidate %select{constructor|template}0 ignored: [2]:instantiation %select{takes|would take}0 its own class type by value |
Note | note_ovl_candidate_bad_deduction | candidate template ignored: failed template argument deduction |
Note | note_ovl_candidate_incomplete_deduction | [1]:candidate template ignored: [2]:couldn't infer template argument %0 |
Note | note_ovl_candidate_inconsistent_deduction | [1]:candidate template ignored: deduced conflicting %select{types|values| [2]:templates}0 for parameter %1%diff{ ($ vs. $)|}2,3 |
Note | note_ovl_candidate_explicit_arg_mismatch_named | [1]:candidate template ignored: invalid explicitly-specified argument [2]:for template parameter %0 |
Note | note_ovl_candidate_explicit_arg_mismatch_unnamed | [1]:candidate template ignored: invalid explicitly-specified argument [2]:for %ordinal0 template parameter |
Note | note_ovl_candidate_instantiation_depth | [1]:candidate template ignored: substitution exceeded maximum template [2]:instantiation depth |
Note | note_ovl_candidate_underqualified | [1]:candidate template ignored: cannot deduce a type for %0 that would [2]:make %2 equal %1 |
Note | note_ovl_candidate_substitution_failure | candidate template ignored: substitution failure%0%1 |
Note | note_ovl_candidate_disabled_by_enable_if | candidate template ignored: disabled by %0%1 |
Note | note_ovl_candidate_has_pass_object_size_params | [1]:candidate address cannot be taken because parameter %0 has [2]:pass_object_size attribute |
Note | note_ovl_candidate_disabled_by_enable_if_attr | candidate disabled: %0 |
Error | err_addrof_function_disabled_by_enable_if_attr | [1]:cannot take address of function %0 becuase it has one or more [2]:non-tautological enable_if conditions |
Note | note_addrof_ovl_candidate_disabled_by_enable_if_attr | candidate function made ineligible by enable_if |
Note | note_ovl_candidate_failed_overload_resolution | [1]:candidate template ignored: couldn't resolve reference to overloaded [2]:function %0 |
Note | note_ovl_candidate_deduced_mismatch | [1]:candidate template ignored: deduced type [2]:[1]:%diff{$ of %ordinal0 parameter does not match adjusted type $ of argument [2]:|of %ordinal0 parameter does not match adjusted type of argument}1,2%3 |
Note | note_ovl_candidate_non_deduced_mismatch | candidate template ignored: could not match %diff{$ against $|types}0,1 |
Note | note_ovl_candidate_non_deduced_mismatch_qualified | candidate template ignored: could not match %q0 against %q1 |
Note | note_ovl_candidate_arity | [1]:candidate [2]:[1]:%select{function|function|constructor|function|function|constructor| [2]:[1]:constructor (the implicit default constructor)| [2]:[1]:constructor (the implicit copy constructor)| [2]:[1]:constructor (the implicit move constructor)| [2]:[1]:function (the implicit copy assignment operator)| [2]:[1]:function (the implicit move assignment operator)| [2]:[1]:constructor (inherited)}0 %select{|template }1 [2]:[1]:not viable: requires%select{ at least| at most|}2 %3 argument%s3, but %4 [2]:%plural{1:was|:were}4 provided |
Note | note_ovl_candidate_arity_one | [1]:candidate [2]:[1]:%select{function|function|constructor|function|function|constructor| [2]:[1]:constructor (the implicit default constructor)| [2]:[1]:constructor (the implicit copy constructor)| [2]:[1]:constructor (the implicit move constructor)| [2]:[1]:function (the implicit copy assignment operator)| [2]:[1]:function (the implicit move assignment operator)| [2]:[1]:constructor (inherited)}0 %select{|template }1not viable: [2]:[1]:%select{requires at least|allows at most single|requires single}2 [2]:argument %3, but %plural{0:no|:%4}4 arguments were provided |
Note | note_ovl_candidate_deleted | [1]:candidate %select{function|function|constructor| [2]:[1]:function |function |constructor | [2]:[1]:constructor (the implicit default constructor)| [2]:[1]:constructor (the implicit copy constructor)| [2]:[1]:constructor (the implicit move constructor)| [2]:[1]:function (the implicit copy assignment operator)| [2]:[1]:function (the implicit move assignment operator)| [2]:[1]:constructor (inherited)}0%1 has been [2]:[1]:%select{explicitly made unavailable|explicitly deleted| [2]:implicitly deleted}2 |
Note | note_ovl_candidate_bad_conv_incomplete | [1]:candidate [2]:[1]:%select{function|function|constructor| [2]:[1]:function |function |constructor | [2]:[1]:constructor (the implicit default constructor)| [2]:[1]:constructor (the implicit copy constructor)| [2]:[1]:constructor (the implicit move constructor)| [2]:[1]:function (the implicit copy assignment operator)| [2]:[1]:function (the implicit move assignment operator)| [2]:[1]:constructor (inherited)}0%1 [2]:[1]:not viable: cannot convert argument of incomplete type [2]:[1]:%diff{$ to $|to parameter type}2,3 for [2]:[1]:%select{%ordinal5 argument|object argument}4 [2]:[1]:%select{|; dereference the argument with *| [2]:[1]:; take the address of the argument with &| [2]:[1]:; remove *| [2]:; remove &}6 |
Note | note_ovl_candidate_bad_list_argument | [1]:candidate [2]:[1]:%select{function|function|constructor| [2]:[1]:function |function |constructor | [2]:[1]:constructor (the implicit default constructor)| [2]:[1]:constructor (the implicit copy constructor)| [2]:[1]:constructor (the implicit move constructor)| [2]:[1]:function (the implicit copy assignment operator)| [2]:[1]:function (the implicit move assignment operator)| [2]:[1]:constructor (inherited)}0%1 [2]:not viable: cannot convert initializer list argument to %3 |
Note | note_ovl_candidate_bad_overload | [1]:candidate [2]:[1]:%select{function|function|constructor| [2]:[1]:function |function |constructor | [2]:[1]:constructor (the implicit default constructor)| [2]:[1]:constructor (the implicit copy constructor)| [2]:[1]:constructor (the implicit move constructor)| [2]:[1]:function (the implicit copy assignment operator)| [2]:[1]:function (the implicit move assignment operator)| [2]:[1]:constructor (inherited)}0%1 [2]: not viable: no overload of %3 matching %2 for %ordinal4 argument |
Note | note_ovl_candidate_bad_conv | [1]:candidate [2]:[1]:%select{function|function|constructor| [2]:[1]:function |function |constructor | [2]:[1]:constructor (the implicit default constructor)| [2]:[1]:constructor (the implicit copy constructor)| [2]:[1]:constructor (the implicit move constructor)| [2]:[1]:function (the implicit copy assignment operator)| [2]:[1]:function (the implicit move assignment operator)| [2]:[1]:constructor (inherited)}0%1 [2]:[1]: not viable: no known conversion [2]:[1]:%diff{from $ to $|from argument type to parameter type}2,3 for [2]:[1]:%select{%ordinal5 argument|object argument}4 [2]:[1]:%select{|; dereference the argument with *| [2]:[1]:; take the address of the argument with &| [2]:[1]:; remove *| [2]:; remove &}6 |
Note | note_ovl_candidate_bad_arc_conv | [1]:candidate [2]:[1]:%select{function|function|constructor| [2]:[1]:function |function |constructor | [2]:[1]:constructor (the implicit default constructor)| [2]:[1]:constructor (the implicit copy constructor)| [2]:[1]:constructor (the implicit move constructor)| [2]:[1]:function (the implicit copy assignment operator)| [2]:[1]:function (the implicit move assignment operator)| [2]:[1]:constructor (inherited)}0%1 [2]:[1]: not viable: cannot implicitly convert argument [2]:[1]:%diff{of type $ to $|type to parameter type}2,3 for [2]:%select{%ordinal5 argument|object argument}4 under ARC |
Note | note_ovl_candidate_bad_lvalue | [1]:candidate [2]:[1]:%select{function|function|constructor| [2]:[1]:function |function |constructor | [2]:[1]:constructor (the implicit default constructor)| [2]:[1]:constructor (the implicit copy constructor)| [2]:[1]:constructor (the implicit move constructor)| [2]:[1]:function (the implicit copy assignment operator)| [2]:[1]:function (the implicit move assignment operator)| [2]:[1]:constructor (inherited)}0%1 [2]:[1]: not viable: expects an l-value for [2]:%select{%ordinal3 argument|object argument}2 |
Note | note_ovl_candidate_bad_addrspace | [1]:candidate [2]:[1]:%select{function|function|constructor| [2]:[1]:function |function |constructor | [2]:[1]:constructor (the implicit default constructor)| [2]:[1]:constructor (the implicit copy constructor)| [2]:[1]:constructor (the implicit move constructor)| [2]:[1]:function (the implicit copy assignment operator)| [2]:[1]:function (the implicit move assignment operator)| [2]:[1]:constructor (inherited)}0%1 not viable: [2]:[1]:%select{%ordinal6|'this'}5 argument (%2) is in [2]:address space %3, but parameter must be in address space %4 |
Note | note_ovl_candidate_bad_gc | [1]:candidate [2]:[1]:%select{function|function|constructor| [2]:[1]:function |function |constructor | [2]:[1]:constructor (the implicit default constructor)| [2]:[1]:constructor (the implicit copy constructor)| [2]:[1]:constructor (the implicit move constructor)| [2]:[1]:function (the implicit copy assignment operator)| [2]:[1]:function (the implicit move assignment operator)| [2]:[1]:constructor (inherited)}0%1 not viable: [2]:[1]:%select{%ordinal6|'this'}5 argument (%2) has %select{no|__weak|__strong}3 [2]:ownership, but parameter has %select{no|__weak|__strong}4 ownership |
Note | note_ovl_candidate_bad_ownership | [1]:candidate [2]:[1]:%select{function|function|constructor| [2]:[1]:function |function |constructor | [2]:[1]:constructor (the implicit default constructor)| [2]:[1]:constructor (the implicit copy constructor)| [2]:[1]:constructor (the implicit move constructor)| [2]:[1]:function (the implicit copy assignment operator)| [2]:[1]:function (the implicit move assignment operator)| [2]:[1]:constructor (inherited)}0%1 not viable: [2]:[1]:%select{%ordinal6|'this'}5 argument (%2) has [2]:[1]:%select{no|__unsafe_unretained|__strong|__weak|__autoreleasing}3 ownership, [2]:[1]: but parameter has %select{no|__unsafe_unretained|__strong|__weak| [2]:__autoreleasing}4 ownership |
Note | note_ovl_candidate_bad_cvr_this | [1]:candidate [2]:[1]:%select{|function|||function||||| [2]:[1]:function (the implicit copy assignment operator)| [2]:[1]:function (the implicit move assignment operator)|}0 not viable: [2]:[1]:'this' argument has type %2, but method is not marked [2]:[1]:%select{const|restrict|const or restrict|volatile|const or volatile| [2]:volatile or restrict|const, volatile, or restrict}3 |
Note | note_ovl_candidate_bad_cvr | [1]:candidate [2]:[1]:%select{function|function|constructor| [2]:[1]:function |function |constructor | [2]:[1]:constructor (the implicit default constructor)| [2]:[1]:constructor (the implicit copy constructor)| [2]:[1]:constructor (the implicit move constructor)| [2]:[1]:function (the implicit copy assignment operator)| [2]:[1]:function (the implicit move assignment operator)| [2]:[1]:constructor (inherited)}0%1 not viable: [2]:[1]:%ordinal4 argument (%2) would lose [2]:[1]:%select{const|restrict|const and restrict|volatile|const and volatile| [2]:[1]:volatile and restrict|const, volatile, and restrict}3 qualifier [2]:%select{||s||s|s|s}3 |
Note | note_ovl_candidate_bad_base_to_derived_conv | [1]:candidate [2]:[1]:%select{function|function|constructor| [2]:[1]:function |function |constructor | [2]:[1]:constructor (the implicit default constructor)| [2]:[1]:constructor (the implicit copy constructor)| [2]:[1]:constructor (the implicit move constructor)| [2]:[1]:function (the implicit copy assignment operator)| [2]:[1]:function (the implicit move assignment operator)| [2]:[1]:constructor (inherited)}0%1 [2]:[1]: not viable: cannot %select{convert from|convert from|bind}2 [2]:[1]:%select{base class pointer|superclass|base class object of type}2 %3 to [2]:[1]:%select{derived class pointer|subclass|derived class reference}2 %4 for [2]:%ordinal5 argument |
Note | note_ovl_candidate_bad_target | [1]:candidate %select{function|function|constructor| [2]:[1]:function |function |constructor | [2]:[1]:constructor (the implicit default constructor)| [2]:[1]:constructor (the implicit copy constructor)| [2]:[1]:constructor (the implicit move constructor)| [2]:[1]:function (the implicit copy assignment operator)| [2]:[1]:function (the implicit move assignment operator)| [2]:[1]:constructor (inherited)}0 not viable: call to [2]:[1]:%select{__device__|__global__|__host__|__host__ __device__|invalid}1 function from [2]: %select{__device__|__global__|__host__|__host__ __device__|invalid}2 function |
Note | note_implicit_member_target_infer_collision | [1]:implicit %select{ [2]:[1]:default constructor| [2]:[1]:copy constructor| [2]:[1]:move constructor| [2]:[1]:copy assignment operator| [2]:[1]:move assignment operator| [2]:[1]:destructor}0 inferred target collision: call to both [2]:[1]:%select{__device__|__global__|__host__|__host__ __device__}1 and [2]:%select{__device__|__global__|__host__|__host__ __device__}2 members |
Note | note_ambiguous_type_conversion | because of ambiguity in conversion %diff{of $ to $|between types}0,1 |
Note | note_ovl_builtin_binary_candidate | built-in candidate %0 |
Note | note_ovl_builtin_unary_candidate | built-in candidate %0 |
Error | err_ovl_no_viable_function_in_init | no matching constructor for initialization of %0 |
Error | err_ovl_no_conversion_in_cast | cannot convert %1 to %2 without a conversion operator |
Error | err_ovl_no_viable_conversion_in_cast | [1]:no matching conversion for %select{|static_cast|reinterpret_cast| [2]:dynamic_cast|C-style cast|functional-style cast}0 from %1 to %2 |
Error | err_ovl_ambiguous_conversion_in_cast | [1]:ambiguous conversion for %select{|static_cast|reinterpret_cast| [2]:dynamic_cast|C-style cast|functional-style cast}0 from %1 to %2 |
Error | err_ovl_deleted_conversion_in_cast | [1]:%select{|static_cast|reinterpret_cast|dynamic_cast|C-style cast| [2]:functional-style cast}0 from %1 to %2 uses deleted function |
Error | err_ovl_ambiguous_init | call to constructor of %0 is ambiguous |
Error | err_ref_init_ambiguous | reference initialization of type %0 with initializer of type %1 is ambiguous |
Error | err_ovl_deleted_init | call to %select{unavailable|deleted}0 constructor of %1 |
Error | err_ovl_deleted_special_init | [1]:call to implicitly-deleted %select{default constructor|copy constructor| [2]:[1]:move constructor|copy assignment operator|move assignment operator| [2]:destructor|function}0 of %1 |
Error | err_ovl_ambiguous_oper_unary | use of overloaded operator '%0' is ambiguous (operand type %1) |
Error | err_ovl_ambiguous_oper_binary | use of overloaded operator '%0' is ambiguous (with operand types %1 and %2) |
Error | err_ovl_no_viable_oper | no viable overloaded '%0' |
Note | note_assign_lhs_incomplete | type %0 is incomplete |
Error | err_ovl_deleted_oper | overload resolution selected %select{unavailable|deleted}0 operator '%1'%2 |
Error | err_ovl_deleted_special_oper | [1]:object of type %0 cannot be %select{constructed|copied|moved|assigned| [2]:[1]:assigned|destroyed}1 because its %select{default constructor| [2]:[1]:copy constructor|move constructor|copy assignment operator| [2]:move assignment operator|destructor}1 is implicitly deleted |
Error | err_ovl_no_viable_subscript | no viable overloaded operator[] for type %0 |
Error | err_ovl_no_oper | type %0 does not provide a %select{subscript|call}1 operator |
Error | err_ovl_unresolvable | [1]:reference to overloaded function could not be resolved; [2]:did you mean to call it%select{| with no arguments}0? |
Error | err_bound_member_function | [1]:reference to non-static member function must be called [2]:%select{|; did you mean to call it with no arguments?}0 |
Note | note_possible_target_of_call | possible target for call |
Error | err_ovl_no_viable_object_call | no matching function for call to object of type %0 |
Error | err_ovl_ambiguous_object_call | call to object of type %0 is ambiguous |
Error | err_ovl_deleted_object_call | call to %select{unavailable|deleted}0 function call operator in type %1%2 |
Note | note_ovl_surrogate_cand | conversion candidate of type %0 |
Error | err_member_call_without_object | call to non-static member function without an object argument |
Error | err_addr_ovl_no_viable | address of overloaded function %0 does not match required type %1 |
Error | err_addr_ovl_ambiguous | address of overloaded function %0 is ambiguous |
Error | err_addr_ovl_not_func_ptrref | address of overloaded function %0 cannot be converted to type %1 |
Error | err_addr_ovl_no_qualifier | cannot form member pointer of type %0 without '&' and class name |
Error | err_ovl_no_viable_literal_operator | [1]:no matching literal operator for call to %0 [2]:[1]:%select{| with argument of type %2| with arguments of types %2 and %3}1 [2]:[1]:%select{| or 'const char *'}4 [2]:%select{|, and no matching literal operator template}5 |
Error | err_template_param_shadow | declaration of %0 shadows template parameter |
Note | note_template_param_here | template parameter is declared here |
Warning | warn_template_export_unsupported | exported templates are unsupported |
Error | err_template_outside_namespace_or_class_scope | templates can only be declared in namespace or class scope |
Error | err_template_inside_local_class | templates cannot be declared inside of a local class |
Error | err_template_linkage | templates must have C++ linkage |
Error | err_template_typedef | a typedef cannot be a template |
Error | err_template_unnamed_class | cannot declare a class template with no name |
Error | err_template_param_list_different_arity | [1]:%select{too few|too many}0 template parameters in template [2]:%select{|template parameter }1redeclaration |
Note | note_template_param_list_different_arity | [1]:%select{too few|too many}0 template parameters in template template [2]:argument |
Note | note_template_prev_declaration | previous template %select{declaration|template parameter}0 is here |
Error | err_template_param_different_kind | [1]:template parameter has a different kind in template [2]:%select{|template parameter }0redeclaration |
Note | note_template_param_different_kind | template parameter has a different kind in template argument |
Error | err_template_nontype_parm_different_type | [1]:template non-type parameter has a different type %0 in template [2]:%select{|template parameter }1redeclaration |
Note | note_template_nontype_parm_different_type | template non-type parameter has a different type %0 in template argument |
Note | note_template_nontype_parm_prev_declaration | previous non-type template parameter with type %0 is here |
Error | err_template_nontype_parm_bad_type | a non-type template parameter cannot have type %0 |
Error | err_template_param_default_arg_redefinition | template parameter redefines default argument |
Note | note_template_param_prev_default_arg | previous default template argument defined here |
Error | err_template_param_default_arg_missing | template parameter missing a default argument |
ExtWarn | ext_template_parameter_default_in_function_template | default template arguments for a function template are a C++11 extension |
Warning | warn_cxx98_compat_template_parameter_default_in_function_template | default template arguments for a function template are incompatible with C++98 |
Error | err_template_parameter_default_template_member | [1]:cannot add a default template argument to the definition of a member of a [2]:class template |
Error | err_template_parameter_default_friend_template | default template argument not permitted on a friend template |
Error | err_template_template_parm_no_parms | template template parameter must have its own template parameters |
ExtWarn | ext_variable_template | variable templates are a C++14 extension |
Warning | warn_cxx11_compat_variable_template | variable templates are incompatible with C++ standards before C++14 |
Error | err_template_variable_noparams | extraneous 'template<>' in declaration of variable %0 |
Error | err_template_member | member %0 declared as a template |
Error | err_template_member_noparams | extraneous 'template<>' in declaration of member %0 |
Error | err_template_tag_noparams | extraneous 'template<>' in declaration of %0 %1 |
Error | err_template_decl_ref | cannot refer to %select{class|variable}0 template %1 without a template argument list |
Error | err_template_missing_args | use of class template %0 requires template arguments |
Error | err_template_arg_list_different_arity | [1]:%select{too few|too many}0 template arguments for [2]:[1]:%select{class template|function template|template template parameter [2]:|template}1 %2 |
Note | note_template_decl_here | template is declared here |
Error | err_template_arg_must_be_type | template argument for template type parameter must be a type |
Error | err_template_arg_must_be_type_suggest | [1]:template argument for template type parameter must be a type; [2]:did you forget 'typename'? |
ExtWarn | ext_ms_template_type_arg_missing_typename | [1]:template argument for template type parameter must be a type; [2]:omitted 'typename' is a Microsoft extension |
Error | err_template_arg_must_be_expr | template argument for non-type template parameter must be an expression |
Error | err_template_arg_nontype_ambig | template argument for non-type template parameter is treated as function type %0 |
Error | err_template_arg_must_be_template | template argument for template template parameter must be a class template%select{| or type alias template}0 |
ExtWarn | ext_template_arg_local_type | template argument uses local type %0 |
ExtWarn | ext_template_arg_unnamed_type | template argument uses unnamed type |
Warning | warn_cxx98_compat_template_arg_local_type | local type %0 as template argument is incompatible with C++98 |
Warning | warn_cxx98_compat_template_arg_unnamed_type | unnamed type as template argument is incompatible with C++98 |
Note | note_template_unnamed_type_here | unnamed type used in template argument was declared here |
Error | err_template_arg_overload_type | template argument is the type of an unresolved overloaded function |
Error | err_template_arg_not_class_template | [1]:template argument does not refer to a class template or template [2]:template parameter |
Note | note_template_arg_refers_here_func | template argument refers to function template %0, here |
Error | err_template_arg_template_params_mismatch | [1]:template template argument has different template parameters than its [2]:corresponding template template parameter |
Error | err_template_arg_not_integral_or_enumeral | [1]:non-type template argument of type %0 must have an integral or enumeration [2]: type |
Error | err_template_arg_not_ice | [1]:non-type template argument of type %0 is not an integral constant [2]:expression |
Error | err_template_arg_not_address_constant | non-type template argument of type %0 is not a constant expression |
Warning | warn_cxx98_compat_template_arg_null | [1]:use of null pointer as non-type template argument is incompatible with [2]:C++98 |
Error | err_template_arg_untyped_null_constant | null non-type template argument must be cast to template parameter type %0 |
Error | err_template_arg_wrongtype_null_constant | [1]:null non-type template argument of type %0 does not match template parameter [2]:of type %1 |
Error | err_deduced_non_type_template_arg_type_mismatch | [1]:deduced non-type template argument does not have the same type as the [2]:its corresponding template parameter%diff{ ($ vs $)|}0,1 |
Error | err_non_type_template_arg_subobject | non-type template argument refers to subobject '%0' |
Error | err_non_type_template_arg_addr_label_diff | template argument / label address difference / what did you expect? |
Error | err_template_arg_not_convertible | [1]:non-type template argument of type %0 cannot be converted to a value [2]:of type %1 |
Warning | warn_template_arg_negative | [1]:non-type template argument with value '%0' converted to '%1' for unsigned [2]:template parameter of type %2 |
Warning | warn_template_arg_too_large | [1]:non-type template argument value '%0' truncated to '%1' for [2]:template parameter of type %2 |
Error | err_template_arg_no_ref_bind | [1]:non-type template parameter of reference type [2]:[1]:%diff{$ cannot bind to template argument of type $ [2]:|cannot bind to template of incompatible argument type}0,1 |
Error | err_template_arg_ref_bind_ignores_quals | [1]:reference binding of non-type template parameter [2]:[1]:%diff{of type $ to template argument of type $|to template argument}0,1 [2]:ignores qualifiers |
Error | err_template_arg_not_decl_ref | non-type template argument does not refer to any declaration |
Error | err_template_arg_not_address_of | [1]:non-type template argument for template parameter of pointer type %0 must [2]:have its address taken |
Error | err_template_arg_address_of_non_pointer | [1]:address taken in non-type template argument for template parameter of [2]:reference type %0 |
Error | err_template_arg_reference_var | non-type template argument of reference type %0 is not an object |
Error | err_template_arg_field | non-type template argument refers to non-static data member %0 |
Error | err_template_arg_method | non-type template argument refers to non-static member function %0 |
Error | err_template_arg_object_no_linkage | [1]:non-type template argument refers to %select{function|object}0 %1 that [2]:does not have linkage |
Warning | warn_cxx98_compat_template_arg_object_internal | [1]:non-type template argument referring to %select{function|object}0 %1 with [2]:internal linkage is incompatible with C++98 |
ExtWarn | ext_template_arg_object_internal | [1]:non-type template argument referring to %select{function|object}0 %1 with [2]:internal linkage is a C++11 extension |
Error | err_template_arg_thread_local | non-type template argument refers to thread-local object |
Note | note_template_arg_internal_object | non-type template argument refers to %select{function|object}0 here |
Note | note_template_arg_refers_here | non-type template argument refers here |
Error | err_template_arg_not_object_or_func | non-type template argument does not refer to an object or function |
Error | err_template_arg_not_pointer_to_member_form | non-type template argument is not a pointer to member constant |
Error | err_template_arg_member_ptr_base_derived_not_supported | [1]:sorry, non-type template argument of pointer-to-member type %1 that refers [2]:to member %q0 of a different class is not supported yet |
ExtWarn | ext_template_arg_extra_parens | address non-type template argument cannot be surrounded by parentheses |
Warning | warn_cxx98_compat_template_arg_extra_parens | [1]:redundant parentheses surrounding address non-type template argument are [2]:incompatible with C++98 |
Error | err_pointer_to_member_type | invalid use of pointer to member type after %select{.*|->*}0 |
Error | err_pointer_to_member_call_drops_quals | call to pointer to member function of type %0 drops '%1' qualifier%s2 |
Error | err_pointer_to_member_oper_value_classify | [1]:pointer-to-member function type %0 can only be called on an [2]:%select{rvalue|lvalue}1 |
ExtWarn | ext_ms_deref_template_argument | [1]:non-type template argument containing a dereference operation is a [2]:Microsoft extension |
ExtWarn | ext_ms_delayed_template_argument | [1]:using the undeclared type %0 as a default template argument is a [2]:Microsoft extension |
Error | err_template_spec_unknown_kind | [1]:can only provide an explicit specialization for a class template, function [2]:[1]:template, variable template, or a member function, static data member, [2]:[1]:%select{or member class|member class, or member enumeration}0 of a [2]:class template |
Note | note_specialized_entity | explicitly specialized declaration is here |
Error | err_template_spec_decl_function_scope | explicit specialization of %0 in function scope |
Error | err_template_spec_decl_class_scope | explicit specialization of %0 in class scope |
Error | err_template_spec_decl_friend | cannot declare an explicit specialization in a friend |
Error | err_template_spec_decl_out_of_scope_global | [1]:%select{class template|class template partial|variable template| [2]:[1]:variable template partial|function template|member function| [2]:[1]:static data member|member class|member enumeration}0 [2]:specialization of %1 must originally be declared in the global scope |
Error | err_template_spec_decl_out_of_scope | [1]:%select{class template|class template partial|variable template| [2]:[1]:variable template partial|function template|member [2]:[1]:function|static data member|member class|member enumeration}0 [2]:specialization of %1 must originally be declared in namespace %2 |
ExtWarn | ext_template_spec_decl_out_of_scope | [1]:first declaration of %select{class template|class template partial| [2]:[1]:variable template|variable template partial| [2]:[1]:function template|member function|static data member|member class| [2]:[1]:member enumeration}0 specialization of %1 outside namespace %2 is a [2]:C++11 extension |
Warning | warn_cxx98_compat_template_spec_decl_out_of_scope | [1]:%select{class template|class template partial|variable template| [2]:[1]:variable template partial|function template|member [2]:[1]:function|static data member|member class|member enumeration}0 [2]:specialization of %1 outside namespace %2 is incompatible with C++98 |
Error | err_template_spec_redecl_out_of_scope | [1]:%select{class template|class template partial|variable template| [2]:[1]:variable template partial|function template|member [2]:[1]:function|static data member|member class|member enumeration}0 [2]:specialization of %1 not in a namespace enclosing %2 |
ExtWarn | ext_ms_template_spec_redecl_out_of_scope | [1]:%select{class template|class template partial|variable template| [2]:[1]:variable template partial|function template|member [2]:[1]:function|static data member|member class|member enumeration}0 [2]:[1]:specialization of %1 outside namespace enclosing %2 [2]:is a Microsoft extension |
Error | err_template_spec_redecl_global_scope | [1]:%select{class template|class template partial|variable template| [2]:[1]:variable template partial|function template|member [2]:[1]:function|static data member|member class|member enumeration}0 [2]:specialization of %1 must occur at global scope |
Error | err_spec_member_not_instantiated | specialization of member %q0 does not specialize an instantiated member |
Note | note_specialized_decl | attempt to specialize declaration here |
Error | err_specialization_after_instantiation | explicit specialization of %0 after instantiation |
Note | note_instantiation_required_here | %select{implicit|explicit}0 instantiation first required here |
Error | err_template_spec_friend | template specialization declaration cannot be a friend |
Error | err_template_spec_default_arg | [1]:default argument not permitted on an explicit [2]:%select{instantiation|specialization}0 of function %1 |
Error | err_not_class_template_specialization | [1]:cannot specialize a %select{dependent template|template template [2]:parameter}0 |
Error | err_function_specialization_in_class | cannot specialize a function %0 within class scope |
ExtWarn | ext_function_specialization_in_class | explicit specialization of %0 within class scope is a Microsoft extension |
ExtWarn | ext_explicit_specialization_storage_class | explicit specialization cannot have a storage class |
Error | err_explicit_specialization_inconsistent_storage_class | [1]:explicit specialization has extraneous, inconsistent storage class [2]:'%select{none|extern|static|__private_extern__|auto|register}0' |
Error | err_template_spec_needs_header | template specialization requires 'template<>' |
Error | err_template_spec_needs_template_parameters | [1]:template specialization or definition requires a template parameter list [2]:corresponding to the nested type %0 |
Error | err_template_param_list_matches_nontemplate | [1]:template parameter list matching the non-templated nested type %0 should [2]:be empty ('template<>') |
Error | err_alias_template_extra_headers | extraneous template parameter list in alias template declaration |
Error | err_template_spec_extra_headers | [1]:extraneous template parameter list in template specialization or [2]:out-of-line template definition |
Warning | warn_template_spec_extra_headers | extraneous template parameter list in template specialization |
Note | note_explicit_template_spec_does_not_need_header | [1]:'template<>' header not required for explicitly-specialized class %0 [2]:declared here |
Error | err_template_qualified_declarator_no_match | [1]:nested name specifier '%0' for declaration does not refer into a class, [2]:class template or class template partial specialization |
Error | err_specialize_member_of_template | [1]:cannot specialize %select{|(with 'template<>') }0a member of an [2]:unspecialized template |
Error | err_default_arg_in_partial_spec | default template argument in a class template partial specialization |
Error | err_dependent_non_type_arg_in_partial_spec | [1]:non-type template argument depends on a template parameter of the [2]:partial specialization |
Note | note_dependent_non_type_default_arg_in_partial_spec | template parameter is used in default argument declared here |
Error | err_dependent_typed_non_type_arg_in_partial_spec | [1]:non-type template argument specializes a template parameter with [2]:dependent type %0 |
Error | err_partial_spec_args_match_primary_template | [1]:%select{class|variable}0 template partial specialization does not [2]:[1]:specialize any template argument; to %select{declare|define}1 the [2]:primary template, remove the template argument list |
Warning | warn_partial_specs_not_deducible | [1]:%select{class|variable}0 template partial specialization contains [2]:[1]:%select{a template parameter|template parameters}1 that cannot be [2]:deduced; this partial specialization will never be used |
Note | note_partial_spec_unused_parameter | non-deducible template parameter %0 |
Error | err_partial_spec_ordering_ambiguous | ambiguous partial specializations of %0 |
Note | note_partial_spec_match | partial specialization matches %0 |
Error | err_partial_spec_redeclared | class template partial specialization %0 cannot be redeclared |
Note | note_prev_partial_spec_here | previous declaration of class template partial specialization %0 is here |
Error | err_partial_spec_fully_specialized | partial specialization of %0 does not use any of its template parameters |
Error | err_var_partial_spec_redeclared | variable template partial specialization %0 cannot be redefined |
Note | note_var_prev_partial_spec_here | previous declaration of variable template partial specialization is here |
Error | err_var_spec_no_template | no variable template matches%select{| partial}0 specialization |
Error | err_var_spec_no_template_but_method | [1]:no variable template matches specialization; [2]:did you mean to use %0 as function template instead? |
Error | err_function_template_spec_no_match | no function template matches function template specialization %0 |
Error | err_function_template_spec_ambiguous | [1]:function template specialization %0 ambiguously refers to more than one [2]:[1]:function template; explicitly specify%select{| additional}1 template [2]:arguments to identify a particular function template |
Note | note_function_template_spec_matched | function template matches specialization %0 |
Error | err_function_template_partial_spec | function template partial specialization is not allowed |
Error | err_template_recursion_depth_exceeded | recursive template instantiation exceeded maximum depth of %0 |
Note | note_template_recursion_depth | use -ftemplate-depth=N to increase recursive template instantiation depth |
Error | err_template_instantiate_within_definition | [1]:%select{implicit|explicit}0 instantiation of template %1 within its [2]: own definition |
Error | err_template_instantiate_undefined | %select{implicit|explicit}0 instantiation of undefined template %1 |
Error | err_implicit_instantiate_member_undefined | implicit instantiation of undefined member %0 |
Note | note_template_class_instantiation_was_here | class template %0 was instantiated here |
Note | note_template_class_explicit_specialization_was_here | class template %0 was explicitly specialized here |
Note | note_template_class_instantiation_here | in instantiation of template class %0 requested here |
Note | note_template_member_class_here | in instantiation of member class %0 requested here |
Note | note_template_member_function_here | in instantiation of member function %q0 requested here |
Note | note_function_template_spec_here | in instantiation of function template specialization %q0 requested here |
Note | note_template_static_data_member_def_here | in instantiation of static data member %q0 requested here |
Note | note_template_variable_def_here | in instantiation of variable template specialization %q0 requested here |
Note | note_template_enum_def_here | in instantiation of enumeration %q0 requested here |
Note | note_template_nsdmi_here | in instantiation of default member initializer %q0 requested here |
Note | note_template_type_alias_instantiation_here | in instantiation of template type alias %0 requested here |
Note | note_template_exception_spec_instantiation_here | in instantiation of exception specification for %0 requested here |
Note | note_default_arg_instantiation_here | in instantiation of default argument for '%0' required here |
Note | note_default_function_arg_instantiation_here | [1]:in instantiation of default function argument expression [2]:for '%0' required here |
Note | note_explicit_template_arg_substitution_here | [1]:while substituting explicitly-specified template arguments into function [2]:template %0 %1 |
Note | note_function_template_deduction_instantiation_here | [1]:while substituting deduced template arguments into function template %0 [2]:%1 |
Note | note_partial_spec_deduct_instantiation_here | [1]:during template argument deduction for class template partial [2]:specialization %0 %1 |
Note | note_prior_template_arg_substitution | [1]:while substituting prior template arguments into %select{non-type|template}0 [2]: template parameter%1 %2 |
Note | note_template_default_arg_checking | while checking a default template argument used here |
Note | note_instantiation_contexts_suppressed | [1]:(skipping %0 context%s0 in backtrace; use -ftemplate-backtrace-limit=0 to [2]:see all) |
Error | err_field_instantiates_to_function | data member instantiated with function type %0 |
Error | err_variable_instantiates_to_function | %select{variable|static data member}0 instantiated with function type %1 |
Error | err_nested_name_spec_non_tag | type %0 cannot be used prior to '::' because it has no members |
Error | err_explicit_instantiation_duplicate | duplicate explicit instantiation of %0 |
ExtWarn | ext_explicit_instantiation_duplicate | duplicate explicit instantiation of %0 ignored as a Microsoft extension |
Note | note_previous_explicit_instantiation | previous explicit instantiation is here |
Extension | ext_explicit_instantiation_after_specialization | [1]:explicit instantiation of %0 that occurs after an explicit [2]:specialization will be ignored (C++11 extension) |
Warning | warn_cxx98_compat_explicit_instantiation_after_specialization | [1]:explicit instantiation of %0 that occurs after an explicit [2]:specialization is incompatible with C++98 |
Note | note_previous_template_specialization | previous template specialization is here |
Error | err_explicit_instantiation_nontemplate_type | explicit instantiation of non-templated type %0 |
Note | note_nontemplate_decl_here | non-templated declaration is here |
Error | err_explicit_instantiation_in_class | explicit instantiation of %0 in class scope |
Error | err_explicit_instantiation_out_of_scope | explicit instantiation of %0 not in a namespace enclosing %1 |
Error | err_explicit_instantiation_must_be_global | explicit instantiation of %0 must occur at global scope |
Warning | warn_explicit_instantiation_out_of_scope_0x | explicit instantiation of %0 not in a namespace enclosing %1 |
Warning | warn_explicit_instantiation_must_be_global_0x | explicit instantiation of %0 must occur at global scope |
Error | err_explicit_instantiation_requires_name | explicit instantiation declaration requires a name |
Error | err_explicit_instantiation_of_typedef | explicit instantiation of typedef %0 |
Error | err_explicit_instantiation_storage_class | explicit instantiation cannot have a storage class |
Error | err_explicit_instantiation_not_known | [1]:explicit instantiation of %0 does not refer to a function template, [2]:variable template, member function, member class, or static data member |
Note | note_explicit_instantiation_here | explicit instantiation refers here |
Error | err_explicit_instantiation_data_member_not_instantiated | [1]:explicit instantiation refers to static data member %q0 that is not an [2]:instantiation |
Error | err_explicit_instantiation_member_function_not_instantiated | [1]:explicit instantiation refers to member function %q0 that is not an [2]:instantiation |
Error | err_explicit_instantiation_ambiguous | partial ordering for explicit instantiation of %0 is ambiguous |
Note | note_explicit_instantiation_candidate | explicit instantiation candidate function template here %0 |
Error | err_explicit_instantiation_inline | explicit instantiation cannot be 'inline' |
Warning | warn_explicit_instantiation_inline_0x | explicit instantiation cannot be 'inline' |
Error | err_explicit_instantiation_constexpr | explicit instantiation cannot be 'constexpr' |
Extension | ext_explicit_instantiation_without_qualified_id | [1]:qualifier in explicit instantiation of %q0 requires a template-id [2]:(a typedef is not permitted) |
Error | err_explicit_instantiation_without_template_id | explicit instantiation of %q0 must specify a template argument list |
Error | err_explicit_instantiation_unqualified_wrong_namespace | explicit instantiation of %q0 must occur in namespace %1 |
Warning | warn_explicit_instantiation_unqualified_wrong_namespace_0x | explicit instantiation of %q0 must occur in namespace %1 |
Error | err_explicit_instantiation_undefined_member | [1]:explicit instantiation of undefined %select{member class|member function| [2]:static data member}0 %1 of class template %2 |
Error | err_explicit_instantiation_undefined_func_template | explicit instantiation of undefined function template %0 |
Error | err_explicit_instantiation_undefined_var_template | explicit instantiation of undefined variable template %q0 |
Error | err_explicit_instantiation_declaration_after_definition | [1]:explicit instantiation declaration (with 'extern') follows explicit [2]:instantiation definition (without 'extern') |
Note | note_explicit_instantiation_definition_here | explicit instantiation definition is here |
Error | err_invalid_var_template_spec_type | [1]:type %2 [2]:[1]:of %select{explicit instantiation|explicit specialization| [2]:[1]:partial specialization|redeclaration}0 of %1 does not match [2]: expected type %3 |
Error | err_mismatched_exception_spec_explicit_instantiation | [1]:exception specification in explicit instantiation does not match [2]:instantiated one |
ExtWarn | ext_mismatched_exception_spec_explicit_instantiation | err_mismatched_exception_spec_explicit_instantiation.Text |
Error | err_typename_nested_not_found | no type named %0 in %1 |
Error | err_typename_nested_not_found_enable_if | [1]:no type named 'type' in %0; 'enable_if' cannot be used to disable [2]:this declaration |
Error | err_typename_nested_not_type | typename specifier refers to non-type member %0 in %1 |
Note | note_typename_refers_here | referenced member %0 is declared here |
Error | err_typename_missing | missing 'typename' prior to dependent type name '%0%1' |
ExtWarn | ext_typename_missing | missing 'typename' prior to dependent type name '%0%1' |
ExtWarn | ext_typename_outside_of_template | 'typename' occurs outside of a template |
Warning | warn_cxx98_compat_typename_outside_of_template | use of 'typename' outside of a template is incompatible with C++98 |
Error | err_typename_refers_to_using_value_decl | [1]:typename specifier refers to a dependent using declaration for a value [2]:%0 in %1 |
Note | note_using_value_decl_missing_typename | add 'typename' to treat this using declaration as a type |
Error | err_template_kw_refers_to_non_template | %0 following the 'template' keyword does not refer to a template |
Error | err_template_kw_refers_to_class_template | '%0%1' instantiated to a class template, not a function template |
Error | note_referenced_class_template | class template declared here |
Error | err_template_kw_missing | missing 'template' keyword prior to dependent template name '%0%1' |
ExtWarn | ext_template_outside_of_template | 'template' keyword outside of a template |
Warning | warn_cxx98_compat_template_outside_of_template | use of 'template' keyword outside of a template is incompatible with C++98 |
Error | err_non_type_template_in_nested_name_specifier | [1]:qualified name refers into a specialization of %select{function|variable}0 [2]:template %1 |
Error | err_template_id_not_a_type | template name refers to non-type template %0 |
Note | note_template_declared_here | [1]:%select{function template|class template|variable template [2]:[1]:|type alias template|template template parameter}0 [2]:%1 declared here |
Error | err_alias_template_expansion_into_fixed_list | pack expansion used as argument for non-pack parameter of alias template |
Note | note_parameter_type | parameter of type %0 is declared here |
Error | err_template_param_pack_default_arg | template parameter pack cannot have a default argument |
Error | err_template_param_pack_must_be_last_template_parameter | template parameter pack must be the last template parameter |
Error | err_template_parameter_pack_non_pack | [1]:%select{template type|non-type template|template template}0 parameter [2]:[1]:%select{| pack}1 conflicts with previous %select{template type| [2]:non-type template|template template}0 parameter%select{ pack|}1 |
Note | note_template_parameter_pack_non_pack | [1]:%select{template type|non-type template|template template}0 parameter [2]:[1]:%select{| pack}1 does not match %select{template type|non-type template [2]:|template template}0 parameter%select{ pack|}1 in template argument |
Note | note_template_parameter_pack_here | [1]:previous %select{template type|non-type template|template template}0 [2]:parameter%select{| pack}1 declared here |
Error | err_unexpanded_parameter_pack | [1]:%select{expression|base type|declaration type|data member type|bit-field [2]:[1]:size|static assertion|fixed underlying type|enumerator value| [2]:[1]:using declaration|friend declaration|qualifier|initializer|default argument| [2]:[1]:non-type template parameter type|exception type|partial specialization| [2]:[1]:__if_exists name|__if_not_exists name|lambda|block}0 contains [2]:[1]:%plural{0: an|:}1 unexpanded parameter pack [2]:%plural{0:|1: %2|2:s %2 and %3|:s %2, %3, ...}1 |
Error | err_pack_expansion_without_parameter_packs | pack expansion does not contain any unexpanded parameter packs |
Error | err_pack_expansion_length_conflict | [1]:pack expansion contains parameter packs %0 and %1 that have different [2]:lengths (%2 vs. %3) |
Error | err_pack_expansion_length_conflict_multilevel | [1]:pack expansion contains parameter pack %0 that has a different [2]:length (%1 vs. %2) from outer parameter packs |
Error | err_pack_expansion_member_init | pack expansion for initialization of member %0 |
Error | err_function_parameter_pack_without_parameter_packs | [1]:type %0 of function parameter pack does not contain any unexpanded [2]:parameter packs |
Error | err_ellipsis_in_declarator_not_parameter | only function and template parameters can be parameter packs |
Error | err_sizeof_pack_no_pack_name | %0 does not refer to the name of a parameter pack |
Error | err_fold_expression_packs_both_sides | binary fold expression has unexpanded parameter packs in both operands |
Error | err_fold_expression_empty | [1]:unary fold expression has empty expansion for operator '%0' [2]:with no fallback value |
Error | err_fold_expression_bad_operand | expression not permitted as operand of fold expression |
Error | err_unexpected_typedef | unexpected type name %0: expected expression |
Error | err_unexpected_namespace | unexpected namespace name %0: expected expression |
Error | err_undeclared_var_use | use of undeclared identifier %0 |
ExtWarn | ext_undeclared_unqual_id_with_dependent_base | [1]:use of undeclared identifier %0; [2]:unqualified lookup into dependent bases of class template %1 is a Microsoft extension |
ExtWarn | ext_found_via_dependent_bases_lookup | [1]:use of identifier %0 [2]:[1]:found via unqualified lookup into dependent bases of class templates is a [2]:Microsoft extension |
Note | note_dependent_var_use | [1]:must qualify identifier to find this [2]:declaration in dependent base class |
Error | err_not_found_by_two_phase_lookup | [1]:call to function %0 that is neither [2]:visible in the template definition nor found by argument-dependent lookup |
Note | note_not_found_by_two_phase_lookup | [1]:%0 should be declared prior to the [2]:call site%select{| or in %2| or in an associated namespace of one of its arguments}1 |
Error | err_undeclared_use | use of undeclared %0 |
Warning | warn_partial_availability | %0 is only available conditionally |
Note | note_partial_availability_silence | explicitly redeclare %0 to silence this warning |
Warning | warn_partial_message | %0 is partial: %1 |
Warning | warn_partial_fwdclass_message | %0 may be partial because the receiver type is unknown |
Warning | warn_deprecated | %0 is deprecated |
Warning | warn_property_method_deprecated | property access is using %0 method which is deprecated |
Warning | warn_deprecated_message | %0 is deprecated: %1 |
Warning | warn_deprecated_anonymous_namespace | 'deprecated' attribute on anonymous namespace ignored |
Warning | warn_deprecated_fwdclass_message | %0 may be deprecated because the receiver type is unknown |
Warning | warn_deprecated_def | Implementing deprecated %select{method|class|category}0 |
Error | err_unavailable | %0 is unavailable |
Error | err_property_method_unavailable | property access is using %0 method which is unavailable |
Error | err_unavailable_message | %0 is unavailable: %1 |
Warning | warn_unavailable_fwdclass_message | %0 may be unavailable because the receiver type is unknown |
Note | note_availability_specified_here | [1]:%0 has been explicitly marked [2]:%select{unavailable|deleted|deprecated|partial}1 here |
Note | note_implicitly_deleted | explicitly defaulted function was implicitly deleted here |
Note | note_inherited_deleted_here | deleted constructor was inherited here |
Note | note_cannot_inherit | constructor cannot be inherited |
Warning | warn_not_enough_argument | not enough variable arguments in %0 declaration to fit a sentinel |
Warning | warn_missing_sentinel | missing sentinel in %select{function call|method dispatch|block call}0 |
Note | note_sentinel_here | %select{function|method|block}0 has been explicitly marked sentinel here |
Warning | warn_missing_prototype | no previous prototype for function %0 |
Note | note_declaration_not_a_prototype | this declaration is not a prototype; add 'void' to make it a prototype for a zero-parameter function |
Warning | warn_missing_variable_declarations | no previous extern declaration for non-static variable %0 |
Error | err_static_data_member_reinitialization | static data member %0 already has an initializer |
Error | err_redefinition | redefinition of %0 |
Error | err_alias_after_tentative | alias definition of %0 after tentative definition |
Error | err_alias_is_definition | definition %0 cannot also be an alias |
Error | err_definition_of_implicitly_declared_member | [1]:definition of implicitly declared %select{default constructor|copy [2]:[1]:constructor|move constructor|copy assignment operator|move assignment [2]:operator|destructor|function}1 |
Error | err_definition_of_explicitly_defaulted_member | [1]:definition of explicitly defaulted %select{default constructor|copy [2]:[1]:constructor|move constructor|copy assignment operator|move assignment [2]:operator|destructor}0 |
Error | err_redefinition_extern_inline | [1]:redefinition of a 'extern inline' function %0 is not supported in [2]:%select{C99 mode|C++}1 |
Warning | warn_attr_abi_tag_namespace | 'abi_tag' attribute on %select{non-inline|anonymous}0 namespace ignored |
Error | err_abi_tag_on_redeclaration | cannot add 'abi_tag' attribute in a redeclaration |
Error | err_new_abi_tag_on_redeclaration | 'abi_tag' %0 missing in original declaration |
Note | note_deleted_dtor_no_operator_delete | virtual destructor requires an unambiguous, accessible 'operator delete' |
Note | note_deleted_special_member_class_subobject | [1]:%select{default constructor|copy constructor|move constructor| [2]:[1]:copy assignment operator|move assignment operator|destructor}0 of [2]:[1]:%1 is implicitly deleted because [2]:[1]:%select{base class %3|%select{||||variant }4field %3}2 has [2]:[1]:%select{no|a deleted|multiple|an inaccessible|a non-trivial}4 [2]:[1]:%select{%select{default constructor|copy constructor|move constructor|copy [2]:[1]:assignment operator|move assignment operator|destructor}0|destructor}5 [2]:%select{||s||}4 |
Note | note_deleted_default_ctor_uninit_field | [1]:default constructor of %0 is implicitly deleted because field %1 of [2]:%select{reference|const-qualified}3 type %2 would not be initialized |
Note | note_deleted_default_ctor_all_const | [1]:default constructor of %0 is implicitly deleted because all [2]:[1]:%select{data members|data members of an anonymous union member}1 [2]: are const-qualified |
Note | note_deleted_copy_ctor_rvalue_reference | [1]:copy constructor of %0 is implicitly deleted because field %1 is of [2]:rvalue reference type %2 |
Note | note_deleted_copy_user_declared_move | [1]:copy %select{constructor|assignment operator}0 is implicitly deleted because [2]: %1 has a user-declared move %select{constructor|assignment operator}2 |
Note | note_deleted_assign_field | [1]:%select{copy|move}0 assignment operator of %1 is implicitly deleted [2]:because field %2 is of %select{reference|const-qualified}4 type %3 |
Warning | warn_undefined_internal | %select{function|variable}0 %q1 has internal linkage but is not defined |
Warning | warn_undefined_inline | inline function %q0 is not defined |
Note | note_used_here | used here |
Error | err_internal_linkage_redeclaration | 'internal_linkage' attribute does not appear on the first declaration of %0 |
Warning | warn_internal_linkage_local_storage | 'internal_linkage' attribute on a non-static local variable is ignored |
ExtWarn | ext_internal_in_extern_inline | [1]:static %select{function|variable}0 %1 is used in an inline function with [2]:external linkage |
Extension | ext_internal_in_extern_inline_quiet | [1]:static %select{function|variable}0 %1 is used in an inline function with [2]:external linkage |
Warning | warn_static_local_in_extern_inline | [1]:non-constant static local variable in inline function may be different [2]:in different files |
Note | note_convert_inline_to_static | use 'static' to give inline function %0 internal linkage |
ExtWarn | ext_redefinition_of_typedef | redefinition of typedef %0 is a C11 feature |
Error | err_redefinition_variably_modified_typedef | redefinition of %select{typedef|type alias}0 for variably-modified type %1 |
Error | err_inline_decl_follows_def | inline declaration of %0 follows non-inline definition |
Error | err_inline_declaration_block_scope | inline declaration of %0 not allowed in block scope |
Error | err_static_non_static | static declaration of %0 follows non-static declaration |
Error | err_different_language_linkage | declaration of %0 has a different language linkage |
Extension | ext_retained_language_linkage | friend function %0 retaining previous language linkage is an extension |
Error | err_extern_c_global_conflict | [1]:declaration of %1 %select{with C language linkage|in global scope}0 [2]:conflicts with declaration %select{in global scope|with C language linkage}0 |
Note | note_extern_c_global_conflict | declared %select{in global scope|with C language linkage}0 here |
Warning | warn_weak_import | an already-declared variable is made a weak_import declaration %0 |
Extension | ext_static_non_static | redeclaring non-static %0 as static is a Microsoft extension |
Error | err_non_static_static | non-static declaration of %0 follows static declaration |
Error | err_extern_non_extern | extern declaration of %0 follows non-extern declaration |
Error | err_non_extern_extern | non-extern declaration of %0 follows extern declaration |
Error | err_non_thread_thread | non-thread-local declaration of %0 follows thread-local declaration |
Error | err_thread_non_thread | thread-local declaration of %0 follows non-thread-local declaration |
Error | err_thread_thread_different_kind | [1]:thread-local declaration of %0 with %select{static|dynamic}1 initialization [2]:follows declaration with %select{dynamic|static}1 initialization |
Error | err_redefinition_different_type | redefinition of %0 with a different type%diff{: $ vs $|}1,2 |
Error | err_redefinition_different_kind | redefinition of %0 as different kind of symbol |
Error | err_redefinition_different_namespace_alias | redefinition of %0 as an alias for a different namespace |
Note | note_previous_namespace_alias | previously defined as an alias for %0 |
Warning | warn_forward_class_redefinition | redefinition of forward class %0 of a typedef name of an object type is ignored |
Error | err_redefinition_different_typedef | [1]:%select{typedef|type alias|type alias template}0 [2]:redefinition with different types%diff{ ($ vs $)|}1,2 |
Error | err_tag_reference_non_tag | elaborated type refers to %select{a non-tag type|a typedef|a type alias|a template|a type alias template}0 |
Error | err_tag_reference_conflict | [1]:implicit declaration introduced by elaborated type conflicts with [2]:%select{a declaration|a typedef|a type alias|a template}0 of the same name |
Error | err_dependent_tag_decl | [1]:%select{declaration|definition}0 of [2]:%select{struct|interface|union|class|enum}1 in a dependent scope |
Error | err_tag_definition_of_typedef | definition of type %0 conflicts with %select{typedef|type alias}1 of the same name |
Error | err_conflicting_types | conflicting types for %0 |
Error | err_different_pass_object_size_params | conflicting pass_object_size attributes on parameters |
Error | err_late_asm_label_name | cannot apply asm label to %select{variable|function}0 after its first use |
Error | err_different_asm_label | conflicting asm label |
Error | err_nested_redefinition | nested redefinition of %0 |
Error | err_use_with_wrong_tag | use of %0 with tag type that does not match previous declaration |
Warning | warn_struct_class_tag_mismatch | [1]:%select{struct|interface|class}0%select{| template}1 %2 was previously [2]:declared as a %select{struct|interface|class}3%select{| template}1 |
Warning | warn_struct_class_previous_tag_mismatch | [1]:%2 defined as %select{a struct|an interface|a class}0%select{| template}1 [2]:[1]:here but previously declared as [2]:%select{a struct|an interface|a class}3%select{| template}1 |
Note | note_struct_class_suggestion | did you mean %select{struct|interface|class}0 here? |
Extension | ext_forward_ref_enum | ISO C forbids forward references to 'enum' types |
Error | err_forward_ref_enum | ISO C++ forbids forward references to 'enum' types |
Extension | ext_ms_forward_ref_enum | forward references to 'enum' types are a Microsoft extension |
Extension | ext_forward_ref_enum_def | redeclaration of already-defined enum %0 is a GNU extension |
Error | err_redefinition_of_enumerator | redefinition of enumerator %0 |
Error | err_duplicate_member | duplicate member %0 |
Error | err_misplaced_ivar | instance variables may not be placed in %select{categories|class extension}0 |
Warning | warn_ivars_in_interface | declaration of instance variables in the interface is deprecated |
Extension | ext_enum_value_not_int | [1]:ISO C restricts enumerator values to range of 'int' (%0 is too [2]:%select{small|large}1) |
ExtWarn | ext_enum_too_large | enumeration values exceed range of largest integer |
ExtWarn | ext_enumerator_increment_too_large | [1]:incremented enumerator value %0 is not representable in the [2]:largest integer type |
Warning | warn_flag_enum_constant_out_of_range | enumeration value %0 is out of range of flags in enumeration type %1 |
Extension | warn_illegal_constant_array_size | size of static array must be an integer constant expression |
Error | err_vm_decl_in_file_scope | variably modified type declaration not allowed at file scope |
Error | err_vm_decl_has_extern_linkage | variably modified type declaration cannot have 'extern' linkage |
Error | err_typecheck_field_variable_size | [1]:fields must have a constant size: 'variable length array in structure' [2]:extension will never be supported |
Error | err_vm_func_decl | function declaration cannot have variably modified type |
Error | err_array_too_large | array is too large (%0 elements) |
Warning | warn_array_new_too_large | array is too large (%0 elements) |
Warning | warn_padded_struct_field | [1]:padding %select{struct|interface|class}0 %1 with %2 [2]:%select{byte|bit}3%s2 to align %4 |
Warning | warn_padded_struct_anon_field | [1]:padding %select{struct|interface|class}0 %1 with %2 [2]:%select{byte|bit}3%s2 to align anonymous bit-field |
Warning | warn_padded_struct_size | padding size of %0 with %1 %select{byte|bit}2%s1 to alignment boundary |
Warning | warn_unnecessary_packed | packed attribute is unnecessary for %0 |
Error | err_typecheck_negative_array_size | array size is negative |
Warning | warn_typecheck_negative_array_new_size | array size is negative |
Warning | warn_typecheck_function_qualifiers_ignored | '%0' qualifier on function type %1 has no effect |
Warning | warn_typecheck_function_qualifiers_unspecified | '%0' qualifier on function type %1 has unspecified behavior |
Warning | warn_typecheck_reference_qualifiers | '%0' qualifier on reference type %1 has no effect |
Error | err_typecheck_invalid_restrict_not_pointer | restrict requires a pointer or reference (%0 is invalid) |
Error | err_typecheck_invalid_restrict_not_pointer_noarg | restrict requires a pointer or reference |
Error | err_typecheck_invalid_restrict_invalid_pointee | pointer to function type %0 may not be 'restrict' qualified |
Extension | ext_typecheck_zero_array_size | zero size arrays are an extension |
Error | err_typecheck_zero_array_size | zero-length arrays are not permitted in C++ |
Warning | warn_typecheck_zero_static_array_size | 'static' has no effect on zero-length arrays |
Error | err_array_size_non_int | size of array has non-integer type %0 |
Error | err_init_element_not_constant | initializer element is not a compile-time constant |
Extension | ext_aggregate_init_not_constant | initializer for aggregate is not a compile-time constant |
Error | err_local_cant_init | '__local' variable cannot have an initializer |
Error | err_block_extern_cant_init | 'extern' variable cannot have an initializer |
Warning | warn_extern_init | 'extern' variable has an initializer |
Error | err_variable_object_no_init | variable-sized object may not be initialized |
Error | err_excess_initializers | excess elements in %select{array|vector|scalar|union|struct}0 initializer |
ExtWarn | ext_excess_initializers | excess elements in %select{array|vector|scalar|union|struct}0 initializer |
Error | err_excess_initializers_in_char_array_initializer | excess elements in char array initializer |
ExtWarn | ext_excess_initializers_in_char_array_initializer | excess elements in char array initializer |
Error | err_initializer_string_for_char_array_too_long | initializer-string for char array is too long |
ExtWarn | ext_initializer_string_for_char_array_too_long | initializer-string for char array is too long |
Warning | warn_missing_field_initializers | missing field %0 initializer |
Warning | warn_braces_around_scalar_init | braces around scalar initializer |
ExtWarn | ext_many_braces_around_scalar_init | too many braces around scalar initializer |
Extension | ext_complex_component_init | [1]:complex initialization specifying real and imaginary components [2]:is an extension |
Error | err_empty_scalar_initializer | scalar initializer cannot be empty |
Warning | warn_cxx98_compat_empty_scalar_initializer | scalar initialized from empty initializer list is incompatible with C++98 |
Warning | warn_cxx98_compat_reference_list_init | reference initialized from initializer list is incompatible with C++98 |
Warning | warn_cxx98_compat_initializer_list_init | initialization of initializer_list object is incompatible with C++98 |
Warning | warn_cxx98_compat_ctor_list_init | constructor call from initializer list is incompatible with C++98 |
Error | err_illegal_initializer | illegal initializer (only variables can be initialized) |
Error | err_illegal_initializer_type | illegal initializer type %0 |
ExtWarn | ext_init_list_type_narrowing | type %0 cannot be narrowed to %1 in initializer list |
ExtWarn | ext_init_list_variable_narrowing | [1]:non-constant-expression cannot be narrowed from type %0 to %1 in [2]:initializer list |
ExtWarn | ext_init_list_constant_narrowing | constant expression evaluates to %0 which cannot be narrowed to type %1 |
Warning | warn_init_list_type_narrowing | type %0 cannot be narrowed to %1 in initializer list in C++11 |
Warning | warn_init_list_variable_narrowing | [1]:non-constant-expression cannot be narrowed from type %0 to %1 in [2]:initializer list in C++11 |
Warning | warn_init_list_constant_narrowing | [1]:constant expression evaluates to %0 which cannot be narrowed to type %1 in [2]:C++11 |
Note | note_init_list_narrowing_silence | insert an explicit cast to silence this issue |
Error | err_init_objc_class | cannot initialize Objective-C class type %0 |
Error | err_implicit_empty_initializer | initializer for aggregate with no elements requires explicit braces |
Error | err_bitfield_has_negative_width | bit-field %0 has negative width (%1) |
Error | err_anon_bitfield_has_negative_width | anonymous bit-field has negative width (%0) |
Error | err_bitfield_has_zero_width | named bit-field %0 has zero width |
Error | err_bitfield_width_exceeds_type_width | [1]:width of bit-field %0 (%1 bits) exceeds %select{width|size}2 [2]:of its type (%3 bit%s3) |
Error | err_anon_bitfield_width_exceeds_type_width | [1]:width of anonymous bit-field (%0 bits) exceeds %select{width|size}1 [2]:of its type (%2 bit%s2) |
Error | err_incorrect_number_of_vector_initializers | number of elements must be either one or match the size of the vector |
Warning | warn_bitfield_width_exceeds_type_width | [1]:width of bit-field %0 (%1 bits) exceeds the width of its type; value will [2]:be truncated to %2 bit%s2 |
Warning | warn_anon_bitfield_width_exceeds_type_width | [1]:width of anonymous bit-field (%0 bits) exceeds width of its type; value [2]:will be truncated to %1 bit%s1 |
Warning | warn_missing_braces | suggest braces around initialization of subobject |
Error | err_redefinition_of_label | redefinition of label %0 |
Error | err_undeclared_label_use | use of undeclared label %0 |
Error | err_goto_ms_asm_label | cannot jump from this goto statement to label %0 inside an inline assembly block |
Note | note_goto_ms_asm_label | inline assembly label %0 declared here |
Warning | warn_unused_label | unused label %0 |
Error | err_goto_into_protected_scope | cannot jump from this goto statement to its label |
ExtWarn | ext_goto_into_protected_scope | jump from this goto statement to its label is a Microsoft extension |
Warning | warn_cxx98_compat_goto_into_protected_scope | jump from this goto statement to its label is incompatible with C++98 |
Error | err_switch_into_protected_scope | cannot jump from switch statement to this case label |
Warning | warn_cxx98_compat_switch_into_protected_scope | jump from switch statement to this case label is incompatible with C++98 |
Error | err_indirect_goto_without_addrlabel | indirect goto in function with no address-of-label expressions |
Error | err_indirect_goto_in_protected_scope | cannot jump from this indirect goto statement to one of its possible targets |
Warning | warn_cxx98_compat_indirect_goto_in_protected_scope | [1]:jump from this indirect goto statement to one of its possible targets [2]:is incompatible with C++98 |
Note | note_indirect_goto_target | possible target of indirect goto statement |
Note | note_protected_by_variable_init | jump bypasses variable initialization |
Note | note_protected_by_variable_nontriv_destructor | jump bypasses variable with a non-trivial destructor |
Note | note_protected_by_variable_non_pod | jump bypasses initialization of non-POD variable |
Note | note_protected_by_cleanup | jump bypasses initialization of variable with __attribute__((cleanup)) |
Note | note_protected_by_vla_typedef | jump bypasses initialization of VLA typedef |
Note | note_protected_by_vla_type_alias | jump bypasses initialization of VLA type alias |
Note | note_protected_by_vla | jump bypasses initialization of variable length array |
Note | note_protected_by_objc_try | jump bypasses initialization of @try block |
Note | note_protected_by_objc_catch | jump bypasses initialization of @catch block |
Note | note_protected_by_objc_finally | jump bypasses initialization of @finally block |
Note | note_protected_by_objc_synchronized | jump bypasses initialization of @synchronized block |
Note | note_protected_by_objc_autoreleasepool | jump bypasses auto release push of @autoreleasepool block |
Note | note_protected_by_cxx_try | jump bypasses initialization of try block |
Note | note_protected_by_cxx_catch | jump bypasses initialization of catch block |
Note | note_protected_by_seh_try | jump bypasses initialization of __try block |
Note | note_protected_by_seh_except | jump bypasses initialization of __except block |
Note | note_protected_by_seh_finally | jump bypasses initialization of __finally block |
Note | note_protected_by___block | jump bypasses setup of __block variable |
Note | note_protected_by_objc_strong_init | jump bypasses initialization of __strong variable |
Note | note_protected_by_objc_weak_init | jump bypasses initialization of __weak variable |
Note | note_enters_block_captures_cxx_obj | jump enters lifetime of block which captures a destructible C++ object |
Note | note_enters_block_captures_strong | jump enters lifetime of block which strongly captures a variable |
Note | note_enters_block_captures_weak | jump enters lifetime of block which weakly captures a variable |
Note | note_exits_cleanup | jump exits scope of variable with __attribute__((cleanup)) |
Note | note_exits_dtor | jump exits scope of variable with non-trivial destructor |
Note | note_exits_temporary_dtor | [1]:jump exits scope of lifetime-extended temporary with non-trivial [2]:destructor |
Note | note_exits___block | jump exits scope of __block variable |
Note | note_exits_objc_try | jump exits @try block |
Note | note_exits_objc_catch | jump exits @catch block |
Note | note_exits_objc_finally | jump exits @finally block |
Note | note_exits_objc_synchronized | jump exits @synchronized block |
Note | note_exits_cxx_try | jump exits try block |
Note | note_exits_cxx_catch | jump exits catch block |
Note | note_exits_seh_try | jump exits __try block |
Note | note_exits_seh_except | jump exits __except block |
Note | note_exits_seh_finally | jump exits __finally block |
Note | note_exits_objc_autoreleasepool | jump exits autoreleasepool block |
Note | note_exits_objc_strong | jump exits scope of __strong variable |
Note | note_exits_objc_weak | jump exits scope of __weak variable |
Note | note_exits_block_captures_cxx_obj | jump exits lifetime of block which captures a destructible C++ object |
Note | note_exits_block_captures_strong | jump exits lifetime of block which strongly captures a variable |
Note | note_exits_block_captures_weak | jump exits lifetime of block which weakly captures a variable |
ExtWarn | err_func_returning_qualified_void | function cannot return qualified void type %0 |
Error | err_func_returning_array_function | function cannot return %select{array|function}0 type %1 |
Error | err_field_declared_as_function | field %0 declared as a function |
Error | err_field_incomplete | field has incomplete type %0 |
ExtWarn | ext_variable_sized_type_in_struct | [1]:field %0 with variable sized type %1 not at the end of a struct or class is [2]: a GNU extension |
Extension | ext_c99_flexible_array_member | flexible array members are a C99 feature |
Error | err_flexible_array_virtual_base | [1]:flexible array member %0 not allowed in [2]:%select{struct|interface|union|class|enum}1 which has a virtual base class |
Error | err_flexible_array_empty_aggregate | [1]:flexible array member %0 not allowed in otherwise empty [2]:%select{struct|interface|union|class|enum}1 |
Error | err_flexible_array_has_nontrivial_dtor | flexible array member %0 of type %1 with non-trivial destruction |
Extension | ext_flexible_array_in_struct | %0 may not be nested in a struct due to flexible array member |
Extension | ext_flexible_array_in_array | %0 may not be used as an array element due to flexible array member |
Error | err_flexible_array_init | initialization of flexible array member is not allowed |
Extension | ext_flexible_array_empty_aggregate_ms | [1]:flexible array member %0 in otherwise empty [2]:%select{struct|interface|union|class|enum}1 is a Microsoft extension |
Error | err_flexible_array_union | flexible array member %0 in a union is not allowed |
Extension | ext_flexible_array_union_ms | flexible array member %0 in a union is a Microsoft extension |
Extension | ext_flexible_array_empty_aggregate_gnu | [1]:flexible array member %0 in otherwise empty [2]:%select{struct|interface|union|class|enum}1 is a GNU extension |
Extension | ext_flexible_array_union_gnu | flexible array member %0 in a union is a GNU extension |
Error | err_arc_weak_no_runtime | [1]:cannot create __weak reference because the current deployment target [2]:does not support weak references |
Error | err_arc_weak_disabled | cannot create __weak reference in file using manual reference counting |
Error | err_synthesizing_arc_weak_property_disabled | cannot synthesize weak property in file using manual reference counting |
Error | err_synthesizing_arc_weak_property_no_runtime | [1]:cannot synthesize weak property because the current deployment target [2]:does not support weak references |
Error | err_arc_unsupported_weak_class | class is incompatible with __weak references |
Error | err_arc_weak_unavailable_assign | assignment of a weak-unavailable object to a __weak object |
Error | err_arc_weak_unavailable_property | [1]:synthesizing __weak instance variable of type %0, which does not [2]:support weak references |
Note | note_implemented_by_class | when implemented by class %0 |
Error | err_arc_convesion_of_weak_unavailable | [1]:%select{implicit conversion|cast}0 of weak-unavailable object of type %1 to [2]: a __weak object of type %2 |
Error | err_unavailable_in_arc | %0 is unavailable in ARC |
Note | note_arc_forbidden_type | declaration uses type that is ill-formed in ARC |
Note | note_performs_forbidden_arc_conversion | inline function performs a conversion which is forbidden in ARC |
Note | note_arc_init_returns_unrelated | init method must return a type related to its receiver type |
Note | note_arc_weak_disabled | declaration uses __weak, but ARC is disabled |
Note | note_arc_weak_no_runtime | [1]:declaration uses __weak, which [2]:the current deployment target does not support |
Note | note_arc_field_with_ownership | field has non-trivial ownership qualification |
Error | err_arc_illegal_explicit_message | ARC forbids explicit message send of %0 |
Error | err_arc_unused_init_message | [1]:the result of a delegate init call must be immediately returned [2]:or assigned to 'self' |
Error | err_arc_mismatched_cast | [1]:%select{implicit conversion|cast}0 of [2]:[1]:%select{%2|a non-Objective-C pointer type %2|a block pointer| [2]:[1]:an Objective-C pointer|an indirect pointer to an Objective-C pointer}1 [2]: to %3 is disallowed with ARC |
Error | err_arc_nolifetime_behavior | explicit ownership qualifier on cast result has no effect |
Error | err_arc_objc_object_in_tag | [1]:ARC forbids %select{Objective-C objects|blocks}0 in [2]:%select{struct|interface|union|<>|enum}1 |
Error | err_arc_objc_property_default_assign_on_object | [1]:ARC forbids synthesizing a property of an Objective-C object [2]:with unspecified ownership or storage attribute |
Error | err_arc_illegal_selector | ARC forbids use of %0 in a @selector |
Error | err_arc_illegal_method_def | ARC forbids %select{implementation|synthesis}0 of %1 |
Warning | warn_arc_strong_pointer_objc_pointer | method parameter of type %0 with no explicit ownership |
Error | err_arc_lost_method_convention | [1]:method was declared as %select{an 'alloc'|a 'copy'|an 'init'|a 'new'}0 [2]:[1]:method, but its implementation doesn't match because %select{ [2]:[1]:its result type is not an object pointer| [2]:its result type is unrelated to its receiver type}1 |
Note | note_arc_lost_method_convention | declaration in interface |
Error | err_arc_gained_method_convention | method implementation does not match its declaration |
Note | note_arc_gained_method_convention | [1]:declaration in interface is not in the '%select{alloc|copy|init|new}0' [2]:[1]:family because %select{its result type is not an object pointer| [2]:its result type is unrelated to its receiver type}1 |
Error | err_typecheck_arc_assign_self | cannot assign to 'self' outside of a method in the init family |
Error | err_typecheck_arc_assign_self_class_method | cannot assign to 'self' in a class method |
Error | err_typecheck_arr_assign_enumeration | [1]:fast enumeration variables cannot be modified in ARC by default; [2]:declare the variable __strong to allow this |
Warning | warn_arc_retained_assign | [1]:assigning retained object to %select{weak|unsafe_unretained}0 [2]:[1]:%select{property|variable}1 [2]:; object will be released after assignment |
Warning | warn_arc_retained_property_assign | [1]:assigning retained object to unsafe property [2]:; object will be released after assignment |
Warning | warn_arc_literal_assign | [1]:assigning %select{array literal|dictionary literal|numeric literal|boxed expression||block literal}0 [2]:[1]: to a weak %select{property|variable}1 [2]:; object will be released after assignment |
Error | err_arc_new_array_without_ownership | 'new' cannot allocate an array of %0 with no explicit ownership |
Error | err_arc_autoreleasing_var | [1]:%select{__block variables|global variables|fields|instance variables}0 cannot have [2]:__autoreleasing ownership |
Error | err_arc_autoreleasing_capture | [1]:cannot capture __autoreleasing variable in a [2]:%select{block|lambda by copy}0 |
Error | err_arc_thread_ownership | thread-local variable has non-trivial ownership: type is %0 |
Error | err_arc_indirect_no_ownership | %select{pointer|reference}1 to non-const type %0 with no explicit ownership |
Error | err_arc_array_param_no_ownership | must explicitly describe intended ownership of an object array parameter |
Error | err_arc_pseudo_dtor_inconstant_quals | [1]:pseudo-destructor destroys object of type %0 with inconsistently-qualified [2]:type %1 |
Error | err_arc_init_method_unrelated_result_type | init methods must return a type related to the receiver type |
Error | err_arc_nonlocal_writeback | [1]:passing address of %select{non-local|non-scalar}0 object to [2]:__autoreleasing parameter for write-back |
Error | err_arc_method_not_found | no known %select{instance|class}1 method for selector %0 |
Error | err_arc_receiver_forward_class | receiver %0 for class message is a forward declaration |
Error | err_arc_may_not_respond | no visible @interface for %0 declares the selector %1 |
Error | err_arc_receiver_forward_instance | receiver type %0 for instance message is a forward declaration |
Warning | warn_receiver_forward_instance | receiver type %0 for instance message is a forward declaration |
Error | err_arc_collection_forward | collection expression type %0 is a forward declaration |
Error | err_arc_multiple_method_decl | [1]:multiple methods named %0 found with mismatched result, [2]:parameter type or attributes |
Warning | warn_arc_lifetime_result_type | [1]:ARC %select{unused|__unsafe_unretained|__strong|__weak|__autoreleasing}0 [2]:lifetime qualifier on return type is ignored |
Warning | warn_arc_retain_cycle | capturing %0 strongly in this block is likely to lead to a retain cycle |
Note | note_arc_retain_cycle_owner | [1]:block will be retained by %select{the captured object|an object strongly [2]:retained by the captured object}0 |
Warning | warn_arc_object_memaccess | [1]:%select{destination for|source of}0 this %1 call is a pointer to [2]:ownership-qualified type %2 |
Error | err_arc_strong_property_ownership | [1]:existing instance variable %1 for strong property %0 may not be [2]:%select{|__unsafe_unretained||__weak}2 |
Error | err_arc_assign_property_ownership | [1]:existing instance variable %1 for property %0 with %select{unsafe_unretained|assign}2 [2]:attribute must be __unsafe_unretained |
Error | err_arc_inconsistent_property_ownership | [1]:%select{|unsafe_unretained|strong|weak}1 property %0 may not also be [2]:declared %select{|__unsafe_unretained|__strong|__weak|__autoreleasing}2 |
Error | err_arc_atomic_ownership | [1]:cannot perform atomic operation on a pointer to type %0: type has [2]:non-trivial ownership |
Error | err_arc_bridge_cast_incompatible | [1]:incompatible types casting %0 to %1 with a %select{__bridge| [2]:__bridge_transfer|__bridge_retained}2 cast |
Error | err_arc_bridge_cast_wrong_kind | [1]:cast of %select{Objective-C|block|C}0 pointer type %1 to [2]:[1]:%select{Objective-C|block|C}2 pointer type %3 cannot use %select{__bridge| [2]:__bridge_transfer|__bridge_retained}4 |
Error | err_arc_cast_requires_bridge | [1]:%select{cast|implicit conversion}0 of %select{Objective-C|block|C}1 [2]:[1]:pointer type %2 to %select{Objective-C|block|C}3 pointer type %4 [2]:requires a bridged cast |
Note | note_arc_bridge | use __bridge to convert directly (no change in ownership) |
Note | note_arc_cstyle_bridge | use __bridge with C-style cast to convert directly (no change in ownership) |
Note | note_arc_bridge_transfer | [1]:use %select{__bridge_transfer|CFBridgingRelease call}1 to transfer [2]:ownership of a +1 %0 into ARC |
Note | note_arc_cstyle_bridge_transfer | [1]:use __bridge_transfer with C-style cast to transfer [2]:ownership of a +1 %0 into ARC |
Note | note_arc_bridge_retained | [1]:use %select{__bridge_retained|CFBridgingRetain call}1 to make an [2]:ARC object available as a +1 %0 |
Note | note_arc_cstyle_bridge_retained | [1]:use __bridge_retained with C-style cast to make an [2]:ARC object available as a +1 %0 |
Error | err_flexible_array_init_needs_braces | flexible array requires brace-enclosed initializer |
Error | err_illegal_decl_array_of_functions | '%0' declared as array of functions of type %1 |
Error | err_illegal_decl_array_incomplete_type | array has incomplete element type %0 |
Error | err_illegal_message_expr_incomplete_type | Objective-C message has incomplete result type %0 |
Error | err_illegal_decl_array_of_references | '%0' declared as array of references of type %1 |
Error | err_decl_negative_array_size | '%0' declared as an array with a negative size |
Error | err_array_static_outside_prototype | %0 used in array declarator outside of function prototype |
Error | err_array_static_not_outermost | %0 used in non-outermost array type derivation |
Error | err_array_star_outside_prototype | star modifier used outside of function prototype |
Error | err_illegal_decl_pointer_to_reference | '%0' declared as a pointer to a reference of type %1 |
Error | err_illegal_decl_mempointer_to_reference | '%0' declared as a member pointer to a reference of type %1 |
Error | err_illegal_decl_mempointer_to_void | '%0' declared as a member pointer to void |
Error | err_illegal_decl_mempointer_in_nonclass | '%0' does not point into a class |
Error | err_mempointer_in_nonclass_type | member pointer refers into non-class type %0 |
Error | err_reference_to_void | cannot form a reference to 'void' |
Error | err_nonfunction_block_type | block pointer to non-function type is invalid |
Error | err_return_block_has_expr | void block should not return a value |
Error | err_block_return_missing_expr | non-void block should return a value |
Error | err_func_def_incomplete_result | incomplete result type %0 in function definition |
Error | err_atomic_specifier_bad_type | [1]:_Atomic cannot be applied to [2]:[1]:%select{incomplete |array |function |reference |atomic |qualified |}0type [2]:%1 %select{||||||which is not trivially copyable}0 |
Extension | ext_sizeof_alignof_function_type | [1]:invalid application of '%select{sizeof|alignof|vec_step}0' to a [2]:function type |
Extension | ext_sizeof_alignof_void_type | [1]:invalid application of '%select{sizeof|alignof|vec_step}0' to a void [2]:type |
Error | err_opencl_sizeof_alignof_type | invalid application of '%select{sizeof|alignof|vec_step|__builtin_omp_required_simd_align}0' to a void type |
Error | err_sizeof_alignof_incomplete_type | [1]:invalid application of '%select{sizeof|alignof|vec_step|__builtin_omp_required_simd_align}0' to an [2]:incomplete type %1 |
Error | err_sizeof_alignof_function_type | [1]:invalid application of '%select{sizeof|alignof|vec_step|__builtin_omp_required_simd_align}0' to a [2]:function type |
Error | err_openmp_default_simd_align_expr | invalid application of '__builtin_omp_required_simd_align' to an expression, only type is allowed |
Error | err_sizeof_alignof_typeof_bitfield | invalid application of '%select{sizeof|alignof|typeof}0' to bit-field |
Error | err_alignof_member_of_incomplete_type | invalid application of 'alignof' to a field of a class still being defined |
Error | err_vecstep_non_scalar_vector_type | 'vec_step' requires built-in scalar or vector type, %0 invalid |
Error | err_offsetof_incomplete_type | offsetof of incomplete type %0 |
Error | err_offsetof_record_type | offsetof requires struct, union, or class type, %0 invalid |
Error | err_offsetof_array_type | offsetof requires array type, %0 invalid |
Extension | ext_offsetof_extended_field_designator | using extended field designator is an extension |
ExtWarn | ext_offsetof_non_pod_type | offset of on non-POD type %0 |
ExtWarn | ext_offsetof_non_standardlayout_type | offset of on non-standard-layout type %0 |
Error | err_offsetof_bitfield | cannot compute offset of bit-field %0 |
Error | err_offsetof_field_of_virtual_base | invalid application of 'offsetof' to a field of a virtual base |
Warning | warn_sub_ptr_zero_size_types | subtraction of pointers to type %0 of zero size has undefined behavior |
Warning | warn_floatingpoint_eq | comparing floating point with == or != is unsafe |
Warning | warn_remainder_division_by_zero | %select{remainder|division}0 by zero is undefined |
Warning | warn_shift_lhs_negative | shifting a negative signed value is undefined |
Warning | warn_shift_negative | shift count is negative |
Warning | warn_shift_gt_typewidth | shift count >= width of type |
Warning | warn_shift_result_gt_typewidth | [1]:signed shift result (%0) requires %1 bits to represent, but %2 only has [2]:%3 bits |
Warning | warn_shift_result_sets_sign_bit | [1]:signed shift result (%0) sets the sign bit of the shift expression's [2]:type (%1) and becomes negative |
Warning | warn_precedence_bitwise_rel | %0 has lower precedence than %1; %1 will be evaluated first |
Note | note_precedence_bitwise_first | place parentheses around the %0 expression to evaluate it first |
Note | note_precedence_silence | place parentheses around the '%0' expression to silence this warning |
Warning | warn_precedence_conditional | operator '?:' has lower precedence than '%0'; '%0' will be evaluated first |
Note | note_precedence_conditional_first | place parentheses around the '?:' expression to evaluate it first |
Warning | warn_logical_instead_of_bitwise | use of logical '%0' with constant operand |
Note | note_logical_instead_of_bitwise_change_operator | use '%0' for a bitwise operation |
Note | note_logical_instead_of_bitwise_remove_constant | remove constant to silence this warning |
Warning | warn_bitwise_op_in_bitwise_op | '%0' within '%1' |
Warning | warn_logical_and_in_logical_or | '&&' within '||' |
Warning | warn_overloaded_shift_in_comparison | [1]:overloaded operator %select{>>|<<}0 has higher precedence than [2]:comparison operator |
Note | note_evaluate_comparison_first | place parentheses around comparison expression to evaluate it first |
Warning | warn_addition_in_bitshift | [1]:operator '%0' has lower precedence than '%1'; [2]:'%1' will be evaluated first |
Warning | warn_self_assignment | explicitly assigning value of variable of type %0 to itself |
Warning | warn_self_move | explicitly moving variable of type %0 to itself |
Warning | warn_redundant_move_on_return | redundant move in return statement |
Warning | warn_pessimizing_move_on_return | moving a local object in a return statement prevents copy elision |
Warning | warn_pessimizing_move_on_initialization | moving a temporary object prevents copy elision |
Note | note_remove_move | remove std::move call here |
Warning | warn_string_plus_int | adding %0 to a string does not append to the string |
Warning | warn_string_plus_char | adding %0 to a string pointer does not append to the string |
Note | note_string_plus_scalar_silence | use array indexing to silence this warning |
Warning | warn_sizeof_array_param | sizeof on array function parameter will return size of %0 instead of %1 |
Warning | warn_sizeof_array_decay | sizeof on pointer operation will return size of %0 instead of %1 |
Error | err_sizeof_nonfragile_interface | [1]:application of '%select{alignof|sizeof}1' to interface %0 is [2]:not supported on this architecture and platform |
Error | err_atdef_nonfragile_interface | use of @defs is not supported on this architecture and platform |
Error | err_subscript_nonfragile_interface | [1]:subscript requires size of interface %0, which is not constant for [2]:this architecture and platform |
Error | err_arithmetic_nonfragile_interface | [1]:arithmetic on pointer to interface %0, which is not a constant size for [2]:this architecture and platform |
Extension | ext_subscript_non_lvalue | ISO C90 does not allow subscripting non-lvalue array |
Error | err_typecheck_subscript_value | subscripted value is not an array, pointer, or vector |
Error | err_typecheck_subscript_not_integer | array subscript is not an integer |
Error | err_subscript_function_type | subscript of pointer to function type %0 |
Error | err_subscript_incomplete_type | subscript of pointer to incomplete type %0 |
Error | err_dereference_incomplete_type | dereference of pointer to incomplete type %0 |
Extension | ext_gnu_subscript_void_type | subscript of a pointer to void is a GNU extension |
Error | err_typecheck_member_reference_struct_union | member reference base type %0 is not a structure or union |
Error | err_typecheck_member_reference_ivar | %0 does not have a member named %1 |
Error | error_arc_weak_ivar_access | [1]:dereferencing a __weak pointer is not allowed due to possible [2]:null value caused by race condition, assign it to strong variable first |
Error | err_typecheck_member_reference_arrow | member reference type %0 is not a pointer |
Error | err_typecheck_member_reference_suggestion | member reference type %0 is %select{a|not a}1 pointer; did you mean to use '%select{->|.}1'? |
Note | note_typecheck_member_reference_suggestion | did you mean to use '.' instead? |
Note | note_member_reference_arrow_from_operator_arrow | '->' applied to return value of the operator->() declared here |
Error | err_typecheck_member_reference_type | cannot refer to type member %0 in %1 with '%select{.|->}2' |
Error | err_typecheck_member_reference_unknown | cannot refer to member %0 in %1 with '%select{.|->}2' |
Error | err_member_reference_needs_call | [1]:base of member reference is a function; perhaps you meant to call [2]:it%select{| with no arguments}0? |
Warning | warn_subscript_is_char | array subscript is of type 'char' |
Error | err_typecheck_incomplete_tag | incomplete definition of type %0 |
Error | err_no_member | no member named %0 in %1 |
Error | err_no_member_overloaded_arrow | no member named %0 in %1; did you mean to use '->' instead of '.'? |
Error | err_member_not_yet_instantiated | no member %0 in %1; it has not yet been instantiated |
Note | note_non_instantiated_member_here | not-yet-instantiated member is declared here |
Error | err_enumerator_does_not_exist | enumerator %0 does not exist in instantiation of %1 |
Note | note_enum_specialized_here | enum %0 was explicitly specialized here |
Error | err_member_redeclared | class member cannot be redeclared |
ExtWarn | ext_member_redeclared | class member cannot be redeclared |
Error | err_member_redeclared_in_instantiation | multiple overloads of %0 instantiate to the same signature %1 |
Error | err_member_name_of_class | member %0 has the same name as its class |
Error | err_member_def_undefined_record | out-of-line definition of %0 from class %1 without definition |
Error | err_member_decl_does_not_match | [1]:out-of-line %select{declaration|definition}2 of %0 [2]:does not match any declaration in %1 |
Error | err_friend_decl_with_def_arg_must_be_def | friend declaration specifying a default argument must be a definition |
Error | err_friend_decl_with_def_arg_redeclared | friend declaration specifying a default argument must be the only declaration |
Error | err_friend_decl_does_not_match | friend declaration of %0 does not match any declaration in %1 |
Error | err_member_decl_does_not_match_suggest | [1]:out-of-line %select{declaration|definition}2 of %0 [2]:does not match any declaration in %1; did you mean %3? |
Error | err_member_def_does_not_match_ret_type | [1]:return type of out-of-line definition of %q0 differs from [2]:that in the declaration |
Error | err_nonstatic_member_out_of_line | non-static data member defined out-of-line |
Error | err_qualified_typedef_declarator | typedef declarator cannot be qualified |
Error | err_qualified_param_declarator | parameter declarator cannot be qualified |
ExtWarn | ext_out_of_line_declaration | out-of-line declaration of a member must be a definition |
Error | err_member_extra_qualification | extra qualification on member %0 |
Warning | warn_member_extra_qualification | err_member_extra_qualification.Text |
Warning | warn_namespace_member_extra_qualification | extra qualification on member %0 |
Error | err_member_qualification | non-friend class member %0 cannot have a qualified name |
Note | note_member_def_close_match | member declaration nearly matches |
Note | note_member_def_close_const_match | [1]:member declaration does not match because [2]:it %select{is|is not}0 const qualified |
Note | note_member_def_close_param_match | [1]:type of %ordinal0 parameter of member declaration does not match definition [2]:%diff{ ($ vs $)|}1,2 |
Note | note_local_decl_close_match | local declaration nearly matches |
Note | note_local_decl_close_param_match | [1]:type of %ordinal0 parameter of local declaration does not match definition [2]:%diff{ ($ vs $)|}1,2 |
Error | err_typecheck_ivar_variable_size | instance variables must have a constant size |
Error | err_ivar_reference_type | instance variables cannot be of reference type |
Error | err_typecheck_illegal_increment_decrement | cannot %select{decrement|increment}1 value of type %0 |
Error | err_typecheck_expect_int | used type %0 where integer is required |
Error | err_typecheck_arithmetic_incomplete_type | arithmetic on a pointer to an incomplete type %0 |
Error | err_typecheck_pointer_arith_function_type | [1]:arithmetic on%select{ a|}0 pointer%select{|s}0 to%select{ the|}2 [2]:function type%select{|s}2 %1%select{| and %3}2 |
Error | err_typecheck_pointer_arith_void_type | arithmetic on%select{ a|}0 pointer%select{|s}0 to void |
Error | err_typecheck_decl_incomplete_type | variable has incomplete type %0 |
Error | err_typecheck_decl_incomplete_type___float128 | support for type '__float128' is not yet implemented |
ExtWarn | ext_typecheck_decl_incomplete_type | tentative definition of variable with internal linkage has incomplete non-array type %0 |
Error | err_tentative_def_incomplete_type | tentative definition has type %0 that is never completed |
Warning | warn_tentative_incomplete_array | tentative array definition assumed to have one element |
Error | err_typecheck_incomplete_array_needs_initializer | [1]:definition of variable with array type needs an explicit size [2]:or an initializer |
Error | err_array_init_not_init_list | [1]:array initializer must be an initializer [2]:list%select{| or string literal| or wide string literal}0 |
Error | err_array_init_narrow_string_into_wchar | initializing wide char array with non-wide string literal |
Error | err_array_init_wide_string_into_char | initializing char array with wide string literal |
Error | err_array_init_incompat_wide_string_into_wchar | initializing wide char array with incompatible wide string literal |
Error | err_array_init_different_type | [1]:cannot initialize array %diff{of type $ with array of type $| [2]:with different type of array}0,1 |
Error | err_array_init_non_constant_array | [1]:cannot initialize array %diff{of type $ with non-constant array of type $| [2]:with different type of array}0,1 |
Extension | ext_array_init_copy | [1]:initialization of an array [2]:[1]:%diff{of type $ from a compound literal of type $| [2]:from a compound literal}0,1 is a GNU extension |
ExtWarn | ext_array_init_parens | parenthesized initialization of a member array is a GNU extension |
Warning | warn_deprecated_string_literal_conversion | conversion from string literal to %0 is deprecated |
ExtWarn | ext_deprecated_string_literal_conversion | ISO C++11 does not allow conversion from string literal to %0 |
Error | err_realimag_invalid_type | invalid type %0 to %1 operator |
Error | err_typecheck_sclass_fscope | illegal storage class on file-scoped variable |
Warning | warn_standalone_specifier | '%0' ignored on this declaration |
ExtWarn | ext_standalone_specifier | [1]:'%0' is not permitted on a declaration [2]:of a type |
Error | err_standalone_class_nested_name_specifier | [1]:forward declaration of %select{class|struct|interface|union|enum}0 cannot [2]:have a nested name specifier |
Error | err_typecheck_sclass_func | illegal storage class on function |
Error | err_static_block_func | function declared in block scope cannot have 'static' storage class |
Error | err_typecheck_address_of | [1]:address of %select{bit-field [2]:|vector element|property expression|register variable}0 requested |
Extension | ext_typecheck_addrof_void | ISO C forbids taking the address of an expression of type 'void' |
Error | err_unqualified_pointer_member_function | must explicitly qualify name of member function when taking its address |
Error | err_invalid_form_pointer_member_function | cannot create a non-constant pointer to member function |
Error | err_address_of_function_with_pass_object_size_params | [1]:cannot take address of function %0 because parameter %1 has [2]:pass_object_size attribute |
Error | err_parens_pointer_member_function | cannot parenthesize the name of a method when forming a member pointer |
Error | err_typecheck_invalid_lvalue_addrof_addrof_function | extra '&' taking address of overloaded function |
Error | err_typecheck_invalid_lvalue_addrof | cannot take the address of an rvalue of type %0 |
ExtWarn | ext_typecheck_addrof_temporary | taking the address of a temporary object of type %0 |
Error | err_typecheck_addrof_temporary | taking the address of a temporary object of type %0 |
Error | err_typecheck_addrof_dtor | taking the address of a destructor |
Error | err_typecheck_unary_expr | invalid argument type %0 to unary expression |
Error | err_typecheck_indirection_requires_pointer | indirection requires pointer operand (%0 invalid) |
ExtWarn | ext_typecheck_indirection_through_void_pointer | ISO C++ does not allow indirection on operand of type %0 |
Warning | warn_indirection_through_null | indirection of non-volatile null pointer will be deleted, not trap |
Note | note_indirection_through_null | consider using __builtin_trap() or qualifying pointer with 'volatile' |
Warning | warn_pointer_indirection_from_incompatible_type | [1]:dereference of type %1 that was reinterpret_cast from type %0 has undefined [2]:behavior |
Error | err_objc_object_assignment | cannot assign to class object (%0 invalid) |
Error | err_typecheck_invalid_operands | invalid operands to binary expression (%0 and %1) |
Error | err_typecheck_sub_ptr_compatible | [1]:%diff{$ and $ are not pointers to compatible types| [2]:pointers to incompatible types}0,1 |
ExtWarn | ext_typecheck_ordered_comparison_of_pointer_integer | ordered comparison between pointer and integer (%0 and %1) |
Extension | ext_typecheck_ordered_comparison_of_pointer_and_zero | ordered comparison between pointer and zero (%0 and %1) is an extension |
ExtWarn | ext_typecheck_ordered_comparison_of_function_pointers | ordered comparison of function pointers (%0 and %1) |
Extension | ext_typecheck_comparison_of_fptr_to_void | equality comparison between function pointer and void pointer (%0 and %1) |
Error | err_typecheck_comparison_of_fptr_to_void | equality comparison between function pointer and void pointer (%0 and %1) |
ExtWarn | ext_typecheck_comparison_of_pointer_integer | comparison between pointer and integer (%0 and %1) |
Error | err_typecheck_comparison_of_pointer_integer | comparison between pointer and integer (%0 and %1) |
ExtWarn | ext_typecheck_comparison_of_distinct_pointers | comparison of distinct pointer types%diff{ ($ and $)|}0,1 |
ExtWarn | ext_typecheck_cond_incompatible_operands | incompatible operand types (%0 and %1) |
Error | err_cond_voidptr_arc | [1]:operands to conditional of types%diff{ $ and $|}0,1 are incompatible [2]:in ARC mode |
Error | err_typecheck_comparison_of_distinct_pointers | comparison of distinct pointer types%diff{ ($ and $)|}0,1 |
ExtWarn | ext_typecheck_comparison_of_distinct_pointers_nonstandard | [1]:comparison of distinct pointer types (%0 and %1) uses non-standard [2]:composite pointer type %2 |
Error | err_typecheck_op_on_nonoverlapping_address_space_pointers | [1]:%select{comparison between %diff{ ($ and $)|}0,1 [2]:[1]:|arithmetic operation with operands of type %diff{ ($ and $)|}0,1}2 [2]: which are pointers to non-overlapping address spaces |
Error | err_typecheck_assign_const | [1]:%select{ [2]:[1]:cannot assign to return value because function %1 returns a const value| [2]:[1]:cannot assign to variable %1 with const-qualified type %2| [2]:[1]:cannot assign to %select{non-|}1static data member %2 [2]:[1]:with const-qualified type %3| [2]:[1]:cannot assign to non-static data member within const member function %1| [2]:read-only variable is not assignable}0 |
Note | note_typecheck_assign_const | [1]:%select{ [2]:[1]:function %1 which returns const-qualified type %2 declared here| [2]:[1]:variable %1 declared const here| [2]:[1]:%select{non-|}1static data member %2 declared const here| [2]:member function %q1 is declared const here}0 |
Warning | warn_mixed_sign_comparison | comparison of integers of different signs: %0 and %1 |
Warning | warn_lunsigned_always_true_comparison | comparison of unsigned%select{| enum}2 expression %0 is always %1 |
Warning | warn_out_of_range_compare | [1]:comparison of %select{constant %0|true|false}1 with [2]:[1]:%select{expression of type %2|boolean expression}3 is always [2]:%select{false|true}4 |
Warning | warn_runsigned_always_true_comparison | comparison of %0 unsigned%select{| enum}2 expression is always %1 |
Warning | warn_comparison_of_mixed_enum_types | [1]:comparison of two values with different enumeration types [2]:%diff{ ($ and $)|}0,1 |
Warning | warn_null_in_arithmetic_operation | use of NULL in arithmetic operation |
Warning | warn_null_in_comparison_operation | [1]:comparison between NULL and non-pointer [2]:%select{(%1 and NULL)|(NULL and %1)}0 |
Error | err_shift_rhs_only_vector | [1]:requested shift is a vector of type %0 but the first operand is not a [2]:vector (%1) |
Warning | warn_logical_not_on_lhs_of_comparison | logical not is only applied to the left hand side of this comparison |
Note | note_logical_not_fix | add parentheses after the '!' to evaluate the comparison first |
Note | note_logical_not_silence_with_parens | add parentheses around left hand side expression to silence this warning |
Error | err_invalid_this_use | invalid use of 'this' outside of a non-static member function |
Error | err_this_static_member_func | [1]:'this' cannot be%select{| implicitly}0 used in a static member function [2]:declaration |
Error | err_invalid_member_use_in_static_method | invalid use of member %0 in static member function |
Error | err_invalid_qualified_function_type | [1]:%select{static |non-}0member function %select{of type %2 |}1 [2]:cannot have '%3' qualifier |
Error | err_compound_qualified_function_type | [1]:%select{block pointer|pointer|reference}0 to function type %select{%2 |}1 [2]:cannot have '%3' qualifier |
Error | err_ref_qualifier_overload | [1]:cannot overload a member function %select{without a ref-qualifier|with [2]:[1]:ref-qualifier '&'|with ref-qualifier '&&'}0 with a member function %select{ [2]:without a ref-qualifier|with ref-qualifier '&'|with ref-qualifier '&&'}1 |
Error | err_invalid_non_static_member_use | invalid use of non-static data member %0 |
Error | err_nested_non_static_member_use | [1]:%select{call to non-static member function|use of non-static data member}0 [2]:%2 of %1 from nested type %3 |
Warning | warn_cxx98_compat_non_static_member_use | [1]:use of non-static data member %0 in an unevaluated context is [2]:incompatible with C++98 |
Error | err_invalid_incomplete_type_use | invalid use of incomplete type %0 |
Error | err_builtin_func_cast_more_than_one_arg | function-style cast to a builtin type can only take one argument |
Error | err_value_init_for_array_type | array types cannot be value-initialized |
Error | err_value_init_for_function_type | function types cannot be value-initialized |
Warning | warn_format_nonliteral_noargs | format string is not a string literal (potentially insecure) |
Warning | warn_format_nonliteral | format string is not a string literal |
Error | err_unexpected_interface | unexpected interface name %0: expected expression |
Error | err_ref_non_value | %0 does not refer to a value |
Error | err_ref_vm_type | cannot refer to declaration with a variably modified type inside block |
Error | err_ref_flexarray_type | [1]:cannot refer to declaration of structure variable with flexible array member [2]:inside block |
Error | err_ref_array_type | cannot refer to declaration with an array type inside block |
Error | err_property_not_found | property %0 not found on object of type %1 |
Error | err_invalid_property_name | %0 is not a valid property name (accessing an object of type %1) |
Error | err_getter_not_found | no getter method for read from property |
Error | err_objc_subscript_method_not_found | [1]:expected method to %select{read|write}1 %select{dictionary|array}2 element not [2]:found on object of type %0 |
Error | err_objc_subscript_index_type | method index parameter type %0 is not integral type |
Error | err_objc_subscript_key_type | method key parameter type %0 is not object type |
Error | err_objc_subscript_dic_object_type | method object parameter type %0 is not object type |
Error | err_objc_subscript_object_type | [1]:cannot assign to this %select{dictionary|array}1 because assigning method's [2]:2nd parameter of type %0 is not an Objective-C pointer type |
Error | err_objc_subscript_base_type | %select{dictionary|array}1 subscript base type %0 is not an Objective-C object |
Error | err_objc_multiple_subscript_type_conversion | [1]:indexing expression is invalid because subscript type %0 has [2]:multiple type conversion functions |
Error | err_objc_subscript_type_conversion | [1]:indexing expression is invalid because subscript type %0 is not an integral [2]: or Objective-C pointer type |
Error | err_objc_subscript_pointer | [1]:indexing expression is invalid because subscript type %0 is not an [2]: Objective-C pointer |
Error | err_objc_indexing_method_result_type | [1]:method for accessing %select{dictionary|array}1 element must have Objective-C [2]: object return type instead of %0 |
Error | err_objc_index_incomplete_class_type | Objective-C index expression has incomplete class type %0 |
Error | err_illegal_container_subscripting_op | illegal operation on Objective-C container subscripting |
Error | err_property_not_found_forward_class | property %0 cannot be found in forward class object %1 |
Error | err_property_not_as_forward_class | [1]:property %0 refers to an incomplete Objective-C class %1 [2]:(with no @interface available) |
Note | note_forward_class | forward declaration of class here |
Error | err_duplicate_property | property has a previous declaration |
Extension | ext_gnu_void_ptr | arithmetic on%select{ a|}0 pointer%select{|s}0 to void is a GNU extension |
Extension | ext_gnu_ptr_func_arith | [1]:arithmetic on%select{ a|}0 pointer%select{|s}0 to%select{ the|}2 function [2]:type%select{|s}2 %1%select{| and %3}2 is a GNU extension |
Error | error_readonly_message_assignment | assigning to 'readonly' return result of an Objective-C message not allowed |
Extension | ext_integer_increment_complex | ISO C does not support '++'/'--' on complex integer type %0 |
Extension | ext_integer_complement_complex | ISO C does not support '~' for complex conjugation of %0 |
Error | err_nosetter_property_assignment | [1]:%select{assignment to readonly property| [2]:no setter method %1 for assignment to property}0 |
Error | err_nosetter_property_incdec | [1]:%select{%select{increment|decrement}1 of readonly property| [2]:no setter method %2 for %select{increment|decrement}1 of property}0 |
Error | err_nogetter_property_compound_assignment | a getter method is needed to perform a compound assignment on a property |
Error | err_nogetter_property_incdec | no getter method %1 for %select{increment|decrement}0 of property |
Error | error_no_subobject_property_setting | expression is not assignable |
Error | err_qualified_objc_access | %select{property|instance variable}0 access cannot be qualified with '%1' |
Extension | ext_freestanding_complex | complex numbers are an extension in a freestanding C99 implementation |
Error | err_imaginary_not_supported | imaginary types are not supported |
Warning | warn_root_inst_method_not_found | instance method %0 is being used on 'Class' which is not in the root class |
Warning | warn_class_method_not_found | class method %objcclass0 not found (return type defaults to 'id') |
Warning | warn_instance_method_on_class_found | instance method %0 found instead of class method %1 |
Warning | warn_inst_method_not_found | instance method %objcinstance0 not found (return type defaults to 'id') |
Warning | warn_instance_method_not_found_with_typo | [1]:instance method %objcinstance0 not found (return type defaults to 'id') [2]:; did you mean %objcinstance2? |
Warning | warn_class_method_not_found_with_typo | [1]:class method %objcclass0 not found (return type defaults to 'id') [2]:; did you mean %objcclass2? |
Error | error_method_not_found_with_typo | [1]:%select{instance|class}1 method %0 not found [2]:; did you mean %2? |
Error | error_no_super_class_message | no @interface declaration found in class messaging of %0 |
Error | error_root_class_cannot_use_super | %0 cannot use 'super' because it is a root class |
Error | err_invalid_receiver_to_message_super | 'super' is only valid in a method body |
Error | err_invalid_receiver_class_message | receiver type %0 is not an Objective-C class |
Error | err_missing_open_square_message_send | missing '[' at start of message send expression |
Warning | warn_bad_receiver_type | [1]:receiver type %0 is not 'id' or interface pointer, consider [2]:casting it to 'id' |
Error | err_bad_receiver_type | bad receiver type %0 |
Error | err_incomplete_receiver_type | incomplete receiver type %0 |
Error | err_unknown_receiver_suggest | unknown receiver %0; did you mean %1? |
Error | error_objc_throw_expects_object | @throw requires an Objective-C object type (%0 invalid) |
Error | error_objc_synchronized_expects_object | @synchronized requires an Objective-C object type (%0 invalid) |
Error | error_rethrow_used_outside_catch | @throw (rethrow) used outside of a @catch block |
Error | err_attribute_multiple_objc_gc | multiple garbage collection attributes specified for type |
Error | err_catch_param_not_objc_type | @catch parameter is not a pointer to an interface type |
Error | err_illegal_qualifiers_on_catch_parm | illegal qualifiers on @catch parameter |
Error | err_storage_spec_on_catch_parm | @catch parameter cannot have storage specifier '%0' |
Warning | warn_register_objc_catch_parm | 'register' storage specifier on @catch parameter will be ignored |
Error | err_qualified_objc_catch_parm | @catch parameter declarator cannot be qualified |
Warning | warn_objc_pointer_cxx_catch_fragile | [1]:cannot catch an exception thrown with @throw in C++ in the non-unified [2]:exception model |
Error | err_objc_object_catch | cannot catch an Objective-C object by value |
Error | err_incomplete_type_objc_at_encode | '@encode' of incomplete type %0 |
Warning | warn_objc_circular_container | adding '%0' to '%1' might cause circular dependency in container |
Note | note_objc_circular_container_declared_here | '%0' declared here |
Warning | warn_setter_getter_impl_required | [1]:property %0 requires method %1 to be defined - [2]:[1]:use @synthesize, @dynamic or provide a method implementation [2]:in this class implementation |
Warning | warn_setter_getter_impl_required_in_category | [1]:property %0 requires method %1 to be defined - [2]:use @dynamic or provide a method implementation in this category |
Note | note_parameter_named_here | passing argument to parameter %0 here |
Note | note_parameter_here | passing argument to parameter here |
Note | note_method_return_type_change | compiler has implicitly changed method %0 return type |
Error | err_bad_reinterpret_cast_overload | reinterpret_cast cannot resolve overloaded function %0 to type %1 |
Warning | warn_reinterpret_different_from_static | [1]:'reinterpret_cast' %select{from|to}3 class %0 %select{to|from}3 its [2]:[1]:%select{virtual base|base at non-zero offset}2 %1 behaves differently from [2]:'static_cast' |
Note | note_reinterpret_updowncast_use_static | [1]:use 'static_cast' to adjust the pointer correctly while [2]:%select{upcasting|downcasting}0 |
Error | err_bad_static_cast_overload | address of overloaded function %0 cannot be static_cast to type %1 |
Error | err_bad_cstyle_cast_overload | address of overloaded function %0 cannot be cast to type %1 |
Error | err_bad_cxx_cast_generic | [1]:%select{const_cast|static_cast|reinterpret_cast|dynamic_cast|C-style cast| [2]:functional-style cast}0 from %1 to %2 is not allowed |
Error | err_bad_cxx_cast_unrelated_class | [1]:%select{const_cast|static_cast|reinterpret_cast|dynamic_cast|C-style cast| [2]:[1]:functional-style cast}0 from %1 to %2, which are not related by [2]:inheritance, is not allowed |
Note | note_type_incomplete | %0 is incomplete |
Error | err_bad_cxx_cast_rvalue | [1]:%select{const_cast|static_cast|reinterpret_cast|dynamic_cast|C-style cast| [2]:functional-style cast}0 from rvalue to reference type %2 |
Error | err_bad_cxx_cast_bitfield | [1]:%select{const_cast|static_cast|reinterpret_cast|dynamic_cast|C-style cast| [2]:functional-style cast}0 from bit-field lvalue to reference type %2 |
Error | err_bad_cxx_cast_qualifiers_away | [1]:%select{const_cast|static_cast|reinterpret_cast|dynamic_cast|C-style cast| [2]:functional-style cast}0 from %1 to %2 casts away qualifiers |
Error | err_bad_const_cast_dest | [1]:%select{const_cast||||C-style cast|functional-style cast}0 to %2, [2]:which is not a reference, pointer-to-object, or pointer-to-data-member |
Extension | ext_cast_fn_obj | cast between pointer-to-function and pointer-to-object is an extension |
ExtWarn | ext_ms_cast_fn_obj | [1]:static_cast between pointer-to-function and pointer-to-object is a [2]:Microsoft extension |
Warning | warn_cxx98_compat_cast_fn_obj | cast between pointer-to-function and pointer-to-object is incompatible with C++98 |
Error | err_bad_reinterpret_cast_small_int | cast from pointer to smaller type %2 loses information |
Error | err_bad_cxx_cast_vector_to_scalar_different_size | [1]:%select{||reinterpret_cast||C-style cast|}0 from vector %1 [2]:to scalar %2 of different size |
Error | err_bad_cxx_cast_scalar_to_vector_different_size | [1]:%select{||reinterpret_cast||C-style cast|}0 from scalar %1 [2]:to vector %2 of different size |
Error | err_bad_cxx_cast_vector_to_vector_different_size | [1]:%select{||reinterpret_cast||C-style cast|}0 from vector %1 [2]:to vector %2 of different size |
Error | err_bad_lvalue_to_rvalue_cast | [1]:cannot cast from lvalue of type %1 to rvalue reference type %2; types are [2]:not compatible |
Error | err_bad_static_cast_pointer_nonpointer | cannot cast from type %1 to pointer type %2 |
Error | err_bad_static_cast_member_pointer_nonmp | cannot cast from type %1 to member pointer type %2 |
Error | err_bad_cxx_cast_member_pointer_size | [1]:cannot %select{||reinterpret_cast||C-style cast|}0 from member pointer [2]:type %1 to member pointer type %2 of different size |
Error | err_bad_reinterpret_cast_reference | reinterpret_cast of a %0 to %1 needs its address, which is not allowed |
Warning | warn_undefined_reinterpret_cast | reinterpret_cast from %0 to %1 has undefined behavior |
Error | err_ambiguous_base_to_derived_cast | ambiguous cast from base %0 to derived %1:%2 |
Error | err_static_downcast_via_virtual | cannot cast %0 to %1 via virtual base %2 |
Error | err_downcast_from_inaccessible_base | cannot cast %select{private|protected}2 base class %1 to %0 |
Error | err_upcast_to_inaccessible_base | cannot cast %0 to its %select{private|protected}2 base class %1 |
Error | err_bad_dynamic_cast_not_ref_or_ptr | %0 is not a reference or pointer |
Error | err_bad_dynamic_cast_not_class | %0 is not a class |
Error | err_bad_dynamic_cast_incomplete | %0 is an incomplete type |
Error | err_bad_dynamic_cast_not_ptr | %0 is not a pointer |
Error | err_bad_dynamic_cast_not_polymorphic | %0 is not polymorphic |
Error | err_need_header_before_typeid | you need to include before using the 'typeid' operator |
Error | err_need_header_before_ms_uuidof | you need to include before using the '__uuidof' operator |
Error | err_ms___leave_not_in___try | '__leave' statement not in __try block |
Error | err_uuidof_without_guid | cannot call operator __uuidof on a type with no GUID |
Error | err_uuidof_with_multiple_guids | cannot call operator __uuidof on a type with multiple GUIDs |
Error | err_incomplete_typeid | 'typeid' of incomplete type %0 |
Error | err_variably_modified_typeid | 'typeid' of variably modified type %0 |
Error | err_static_illegal_in_new | the 'static' modifier for the array size is not legal in new expressions |
Error | err_array_new_needs_size | array size must be specified in new expressions |
Error | err_bad_new_type | cannot allocate %select{function|reference}1 type %0 with new |
Error | err_new_incomplete_type | allocation of incomplete type %0 |
Error | err_new_array_nonconst | only the first dimension of an allocated array may have dynamic size |
Error | err_new_array_init_args | array 'new' cannot have initialization arguments |
ExtWarn | ext_new_paren_array_nonconst | when type is in parentheses, array cannot have dynamic size |
Error | err_placement_new_non_placement_delete | [1]:'new' expression with placement arguments refers to non-placement [2]:'operator delete' |
Error | err_array_size_not_integral | [1]:array size expression must have integral or %select{|unscoped }0 [2]:enumeration type, not %1 |
Error | err_array_size_incomplete_type | array size expression has incomplete class type %0 |
Error | err_array_size_explicit_conversion | array size expression of type %0 requires explicit conversion to type %1 |
Note | note_array_size_conversion | conversion to %select{integral|enumeration}0 type %1 declared here |
Error | err_array_size_ambiguous_conversion | [1]:ambiguous conversion of array size expression of type %0 to an integral or [2]:enumeration type |
Extension | ext_array_size_conversion | [1]:implicit conversion from array size expression of type %0 to [2]:%select{integral|enumeration}1 type %2 is a C++11 extension |
Warning | warn_cxx98_compat_array_size_conversion | [1]:implicit conversion from array size expression of type %0 to [2]:%select{integral|enumeration}1 type %2 is incompatible with C++98 |
Error | err_address_space_qualified_new | 'new' cannot allocate objects of type %0 in address space '%1' |
Error | err_address_space_qualified_delete | 'delete' cannot delete objects of type %0 in address space '%1' |
Error | err_default_init_const | [1]:default initialization of an object of const type %0 [2]:%select{| without a user-provided default constructor}1 |
ExtWarn | ext_default_init_const | [1]:default initialization of an object of const type %0 [2]:[1]:%select{| without a user-provided default constructor}1 [2]:is a Microsoft extension |
Error | err_delete_operand | cannot delete expression of type %0 |
ExtWarn | ext_delete_void_ptr_operand | cannot delete expression with pointer-to-'void' type %0 |
Error | err_ambiguous_delete_operand | ambiguous conversion of delete expression of type %0 to a pointer |
Warning | warn_delete_incomplete | deleting pointer to incomplete type %0 may cause undefined behavior |
Error | err_delete_incomplete_class_type | deleting incomplete class type %0; no conversions to pointer type |
Error | err_delete_explicit_conversion | [1]:converting delete expression from type %0 to type %1 invokes an explicit [2]:conversion function |
Note | note_delete_conversion | conversion to pointer type %0 |
Warning | warn_delete_array_type | 'delete' applied to a pointer-to-array type %0 treated as 'delete[]' |
Warning | warn_mismatched_delete_new | [1]:'delete%select{|[]}0' applied to a pointer that was allocated with [2]:'new%select{[]|}0'; did you mean 'delete%select{[]|}0'? |
Note | note_allocated_here | allocated with 'new%select{[]|}0' here |
Error | err_no_suitable_delete_member_function_found | no suitable member %0 in %1 |
Error | err_ambiguous_suitable_delete_member_function_found | multiple suitable %0 functions in %1 |
Note | note_member_declared_here | member %0 declared here |
Error | err_decrement_bool | cannot decrement expression of type bool |
Warning | warn_increment_bool | [1]:incrementing expression of type bool is deprecated and [2]:incompatible with C++1z |
ExtWarn | ext_increment_bool | ISO C++1z does not allow incrementing expression of type bool |
Error | err_increment_decrement_enum | cannot %select{decrement|increment}0 expression of enum type %1 |
Error | err_catch_incomplete_ptr | cannot catch pointer to incomplete type %0 |
Error | err_catch_incomplete_ref | cannot catch reference to incomplete type %0 |
Error | err_catch_incomplete | cannot catch incomplete type %0 |
Error | err_catch_rvalue_ref | cannot catch exceptions by rvalue reference |
Error | err_qualified_catch_declarator | exception declarator cannot be qualified |
Error | err_early_catch_all | catch-all handler must come last |
Error | err_bad_memptr_rhs | right hand operand to %0 has non-pointer-to-member type %1 |
Error | err_bad_memptr_lhs | [1]:left hand operand to %0 must be a %select{|pointer to }1class [2]:compatible with the right hand operand, but is %2 |
Warning | warn_exception_caught_by_earlier_handler | exception of type %0 will be caught by earlier handler |
Note | note_previous_exception_handler | for type %0 |
Error | err_exceptions_disabled | cannot use '%0' with exceptions disabled |
Error | err_objc_exceptions_disabled | cannot use '%0' with Objective-C exceptions disabled |
Error | err_seh_try_outside_functions | cannot use SEH '__try' in blocks, captured regions, or Obj-C method decls |
Error | err_mixing_cxx_try_seh_try | cannot use C++ 'try' in the same function as SEH '__try' |
Error | err_seh_try_unsupported | SEH '__try' is not supported on this target |
Note | note_conflicting_try_here | conflicting %0 here |
Warning | warn_jump_out_of_seh_finally | jump out of __finally block has undefined behavior |
Warning | warn_non_virtual_dtor | %0 has virtual functions but non-virtual destructor |
Warning | warn_delete_non_virtual_dtor | [1]:%select{delete|destructor}0 called on non-final %1 that has [2]:virtual functions but non-virtual destructor |
Note | note_delete_non_virtual | qualify call to silence this warning |
Warning | warn_delete_abstract_non_virtual_dtor | [1]:%select{delete|destructor}0 called on %1 that is abstract but has [2]:non-virtual destructor |
Warning | warn_overloaded_virtual | %q0 hides overloaded virtual %select{function|functions}1 |
Note | note_hidden_overloaded_virtual_declared_here | [1]:hidden overloaded virtual function %q0 declared here [2]:[1]:%select{|: different classes%diff{ ($ vs $)|}2,3 [2]:[1]:|: different number of parameters (%2 vs %3) [2]:[1]:|: type mismatch at %ordinal2 parameter%diff{ ($ vs $)|}3,4 [2]:[1]:|: different return type%diff{ ($ vs $)|}2,3 [2]:[1]:|: different qualifiers ( [2]:[1]:%select{none|const|restrict|const and restrict|volatile|const and volatile| [2]:[1]:volatile and restrict|const, volatile, and restrict}2 vs [2]:[1]:%select{none|const|restrict|const and restrict|volatile|const and volatile| [2]:volatile and restrict|const, volatile, and restrict}3)}1 |
Warning | warn_using_directive_in_header | using namespace directive in global context in header |
Warning | warn_overaligned_type | [1]:type %0 requires %1 bytes of alignment and the default allocator only [2]:guarantees %2 bytes |
Error | err_conditional_void_nonvoid | [1]:%select{left|right}1 operand to ? is void, but %select{right|left}1 operand [2]:is of type %0 |
Error | err_conditional_ambiguous | [1]:conditional expression is ambiguous; [2]:[1]:%diff{$ can be converted to $ and vice versa| [2]:types can be convert to each other}0,1 |
Error | err_conditional_ambiguous_ovl | [1]:conditional expression is ambiguous; %diff{$ and $|types}0,1 [2]:can be converted to several common types |
Error | err_conditional_vector_size | [1]:vector condition type %0 and result type %1 do not have the same number [2]:of elements |
Error | err_conditional_vector_element_size | [1]:vector condition type %0 and result type %1 do not have elements of the [2]:same size |
Error | err_throw_incomplete | cannot throw object of incomplete type %0 |
Error | err_throw_incomplete_ptr | cannot throw pointer to object of incomplete type %0 |
Error | err_return_in_constructor_handler | return in the catch of a function try block of a constructor is illegal |
Warning | warn_cdtor_function_try_handler_mem_expr | [1]:cannot refer to a non-static member from the handler of a [2]:%select{constructor|destructor}0 function try block |
Error | err_capture_more_than_once | %0 can appear only once in a capture list |
Error | err_reference_capture_with_reference_default | '&' cannot precede a capture when the capture default is '&' |
Error | err_this_capture_with_copy_default | 'this' cannot be explicitly captured when the capture default is '=' |
Error | err_copy_capture_with_copy_default | '&' must precede a capture when the capture default is '=' |
Error | err_capture_does_not_name_variable | %0 in capture list does not name a variable |
Error | err_capture_non_automatic_variable | [1]:%0 cannot be captured because it does not have automatic storage [2]:duration |
Error | err_this_capture | 'this' cannot be %select{implicitly |}0captured in this context |
Error | err_lambda_capture_anonymous_var | unnamed variable cannot be implicitly captured in a lambda expression |
Error | err_lambda_capture_flexarray_type | [1]:variable %0 with flexible array member cannot be captured in [2]:a lambda expression |
Error | err_lambda_impcap | [1]:variable %0 cannot be implicitly captured in a lambda with no [2]:capture-default specified |
Note | note_lambda_decl | lambda expression begins here |
Error | err_lambda_unevaluated_operand | lambda expression in an unevaluated operand |
Error | err_lambda_in_constant_expression | a lambda expression may not appear inside of a constant expression |
Error | err_lambda_return_init_list | cannot deduce lambda return type from initializer list |
Error | err_lambda_capture_default_arg | lambda expression in default argument cannot capture any entity |
Error | err_lambda_incomplete_result | incomplete result type %0 in lambda expression |
Error | err_noreturn_lambda_has_return_expr | lambda declared 'noreturn' should not return |
Warning | warn_maybe_falloff_nonvoid_lambda | control may reach end of non-void lambda |
Warning | warn_falloff_nonvoid_lambda | control reaches end of non-void lambda |
Error | err_access_lambda_capture | [1]:capture of variable '%0' as type %1 calls %select{private|protected}3 [2]:%select{default |copy |move |*ERROR* |*ERROR* |*ERROR* |}2constructor |
Note | note_lambda_to_block_conv | [1]:implicit capture of lambda object due to conversion to block pointer [2]:here |
Warning | warn_cxx11_compat_init_capture | [1]:initialized lambda captures are incompatible with C++ standards [2]:before C++14 |
ExtWarn | ext_init_capture | initialized lambda captures are a C++14 extension |
Error | err_init_capture_no_expression | initializer missing for lambda capture %0 |
Error | err_init_capture_multiple_expressions | initializer for lambda capture %0 contains multiple expressions |
Error | err_init_capture_paren_braces | [1]:cannot deduce type for lambda capture %1 from [2]:%select{parenthesized|nested}0 initializer list |
Error | err_init_capture_deduction_failure | cannot deduce type for lambda capture %0 from initializer of type %2 |
Error | err_init_capture_deduction_failure_from_init_list | cannot deduce type for lambda capture %0 from initializer list |
Error | err_return_in_captured_stmt | cannot return from %0 |
Error | err_capture_block_variable | [1]:__block variable %0 cannot be captured in a [2]:%select{lambda expression|captured statement}1 |
Error | err_operator_arrow_circular | circular pointer delegation detected |
Error | err_operator_arrow_depth_exceeded | [1]:use of 'operator->' on type %0 would invoke a sequence of more than %1 [2]:'operator->' calls |
Note | note_operator_arrow_here | 'operator->' declared here produces an object of type %0 |
Note | note_operator_arrows_suppressed | (skipping %0 'operator->'%s0 in backtrace) |
Note | note_operator_arrow_depth | use -foperator-arrow-depth=N to increase 'operator->' limit |
Error | err_pseudo_dtor_base_not_scalar | [1]:object expression of non-scalar type %0 cannot be used in a [2]:pseudo-destructor expression |
ExtWarn | ext_pseudo_dtor_on_void | pseudo-destructors on type void are a Microsoft extension |
Error | err_pseudo_dtor_type_mismatch | [1]:the type of object expression [2]:[1]:%diff{($) does not match the type being destroyed ($)| [2]:[1]:does not match the type being destroyed}0,1 [2]:in pseudo-destructor expression |
Error | err_pseudo_dtor_call_with_args | call to pseudo-destructor cannot have any arguments |
Error | err_dtor_expr_without_call | [1]:reference to %select{destructor|pseudo-destructor}0 must be called [2]:%select{|; did you mean to call it with no arguments?}1 |
Error | err_pseudo_dtor_destructor_non_type | [1]:%0 does not refer to a type name in pseudo-destructor expression; expected [2]:the name of type %1 |
Error | err_invalid_use_of_function_type | a function type is not allowed here |
Error | err_invalid_use_of_array_type | an array type is not allowed here |
Error | err_typecheck_bool_condition | value of type %0 is not contextually convertible to 'bool' |
Error | err_typecheck_ambiguous_condition | conversion %diff{from $ to $|between types}0,1 is ambiguous |
Error | err_typecheck_nonviable_condition | [1]:no viable conversion%select{%diff{ from $ to $|}1,2| [2]:%diff{ from returned value of type $ to function return type $|}1,2}0 |
Error | err_typecheck_nonviable_condition_incomplete | no viable conversion%diff{ from $ to incomplete type $|}0,1 |
Error | err_typecheck_deleted_function | [1]:conversion function %diff{from $ to $|between types}0,1 [2]:invokes a deleted function |
Error | err_expected_class_or_namespace | [1]:%0 is not a class [2]:%select{ or namespace|, namespace, or enumeration}1 |
Error | err_invalid_declarator_scope | [1]:cannot define or redeclare %0 here [2]:because namespace %1 does not enclose namespace %2 |
Error | err_invalid_declarator_global_scope | definition or redeclaration of %0 cannot name the global scope |
Error | err_invalid_declarator_in_function | definition or redeclaration of %0 not allowed inside a function |
Error | err_invalid_declarator_in_block | definition or redeclaration of %0 not allowed inside a block |
Error | err_not_tag_in_scope | no %select{struct|interface|union|class|enum}0 named %1 in %2 |
Error | err_no_typeid_with_fno_rtti | cannot use typeid with -fno-rtti |
Error | err_no_dynamic_cast_with_fno_rtti | cannot use dynamic_cast with -fno-rtti |
Error | err_cannot_form_pointer_to_member_of_reference_type | cannot form a pointer-to-member to member %0 of reference type %1 |
Error | err_incomplete_object_call | incomplete type in call to object of type %0 |
Warning | warn_condition_is_assignment | [1]:using the result of an [2]:assignment as a condition without parentheses |
Warning | warn_condition_is_idiomatic_assignment | [1]:using the result [2]:of an assignment as a condition without parentheses |
Note | note_condition_assign_to_comparison | use '==' to turn this assignment into an equality comparison |
Note | note_condition_or_assign_to_comparison | use '!=' to turn this compound assignment into an inequality comparison |
Note | note_condition_assign_silence | place parentheses around the assignment to silence this warning |
Warning | warn_equality_with_extra_parens | [1]:equality comparison with [2]:extraneous parentheses |
Note | note_equality_comparison_to_assign | use '=' to turn this equality comparison into an assignment |
Note | note_equality_comparison_silence | remove extraneous parentheses around the comparison to silence this warning |
Error | err_typecheck_convert_incompatible | [1]:%select{%diff{assigning to $ from incompatible type $| [2]:[1]:assigning to type from incompatible type}0,1 [2]:[1]:|%diff{passing $ to parameter of incompatible type $| [2]:[1]:passing type to parameter of incompatible type}0,1 [2]:[1]:|%diff{returning $ from a function with incompatible result type $| [2]:[1]:returning type from a function with incompatible result type}0,1 [2]:[1]:|%diff{converting $ to incompatible type $| [2]:[1]:converting type to incompatible type}0,1 [2]:[1]:|%diff{initializing $ with an expression of incompatible type $| [2]:[1]:initializing type with an expression of incompatible type}0,1 [2]:[1]:|%diff{sending $ to parameter of incompatible type $| [2]:[1]:sending type to parameter of incompatible type}0,1 [2]:[1]:|%diff{casting $ to incompatible type $| [2]:[1]:casting type to incompatible type}0,1}2 [2]:[1]:%select{|; dereference with *| [2]:[1]:; take the address with &| [2]:[1]:; remove *| [2]:[1]:; remove &}3 [2]:[1]:%select{|: different classes%diff{ ($ vs $)|}5,6 [2]:[1]:|: different number of parameters (%5 vs %6) [2]:[1]:|: type mismatch at %ordinal5 parameter%diff{ ($ vs $)|}6,7 [2]:[1]:|: different return type%diff{ ($ vs $)|}5,6 [2]:[1]:|: different qualifiers ( [2]:[1]:%select{none|const|restrict|const and restrict|volatile|const and volatile| [2]:[1]:volatile and restrict|const, volatile, and restrict}5 vs [2]:[1]:%select{none|const|restrict|const and restrict|volatile|const and volatile| [2]:volatile and restrict|const, volatile, and restrict}6)}4 |
Error | err_typecheck_missing_return_type_incompatible | [1]:%diff{return type $ must match previous return type $| [2]:[1]:return type must match previous return type}0,1 when %select{block [2]:literal|lambda expression}2 has unspecified explicit return type |
Note | not_incomplete_class_and_qualified_id | conformance of forward class %0 to protocol %1 can not be confirmed |
Warning | warn_incompatible_qualified_id | [1]:%select{%diff{assigning to $ from incompatible type $| [2]:[1]:assigning to type from incompatible type}0,1 [2]:[1]:|%diff{passing $ to parameter of incompatible type $| [2]:[1]:passing type to parameter of incompatible type}0,1 [2]:[1]:|%diff{returning $ from a function with incompatible result type $| [2]:[1]:returning type from a function with incompatible result type}0,1 [2]:[1]:|%diff{converting $ to incompatible type $| [2]:[1]:converting type to incompatible type}0,1 [2]:[1]:|%diff{initializing $ with an expression of incompatible type $| [2]:[1]:initializing type with an expression of incompatible type}0,1 [2]:[1]:|%diff{sending $ to parameter of incompatible type $| [2]:[1]:sending type to parameter of incompatible type}0,1 [2]:[1]:|%diff{casting $ to incompatible type $| [2]:casting type to incompatible type}0,1}2 |
ExtWarn | ext_typecheck_convert_pointer_int | [1]:incompatible pointer to integer conversion [2]:[1]:%select{%diff{assigning to $ from $|assigning to different types}0,1 [2]:[1]:|%diff{passing $ to parameter of type $| [2]:[1]:passing to parameter of different type}0,1 [2]:[1]:|%diff{returning $ from a function with result type $| [2]:[1]:returning from function with different return type}0,1 [2]:[1]:|%diff{converting $ to type $|converting between types}0,1 [2]:[1]:|%diff{initializing $ with an expression of type $| [2]:[1]:initializing with expression of different type}0,1 [2]:[1]:|%diff{sending $ to parameter of type $| [2]:[1]:sending to parameter of different type}0,1 [2]:[1]:|%diff{casting $ to type $|casting between types}0,1}2 [2]:[1]:%select{|; dereference with *| [2]:[1]:; take the address with &| [2]:[1]:; remove *| [2]:; remove &}3 |
ExtWarn | ext_typecheck_convert_int_pointer | [1]:incompatible integer to pointer conversion [2]:[1]:%select{%diff{assigning to $ from $|assigning to different types}0,1 [2]:[1]:|%diff{passing $ to parameter of type $| [2]:[1]:passing to parameter of different type}0,1 [2]:[1]:|%diff{returning $ from a function with result type $| [2]:[1]:returning from function with different return type}0,1 [2]:[1]:|%diff{converting $ to type $|converting between types}0,1 [2]:[1]:|%diff{initializing $ with an expression of type $| [2]:[1]:initializing with expression of different type}0,1 [2]:[1]:|%diff{sending $ to parameter of type $| [2]:[1]:sending to parameter of different type}0,1 [2]:[1]:|%diff{casting $ to type $|casting between types}0,1}2 [2]:[1]:%select{|; dereference with *| [2]:[1]:; take the address with &| [2]:[1]:; remove *| [2]:; remove &}3 |
Extension | ext_typecheck_convert_pointer_void_func | [1]:%select{%diff{assigning to $ from $|assigning to different types}0,1 [2]:[1]:|%diff{passing $ to parameter of type $| [2]:[1]:passing to parameter of different type}0,1 [2]:[1]:|%diff{returning $ from a function with result type $| [2]:[1]:returning from function with different return type}0,1 [2]:[1]:|%diff{converting $ to type $|converting between types}0,1 [2]:[1]:|%diff{initializing $ with an expression of type $| [2]:[1]:initializing with expression of different type}0,1 [2]:[1]:|%diff{sending $ to parameter of type $| [2]:[1]:sending to parameter of different type}0,1 [2]:[1]:|%diff{casting $ to type $|casting between types}0,1}2 [2]: converts between void pointer and function pointer |
ExtWarn | ext_typecheck_convert_incompatible_pointer_sign | [1]:%select{%diff{assigning to $ from $|assigning to different types}0,1 [2]:[1]:|%diff{passing $ to parameter of type $| [2]:[1]:passing to parameter of different type}0,1 [2]:[1]:|%diff{returning $ from a function with result type $| [2]:[1]:returning from function with different return type}0,1 [2]:[1]:|%diff{converting $ to type $|converting between types}0,1 [2]:[1]:|%diff{initializing $ with an expression of type $| [2]:[1]:initializing with expression of different type}0,1 [2]:[1]:|%diff{sending $ to parameter of type $| [2]:[1]:sending to parameter of different type}0,1 [2]:[1]:|%diff{casting $ to type $|casting between types}0,1}2 [2]: converts between pointers to integer types with different sign |
ExtWarn | ext_typecheck_convert_incompatible_pointer | [1]:incompatible pointer types [2]:[1]:%select{%diff{assigning to $ from $|assigning to different types}0,1 [2]:[1]:|%diff{passing $ to parameter of type $| [2]:[1]:passing to parameter of different type}0,1 [2]:[1]:|%diff{returning $ from a function with result type $| [2]:[1]:returning from function with different return type}0,1 [2]:[1]:|%diff{converting $ to type $|converting between types}0,1 [2]:[1]:|%diff{initializing $ with an expression of type $| [2]:[1]:initializing with expression of different type}0,1 [2]:[1]:|%diff{sending $ to parameter of type $| [2]:[1]:sending to parameter of different type}0,1 [2]:[1]:|%diff{casting $ to type $|casting between types}0,1}2 [2]:[1]:%select{|; dereference with *| [2]:[1]:; take the address with &| [2]:[1]:; remove *| [2]:; remove &}3 |
ExtWarn | ext_typecheck_convert_discards_qualifiers | [1]:%select{%diff{assigning to $ from $|assigning to different types}0,1 [2]:[1]:|%diff{passing $ to parameter of type $| [2]:[1]:passing to parameter of different type}0,1 [2]:[1]:|%diff{returning $ from a function with result type $| [2]:[1]:returning from function with different return type}0,1 [2]:[1]:|%diff{converting $ to type $|converting between types}0,1 [2]:[1]:|%diff{initializing $ with an expression of type $| [2]:[1]:initializing with expression of different type}0,1 [2]:[1]:|%diff{sending $ to parameter of type $| [2]:[1]:sending to parameter of different type}0,1 [2]:[1]:|%diff{casting $ to type $|casting between types}0,1}2 [2]: discards qualifiers |
ExtWarn | ext_nested_pointer_qualifier_mismatch | [1]:%select{%diff{assigning to $ from $|assigning to different types}0,1 [2]:[1]:|%diff{passing $ to parameter of type $| [2]:[1]:passing to parameter of different type}0,1 [2]:[1]:|%diff{returning $ from a function with result type $| [2]:[1]:returning from function with different return type}0,1 [2]:[1]:|%diff{converting $ to type $|converting between types}0,1 [2]:[1]:|%diff{initializing $ with an expression of type $| [2]:[1]:initializing with expression of different type}0,1 [2]:[1]:|%diff{sending $ to parameter of type $| [2]:[1]:sending to parameter of different type}0,1 [2]:[1]:|%diff{casting $ to type $|casting between types}0,1}2 [2]: discards qualifiers in nested pointer types |
Warning | warn_incompatible_vectors | [1]:incompatible vector types [2]:[1]:%select{%diff{assigning to $ from $|assigning to different types}0,1 [2]:[1]:|%diff{passing $ to parameter of type $| [2]:[1]:passing to parameter of different type}0,1 [2]:[1]:|%diff{returning $ from a function with result type $| [2]:[1]:returning from function with different return type}0,1 [2]:[1]:|%diff{converting $ to type $|converting between types}0,1 [2]:[1]:|%diff{initializing $ with an expression of type $| [2]:[1]:initializing with expression of different type}0,1 [2]:[1]:|%diff{sending $ to parameter of type $| [2]:[1]:sending to parameter of different type}0,1 [2]:|%diff{casting $ to type $|casting between types}0,1}2 |
Error | err_int_to_block_pointer | [1]:invalid block pointer conversion [2]:[1]:%select{%diff{assigning to $ from $|assigning to different types}0,1 [2]:[1]:|%diff{passing $ to parameter of type $| [2]:[1]:passing to parameter of different type}0,1 [2]:[1]:|%diff{returning $ from a function with result type $| [2]:[1]:returning from function with different return type}0,1 [2]:[1]:|%diff{converting $ to type $|converting between types}0,1 [2]:[1]:|%diff{initializing $ with an expression of type $| [2]:[1]:initializing with expression of different type}0,1 [2]:[1]:|%diff{sending $ to parameter of type $| [2]:[1]:sending to parameter of different type}0,1 [2]:|%diff{casting $ to type $|casting between types}0,1}2 |
Error | err_typecheck_convert_incompatible_block_pointer | [1]:incompatible block pointer types [2]:[1]:%select{%diff{assigning to $ from $|assigning to different types}0,1 [2]:[1]:|%diff{passing $ to parameter of type $| [2]:[1]:passing to parameter of different type}0,1 [2]:[1]:|%diff{returning $ from a function with result type $| [2]:[1]:returning from function with different return type}0,1 [2]:[1]:|%diff{converting $ to type $|converting between types}0,1 [2]:[1]:|%diff{initializing $ with an expression of type $| [2]:[1]:initializing with expression of different type}0,1 [2]:[1]:|%diff{sending $ to parameter of type $| [2]:[1]:sending to parameter of different type}0,1 [2]:|%diff{casting $ to type $|casting between types}0,1}2 |
Error | err_typecheck_incompatible_address_space | [1]:%select{%diff{assigning $ to $|assigning to different types}1,0 [2]:[1]:|%diff{passing $ to parameter of type $| [2]:[1]:passing to parameter of different type}0,1 [2]:[1]:|%diff{returning $ from a function with result type $| [2]:[1]:returning from function with different return type}0,1 [2]:[1]:|%diff{converting $ to type $|converting between types}0,1 [2]:[1]:|%diff{initializing $ with an expression of type $| [2]:[1]:initializing with expression of different type}0,1 [2]:[1]:|%diff{sending $ to parameter of type $| [2]:[1]:sending to parameter of different type}0,1 [2]:[1]:|%diff{casting $ to type $|casting between types}0,1}2 [2]: changes address space of pointer |
Error | err_typecheck_incompatible_ownership | [1]:%select{%diff{assigning $ to $|assigning to different types}1,0 [2]:[1]:|%diff{passing $ to parameter of type $| [2]:[1]:passing to parameter of different type}0,1 [2]:[1]:|%diff{returning $ from a function with result type $| [2]:[1]:returning from function with different return type}0,1 [2]:[1]:|%diff{converting $ to type $|converting between types}0,1 [2]:[1]:|%diff{initializing $ with an expression of type $| [2]:[1]:initializing with expression of different type}0,1 [2]:[1]:|%diff{sending $ to parameter of type $| [2]:[1]:sending to parameter of different type}0,1 [2]:[1]:|%diff{casting $ to type $|casting between types}0,1}2 [2]: changes retain/release properties of pointer |
Error | err_typecheck_comparison_of_distinct_blocks | comparison of distinct block types%diff{ ($ and $)|}0,1 |
Error | err_typecheck_array_not_modifiable_lvalue | array type %0 is not assignable |
Error | err_typecheck_non_object_not_modifiable_lvalue | non-object type %0 is not assignable |
Error | err_typecheck_expression_not_modifiable_lvalue | expression is not assignable |
Error | err_typecheck_incomplete_type_not_modifiable_lvalue | incomplete type %0 is not assignable |
Error | err_typecheck_lvalue_casts_not_supported | assignment to cast is illegal, lvalue casts are not supported |
Error | err_typecheck_duplicate_vector_components_not_mlvalue | vector is not assignable (contains duplicate components) |
Error | err_block_decl_ref_not_modifiable_lvalue | variable is not assignable (missing __block type specifier) |
Error | err_lambda_decl_ref_not_modifiable_lvalue | cannot assign to a variable captured by copy in a non-mutable lambda |
Error | err_typecheck_call_not_function | called object type %0 is not a function or function pointer |
Error | err_call_incomplete_return | calling function with incomplete return type %0 |
Error | err_call_function_incomplete_return | calling %0 with incomplete return type %1 |
Error | err_call_incomplete_argument | argument type %0 is incomplete |
Error | err_typecheck_call_too_few_args | [1]:too few %select{|||execution configuration }0arguments to [2]:[1]:%select{function|block|method|kernel function}0 call, [2]:expected %1, have %2 |
Error | err_typecheck_call_too_few_args_one | [1]:too few %select{|||execution configuration }0arguments to [2]:[1]:%select{function|block|method|kernel function}0 call, [2]:single argument %1 was not specified |
Error | err_typecheck_call_too_few_args_at_least | [1]:too few %select{|||execution configuration }0arguments to [2]:[1]:%select{function|block|method|kernel function}0 call, [2]:expected at least %1, have %2 |
Error | err_typecheck_call_too_few_args_at_least_one | [1]:too few %select{|||execution configuration }0arguments to [2]:[1]:%select{function|block|method|kernel function}0 call, [2]:at least argument %1 must be specified |
Error | err_typecheck_call_too_few_args_suggest | [1]:too few %select{|||execution configuration }0arguments to [2]:[1]:%select{function|block|method|kernel function}0 call, [2]:expected %1, have %2; did you mean %3? |
Error | err_typecheck_call_too_few_args_at_least_suggest | [1]:too few %select{|||execution configuration }0arguments to [2]:[1]:%select{function|block|method|kernel function}0 call, [2]:expected at least %1, have %2; did you mean %3? |
Error | err_typecheck_call_too_many_args | [1]:too many %select{|||execution configuration }0arguments to [2]:[1]:%select{function|block|method|kernel function}0 call, [2]:expected %1, have %2 |
Error | err_typecheck_call_too_many_args_one | [1]:too many %select{|||execution configuration }0arguments to [2]:[1]:%select{function|block|method|kernel function}0 call, [2]:expected single argument %1, have %2 arguments |
Error | err_typecheck_call_too_many_args_at_most | [1]:too many %select{|||execution configuration }0arguments to [2]:[1]:%select{function|block|method|kernel function}0 call, [2]:expected at most %1, have %2 |
Error | err_typecheck_call_too_many_args_at_most_one | [1]:too many %select{|||execution configuration }0arguments to [2]:[1]:%select{function|block|method|kernel function}0 call, [2]:expected at most single argument %1, have %2 arguments |
Error | err_typecheck_call_too_many_args_suggest | [1]:too many %select{|||execution configuration }0arguments to [2]:[1]:%select{function|block|method|kernel function}0 call, [2]:expected %1, have %2; did you mean %3? |
Error | err_typecheck_call_too_many_args_at_most_suggest | [1]:too many %select{|||execution configuration }0arguments to [2]:[1]:%select{function|block|method|kernel function}0 call, [2]:expected at most %1, have %2; did you mean %3? |
Error | err_arc_typecheck_convert_incompatible_pointer | [1]:incompatible pointer types passing retainable parameter of type %0 [2]:to a CF function expecting %1 type |
Error | err_builtin_fn_use | builtin functions must be directly called |
Warning | warn_call_wrong_number_of_arguments | too %select{few|many}0 arguments in call to %1 |
Error | err_atomic_builtin_must_be_pointer | address argument to atomic builtin must be a pointer (%0 invalid) |
Error | err_atomic_builtin_must_be_pointer_intptr | [1]:address argument to atomic builtin must be a pointer to integer or pointer [2]: (%0 invalid) |
Error | err_atomic_builtin_must_be_pointer_intfltptr | [1]:address argument to atomic builtin must be a pointer to integer, [2]: floating-point or pointer (%0 invalid) |
Error | err_atomic_builtin_pointer_size | [1]:address argument to atomic builtin must be a pointer to 1,2,4,8 or 16 byte [2]:type (%0 invalid) |
Error | err_atomic_exclusive_builtin_pointer_size | [1]:address argument to load or store exclusive builtin must be a pointer to [2]: 1,2,4 or 8 byte type (%0 invalid) |
Error | err_atomic_op_needs_atomic | [1]:address argument to atomic operation must be a pointer to _Atomic [2]:type (%0 invalid) |
Error | err_atomic_op_needs_non_const_atomic | [1]:address argument to atomic operation must be a pointer to non-const _Atomic [2]:type (%0 invalid) |
Error | err_atomic_op_needs_non_const_pointer | [1]:address argument to atomic operation must be a pointer to non-const [2]:type (%0 invalid) |
Error | err_atomic_op_needs_trivial_copy | [1]:address argument to atomic operation must be a pointer to a [2]:trivially-copyable type (%0 invalid) |
Error | err_atomic_op_needs_atomic_int_or_ptr | [1]:address argument to atomic operation must be a pointer to %select{|atomic }0 [2]:integer or pointer (%1 invalid) |
Error | err_atomic_op_bitwise_needs_atomic_int | [1]:address argument to bitwise atomic operation must be a pointer to [2]:%select{|atomic }0integer (%1 invalid) |
Warning | warn_atomic_op_has_invalid_memory_order | memory order argument to atomic operation is invalid |
Error | err_overflow_builtin_must_be_int | operand argument to overflow builtin must be an integer (%0 invalid) |
Error | err_overflow_builtin_must_be_ptr_int | [1]:result argument to overflow builtin must be a pointer [2]:to a non-const integer (%0 invalid) |
Error | err_atomic_load_store_uses_lib | [1]:atomic %select{load|store}0 requires runtime support that is not [2]:available for this target |
Error | err_nontemporal_builtin_must_be_pointer | address argument to nontemporal builtin must be a pointer (%0 invalid) |
Error | err_nontemporal_builtin_must_be_pointer_intfltptr_or_vector | [1]:address argument to nontemporal builtin must be a pointer to integer, float, [2]:pointer, or a vector of such types (%0 invalid) |
Error | err_deleted_function_use | attempt to use a deleted function |
Error | err_kern_type_not_void_return | kernel function type %0 must have void return type |
Error | err_kern_is_nonstatic_method | kernel function %0 must be a free function or static member function |
Error | err_config_scalar_return | CUDA special function 'cudaConfigureCall' must have scalar return type |
Error | err_kern_call_not_global_function | kernel call to non-global function %0 |
Error | err_global_call_not_config | call to global function %0 not configured |
Error | err_ref_bad_target | [1]:reference to %select{__device__|__global__|__host__|__host__ __device__}0 [2]:function %1 in %select{__device__|__global__|__host__|__host__ __device__}2 function |
Warning | warn_host_calls_from_host_device | calling __host__ function %0 from __host__ __device__ function %1 can lead to runtime errors |
Extension | warn_kern_is_method | kernel function %0 is a member function; this may not be accepted by nvcc |
Warning | warn_kern_is_inline | ignored 'inline' attribute on kernel function %0 |
Error | err_variadic_device_fn | CUDA device code does not support variadic functions |
Error | err_va_arg_in_device | CUDA device code does not support va_arg |
Error | err_alias_not_supported_on_nvptx | CUDA does not support aliases |
Error | err_dynamic_var_init | [1]:dynamic initialization is not supported for [2]:__device__, __constant__, and __shared__ variables. |
Error | err_shared_var_init | initialization is not supported for __shared__ variables. |
Warning | warn_non_pod_vararg_with_format_string | [1]:cannot pass %select{non-POD|non-trivial}0 object of type %1 to variadic [2]:[1]:%select{function|block|method|constructor}2; expected type from format [2]:string was %3 |
Error | err_cannot_pass_objc_interface_to_vararg_format | [1]:cannot pass object with interface type %1 by value to variadic [2]:[1]:%select{function|block|method|constructor}2; expected type from format [2]:string was %3 |
Error | err_cannot_pass_objc_interface_to_vararg | [1]:cannot pass object with interface type %0 by value through variadic [2]:%select{function|block|method|constructor}1 |
Warning | warn_cannot_pass_non_pod_arg_to_vararg | [1]:cannot pass object of %select{non-POD|non-trivial}0 type %1 through variadic [2]: %select{function|block|method|constructor}2; call will abort at runtime |
Warning | warn_cxx98_compat_pass_non_pod_arg_to_vararg | [1]:passing object of trivial but non-POD type %0 through variadic [2]: %select{function|block|method|constructor}1 is incompatible with C++98 |
Warning | warn_pass_class_arg_to_vararg | [1]:passing object of class type %0 through variadic [2]:[1]:%select{function|block|method|constructor}1 [2]:%select{|; did you mean to call '%3'?}2 |
Error | err_cannot_pass_to_vararg | [1]:cannot pass %select{expression of type %1|initializer list}0 to variadic [2]:%select{function|block|method|constructor}2 |
Error | err_cannot_pass_to_vararg_format | [1]:cannot pass %select{expression of type %1|initializer list}0 to variadic [2]:[1]:%select{function|block|method|constructor}2; expected type from format [2]:string was %3 |
Error | err_typecheck_call_invalid_ordered_compare | [1]:ordered compare requires two args of floating point type [2]:%diff{ ($ and $)|}0,1 |
Error | err_typecheck_call_invalid_unary_fp | [1]:floating point classification requires argument of floating point type [2]:(passed in %0) |
Error | err_typecheck_cond_expect_int_float | used type %0 where integer or floating point type is required |
Error | err_typecheck_cond_expect_scalar | used type %0 where arithmetic or pointer type is required |
Error | err_typecheck_cond_expect_nonfloat | used type %0 where floating point type is not allowed |
Extension | ext_typecheck_cond_one_void | C99 forbids conditional expressions with only one void side |
Error | err_typecheck_cast_to_incomplete | cast to incomplete type %0 |
Extension | ext_typecheck_cast_nonscalar | C99 forbids casting nonscalar type %0 to the same type |
Extension | ext_typecheck_cast_to_union | cast to union type is a GNU extension |
Error | err_typecheck_cast_to_union_no_type | cast to union type from type %0 not present in union |
Error | err_cast_pointer_from_non_pointer_int | operand of type %0 cannot be cast to a pointer type |
Warning | warn_cast_pointer_from_sel | cast of type %0 to %1 is deprecated; use sel_getName instead |
Warning | warn_function_def_in_objc_container | function definition inside an Objective-C container is deprecated |
Warning | warn_bad_function_cast | cast from function call of type %0 to non-matching type %1 |
Error | err_cast_pointer_to_non_pointer_int | pointer cannot be cast to type %0 |
Error | err_typecheck_expect_scalar_operand | operand of type %0 where arithmetic or pointer type is required |
Error | err_typecheck_cond_incompatible_operands | incompatible operand types%diff{ ($ and $)|}0,1 |
ExtWarn | ext_typecheck_cond_incompatible_operands_nonstandard | [1]:incompatible operand types%diff{ ($ and $)|}0,1 use non-standard composite [2]:pointer type %2 |
Error | err_cast_selector_expr | cannot type cast @selector expression |
ExtWarn | ext_typecheck_cond_incompatible_pointers | pointer type mismatch%diff{ ($ and $)|}0,1 |
ExtWarn | ext_typecheck_cond_pointer_integer_mismatch | [1]:pointer/integer type mismatch in conditional expression [2]:%diff{ ($ and $)|}0,1 |
Error | err_typecheck_choose_expr_requires_constant | '__builtin_choose_expr' requires a constant expression |
Warning | warn_unused_expr | expression result unused |
Warning | warn_unused_voidptr | expression result unused; should this cast be to 'void'? |
Warning | warn_unused_property_expr | property access result unused - getters should not be used for side effects |
Warning | warn_unused_container_subscript_expr | container access result unused - container access should not be used for side effects |
Warning | warn_unused_call | ignoring return value of function declared with %0 attribute |
Warning | warn_side_effects_unevaluated_context | expression with side effects has no effect in an unevaluated context |
Warning | warn_side_effects_typeid | [1]:expression with side effects will be evaluated despite being used as an [2]:operand to 'typeid' |
Warning | warn_unused_result | ignoring return value of function declared with %0 attribute |
Warning | warn_unused_volatile | expression result unused; assign into a variable to force a volatile load |
Extension | ext_cxx14_attr | use of the %0 attribute is a C++14 extension |
Extension | ext_cxx1z_attr | use of the %0 attribute is a C++1z extension |
Warning | warn_unused_comparison | %select{%select{|in}1equality|relational}0 comparison result unused |
Note | note_inequality_comparison_to_or_assign | use '|=' to turn this inequality comparison into an or-assignment |
Error | err_incomplete_type_used_in_type_trait_expr | incomplete type %0 used in type trait expression |
Error | err_dimension_expr_not_constant_integer | dimension expression does not evaluate to a constant unsigned int |
Error | err_typecheck_cond_incompatible_operands_null | non-pointer operand type %0 incompatible with %select{NULL|nullptr}1 |
Extension | ext_empty_struct_union | empty %select{struct|union}0 is a GNU extension |
Extension | ext_no_named_members_in_struct_union | %select{struct|union}0 without named members is a GNU extension |
Warning | warn_zero_size_struct_union_compat | [1]:%select{|empty }0 [2]:%select{struct|union}1 has size 0 in C, %select{size 1|non-zero size}2 in C++ |
Warning | warn_zero_size_struct_union_in_extern_c | [1]:%select{|empty }0 [2]:%select{struct|union}1 has size 0 in C, %select{size 1|non-zero size}2 in C++ |
Warning | warn_cast_qual | [1]:cast from %0 to %1 drops %select{const and [2]:volatile qualifiers|const qualifier|volatile qualifier}2 |
Warning | warn_cast_qual2 | [1]:cast from %0 to %1 must have all intermediate [2]:pointers const qualified to be safe |
Warning | warn_redefine_extname_not_applied | [1]:#pragma redefine_extname is applicable to external C declarations only; [2]:not applied to %select{function|variable}0 %1 |
Error | err_asm_invalid_lvalue_in_output | invalid lvalue in asm output |
Error | err_asm_invalid_output_constraint | invalid output constraint '%0' in asm |
Error | err_asm_invalid_lvalue_in_input | invalid lvalue in asm input for constraint '%0' |
Error | err_asm_invalid_input_constraint | invalid input constraint '%0' in asm |
Error | err_asm_immediate_expected | [1]:constraint '%0' expects [2]:an integer constant expression |
Error | err_asm_invalid_type_in_input | invalid type %0 in asm input for constraint '%1' |
Error | err_asm_tying_incompatible_types | [1]:unsupported inline asm: input with type [2]:%diff{$ matching output with type $|}0,1 |
Error | err_asm_unexpected_constraint_alternatives | asm constraint has an unexpected number of alternatives: %0 vs %1 |
Error | err_asm_incomplete_type | asm operand has incomplete type %0 |
Error | err_asm_unknown_register_name | unknown register name '%0' in asm |
Error | err_asm_invalid_global_var_reg | [1]:register '%0' unsuitable for [2]:global register variables on this target |
Error | err_asm_register_size_mismatch | [1]:size of register '%0' does not [2]:match variable size |
Error | err_asm_bad_register_type | bad type for named register variable |
Error | err_asm_invalid_input_size | invalid input size for constraint '%0' |
Error | err_asm_invalid_output_size | invalid output size for constraint '%0' |
Error | err_invalid_asm_cast_lvalue | [1]:invalid use of a cast in a inline asm context requiring an l-value: [2]:remove the cast or build with -fheinous-gnu-extensions |
Error | err_invalid_asm_value_for_constraint | value '%0' out of range for constraint '%1' |
Error | err_asm_non_addr_value_in_memory_constraint | [1]:reference to a %select{bit-field|vector element|global register variable}0 [2]: in asm %select{input|output}1 with a memory constraint '%2' |
Error | err_asm_input_duplicate_match | more than one input constraint matches the same output '%0' |
Warning | warn_asm_label_on_auto_decl | ignored asm label '%0' on automatic variable |
Warning | warn_invalid_asm_cast_lvalue | [1]:invalid use of a cast in an inline asm context requiring an l-value: [2]:[1]:accepted due to -fheinous-gnu-extensions, but clang may remove support [2]:for this in the future |
Warning | warn_asm_mismatched_size_modifier | [1]:value size does not match register size specified by the constraint [2]:and modifier |
Note | note_asm_missing_constraint_modifier | use constraint modifier \"%0\" |
Note | note_asm_input_duplicate_first | constraint '%0' is already present here |
Error | err_invalid_conversion_between_vectors | [1]:invalid conversion between vector type%diff{ $ and $|}0,1 of different [2]:size |
Error | err_invalid_conversion_between_vector_and_integer | [1]:invalid conversion between vector type %0 and integer type %1 [2]:of different size |
Error | err_opencl_function_pointer_variable | pointers to functions are not allowed |
Error | err_opencl_taking_function_address | taking address of function is not allowed |
Error | err_invalid_conversion_between_vector_and_scalar | invalid conversion between vector type %0 and scalar type %1 |
Error | err_only_constructors_take_base_inits | only constructors take base initializers |
Error | err_multiple_mem_initialization | multiple initializations given for non-static member %0 |
Error | err_multiple_mem_union_initialization | initializing multiple members of union |
Error | err_multiple_base_initialization | multiple initializations given for base %0 |
Error | err_mem_init_not_member_or_class | [1]:member initializer %0 does not name a non-static data member or base [2]:class |
Warning | warn_initializer_out_of_order | [1]:%select{field|base class}0 %1 will be initialized after [2]:%select{field|base}2 %3 |
Warning | warn_abstract_vbase_init_ignored | [1]:initializer for virtual base class %0 of abstract class %1 [2]:will never be used |
Error | err_base_init_does_not_name_class | constructor initializer %0 does not name a class |
Error | err_base_init_direct_and_virtual | [1]:base class initializer %0 names both a direct base class and an [2]:inherited virtual base class |
Error | err_not_direct_base_or_virtual | type %0 is not a direct or virtual base of %1 |
Error | err_in_class_initializer_non_const | non-const static data member must be initialized out of line |
Error | err_in_class_initializer_volatile | static const volatile data member must be initialized out of line |
Error | err_in_class_initializer_bad_type | static data member of type %0 must be initialized out of line |
ExtWarn | ext_in_class_initializer_float_type | in-class initializer for static data member of type %0 is a GNU extension |
ExtWarn | ext_in_class_initializer_float_type_cxx11 | [1]:in-class initializer for static data member of type %0 requires [2]:'constexpr' specifier |
Note | note_in_class_initializer_float_type_cxx11 | add 'constexpr' |
Error | err_in_class_initializer_literal_type | [1]:in-class initializer for static data member of type %0 requires [2]:'constexpr' specifier |
Error | err_in_class_initializer_non_constant | in-class initializer for static data member is not a constant expression |
Error | err_in_class_initializer_not_yet_parsed | [1]:cannot use defaulted default constructor of %0 within the class [2]:outside of member functions because %1 has an initializer |
Error | err_in_class_initializer_not_yet_parsed_outer_class | [1]:cannot use defaulted default constructor of %0 within [2]:%1 outside of member functions because %2 has an initializer |
Extension | ext_in_class_initializer_non_constant | [1]:in-class initializer for static data member is not a constant expression; [2]:folding it to a constant is a GNU extension |
Error | err_thread_dynamic_init | initializer for thread-local variable must be a constant expression |
Error | err_thread_nontrivial_dtor | type of thread-local variable has non-trivial destruction |
Note | note_use_thread_local | use 'thread_local' to allow this |
Extension | ext_anonymous_union | anonymous unions are a C11 extension |
Extension | ext_gnu_anonymous_struct | anonymous structs are a GNU extension |
Extension | ext_c11_anonymous_struct | anonymous structs are a C11 extension |
Error | err_anonymous_union_not_static | anonymous unions at namespace or global scope must be declared 'static' |
Error | err_anonymous_union_with_storage_spec | anonymous union at class scope must not have a storage specifier |
Error | err_anonymous_struct_not_member | [1]:anonymous %select{structs|structs and classes}0 must be [2]:%select{struct or union|class}0 members |
Error | err_anonymous_record_member_redecl | member of anonymous %select{struct|union}0 redeclares %1 |
Error | err_anonymous_record_with_type | types cannot be declared in an anonymous %select{struct|union}0 |
Extension | ext_anonymous_record_with_type | [1]:types declared in an anonymous %select{struct|union}0 are a Microsoft [2]:extension |
Extension | ext_anonymous_record_with_anonymous_type | [1]:anonymous types declared in an anonymous %select{struct|union}0 [2]:are an extension |
Error | err_anonymous_record_with_function | functions cannot be declared in an anonymous %select{struct|union}0 |
Error | err_anonymous_record_with_static | static members cannot be declared in an anonymous %select{struct|union}0 |
Error | err_anonymous_record_bad_member | anonymous %select{struct|union}0 can only contain non-static data members |
Error | err_anonymous_record_nonpublic_member | [1]:anonymous %select{struct|union}0 cannot contain a [2]:%select{private|protected}1 data member |
ExtWarn | ext_ms_anonymous_record | anonymous %select{structs|unions}0 are a Microsoft extension |
Error | err_reference_to_local_var_in_enclosing_function | reference to local variable %0 declared in enclosing function %1 |
Error | err_reference_to_local_var_in_enclosing_block | reference to local variable %0 declared in enclosing block literal |
Error | err_reference_to_local_var_in_enclosing_lambda | reference to local variable %0 declared in enclosing lambda expression |
Error | err_reference_to_local_var_in_enclosing_context | reference to local variable %0 declared in enclosing context |
Error | err_static_data_member_not_allowed_in_local_class | static data member %0 not allowed in local class %1 |
Error | err_base_clause_on_union | unions cannot have base classes |
Error | err_base_must_be_class | base specifier must name a class |
Error | err_union_as_base_class | unions cannot be base classes |
Error | err_circular_inheritance | circular inheritance between %0 and %1 |
Error | err_base_class_has_flexible_array_member | base class %0 has a flexible array member |
Error | err_incomplete_base_class | base class has incomplete type |
Error | err_duplicate_base_class | base class %0 specified more than once as a direct base class |
Warning | warn_inaccessible_base_class | direct base %0 is inaccessible due to ambiguity:%1 |
Error | err_ambiguous_derived_to_base_conv | ambiguous conversion from derived class %0 to base class %1:%2 |
Error | err_ambiguous_memptr_conv | [1]:ambiguous conversion from pointer to member of %select{base|derived}0 [2]:class %1 to pointer to member of %select{derived|base}0 class %2:%3 |
Error | err_memptr_conv_via_virtual | [1]:conversion from pointer to member of class %0 to pointer to member [2]:of class %1 via virtual base %2 is not allowed |
Error | err_ambiguous_member_multiple_subobjects | non-static member %0 found in multiple base-class subobjects of type %1:%2 |
Error | err_ambiguous_member_multiple_subobject_types | member %0 found in multiple base classes of different types |
Note | note_ambiguous_member_found | member found by ambiguous name lookup |
Error | err_ambiguous_reference | reference to %0 is ambiguous |
Note | note_ambiguous_candidate | candidate found by name lookup is %q0 |
Error | err_ambiguous_tag_hiding | [1]:a type named %0 is hidden by a [2]:declaration in a different namespace |
Note | note_hidden_tag | type declaration hidden |
Note | note_hiding_object | declaration hides type |
Error | err_operator_overload_needs_class_or_enum | [1]:overloaded %0 must have at least one parameter of class [2]:or enumeration type |
Error | err_operator_overload_variadic | overloaded %0 cannot be variadic |
Error | err_operator_overload_static | overloaded %0 cannot be a static member function |
Error | err_operator_overload_default_arg | parameter of overloaded %0 cannot have a default argument |
Error | err_operator_overload_must_be | [1]:overloaded %0 must be a %select{unary|binary|unary or binary}2 operator [2]:(has %1 parameter%s1) |
Error | err_operator_overload_must_be_member | overloaded %0 must be a non-static member function |
Error | err_operator_overload_post_incdec_must_be_int | [1]:parameter of overloaded post-%select{increment|decrement}1 operator must [2]:have type 'int' (not %0) |
Error | err_operator_new_delete_declared_in_namespace | %0 cannot be declared inside a namespace |
Error | err_operator_new_delete_declared_static | %0 cannot be declared static in global scope |
ExtWarn | ext_operator_new_delete_declared_inline | replacement function %0 cannot be declared 'inline' |
Error | err_operator_new_delete_invalid_result_type | %0 must return type %1 |
Error | err_operator_new_delete_dependent_result_type | %0 cannot have a dependent return type; use %1 instead |
Error | err_operator_new_delete_too_few_parameters | %0 must have at least one parameter |
Error | err_operator_new_delete_template_too_few_parameters | %0 template must have at least two parameters |
Warning | warn_operator_new_returns_null | [1]:%0 should not return a null pointer unless it is declared 'throw()' [2]:%select{| or 'noexcept'}1 |
Error | err_operator_new_dependent_param_type | [1]:%0 cannot take a dependent type as first parameter; [2]:use size_t (%1) instead |
Error | err_operator_new_param_type | %0 takes type size_t (%1) as first parameter |
Error | err_operator_new_default_arg | parameter of %0 cannot have a default argument |
Error | err_operator_delete_dependent_param_type | %0 cannot take a dependent type as first parameter; use %1 instead |
Error | err_operator_delete_param_type | first parameter of %0 must have type %1 |
Error | err_literal_operator_outside_namespace | literal operator %0 must be in a namespace or global scope |
Error | err_literal_operator_id_outside_namespace | non-namespace scope '%0' cannot have a literal operator member |
Error | err_literal_operator_default_argument | literal operator cannot have a default argument |
Error | err_literal_operator_bad_param_count | non-template literal operator must have one or two parameters |
Error | err_literal_operator_invalid_param | parameter of literal operator must have type 'unsigned long long', 'long double', 'char', 'wchar_t', 'char16_t', 'char32_t', or 'const char *' |
Error | err_literal_operator_param | invalid literal operator parameter type %0, did you mean %1? |
Error | err_literal_operator_template_with_params | literal operator template cannot have any parameters |
Error | err_literal_operator_template | template parameter list for literal operator must be either 'char...' or 'typename T, T...' |
Error | err_literal_operator_extern_c | literal operator must have C++ linkage |
ExtWarn | ext_string_literal_operator_template | string literal operator templates are a GNU extension |
Warning | warn_user_literal_reserved | [1]:user-defined literal suffixes not starting with '_' are reserved [2]:%select{; no literal will invoke this operator|}0 |
Error | err_conv_function_not_member | conversion function must be a non-static member function |
Error | err_conv_function_return_type | conversion function cannot have a return type |
Error | err_conv_function_with_params | conversion function cannot have any parameters |
Error | err_conv_function_variadic | conversion function cannot be variadic |
Error | err_conv_function_to_array | conversion function cannot convert to an array type |
Error | err_conv_function_to_function | conversion function cannot convert to a function type |
Error | err_conv_function_with_complex_decl | [1]:cannot specify any part of a return type in the [2]:[1]:declaration of a conversion function [2]:[1]:%select{ [2]:[1]:; put the complete type after 'operator'| [2]:[1]:; use a typedef to declare a conversion to %1| [2]:[1]:; use an alias template to declare a conversion to %1| [2]:}0 |
Error | err_conv_function_redeclared | conversion function cannot be redeclared |
Warning | warn_conv_to_self_not_used | conversion function converting %0 to itself will never be used |
Warning | warn_conv_to_base_not_used | conversion function converting %0 to its base class %1 will never be used |
Warning | warn_conv_to_void_not_used | conversion function converting %0 to %1 will never be used |
Warning | warn_not_compound_assign | use of unary operator that may be intended as compound assignment (%0=) |
ExtWarn | ext_explicit_conversion_functions | explicit conversion functions are a C++11 extension |
Warning | warn_cxx98_compat_explicit_conversion_functions | explicit conversion functions are incompatible with C++98 |
Error | err_defaulted_special_member_params | [1]:an explicitly-defaulted %select{|copy |move }0constructor cannot [2]:have default arguments |
Error | err_defaulted_special_member_variadic | [1]:an explicitly-defaulted %select{|copy |move }0constructor cannot [2]:be variadic |
Error | err_defaulted_special_member_return_type | [1]:explicitly-defaulted %select{copy|move}0 assignment operator must [2]:return %1 |
Error | err_defaulted_special_member_quals | [1]:an explicitly-defaulted %select{copy|move}0 assignment operator may not [2]:have 'const'%select{, 'constexpr'|}1 or 'volatile' qualifiers |
Error | err_defaulted_special_member_volatile_param | [1]:the parameter for an explicitly-defaulted %select{<>| [2]:[1]:copy constructor|move constructor|copy assignment operator| [2]:move assignment operator|<>}0 may not be volatile |
Error | err_defaulted_special_member_move_const_param | [1]:the parameter for an explicitly-defaulted move [2]:%select{constructor|assignment operator}0 may not be const |
Error | err_defaulted_special_member_copy_const_param | [1]:the parameter for this explicitly-defaulted copy [2]:[1]:%select{constructor|assignment operator}0 is const, but a member or base [2]:requires it to be non-const |
Error | err_defaulted_copy_assign_not_ref | [1]:the parameter for an explicitly-defaulted copy assignment operator must be an [2]:lvalue reference type |
Error | err_incorrect_defaulted_exception_spec | [1]:exception specification of explicitly defaulted %select{default constructor| [2]:[1]:copy constructor|move constructor|copy assignment operator|move assignment [2]:[1]:operator|destructor}0 does not match the [2]:calculated one |
Error | err_incorrect_defaulted_constexpr | [1]:defaulted definition of %select{default constructor|copy constructor| [2]:[1]:move constructor|copy assignment operator|move assignment operator}0 [2]:is not constexpr |
Error | err_out_of_line_default_deletes | [1]:defaulting this %select{default constructor|copy constructor|move [2]:[1]:constructor|copy assignment operator|move assignment operator|destructor}0 [2]:would delete it after its first declaration |
Warning | warn_vbase_moved_multiple_times | [1]:defaulted move assignment operator of %0 will move assign virtual base [2]:class %1 multiple times |
Note | note_vbase_moved_here | [1]:%select{%1 is a virtual base class of base class %2 declared here| [2]:virtual base class %1 declared here}0 |
ExtWarn | ext_implicit_exception_spec_mismatch | [1]:function previously declared with an %select{explicit|implicit}0 exception [2]:[1]:specification redeclared with an %select{implicit|explicit}0 exception [2]:specification |
Warning | warn_ptr_arith_precedes_bounds | the pointer decremented by %0 refers before the beginning of the array |
Warning | warn_ptr_arith_exceeds_bounds | [1]:the pointer incremented by %0 refers past the end of the array (that [2]:contains %1 element%s2) |
Warning | warn_array_index_precedes_bounds | array index %0 is before the beginning of the array |
Warning | warn_array_index_exceeds_bounds | [1]:array index %0 is past the end of the array (which contains %1 [2]:element%s2) |
Note | note_array_index_out_of_bounds | array %0 declared here |
Warning | warn_printf_insufficient_data_args | more '%%' conversions than data arguments |
Warning | warn_printf_data_arg_not_used | data argument not used by format string |
Warning | warn_format_invalid_conversion | invalid conversion specifier '%0' |
Warning | warn_printf_incomplete_specifier | incomplete format specifier |
Warning | warn_missing_format_string | format string missing |
Warning | warn_scanf_nonzero_width | zero field width in scanf format string is unused |
Warning | warn_format_conversion_argument_type_mismatch | [1]:format specifies type %0 but the argument has [2]:%select{type|underlying type}2 %1 |
Extension | warn_format_conversion_argument_type_mismatch_pedantic | [1]:format specifies type %0 but the argument has [2]:%select{type|underlying type}2 %1 |
Warning | warn_format_argument_needs_cast | [1]:%select{values of type|enum values with underlying type}2 '%0' should not [2]:be used as format arguments; add an explicit cast to %1 instead |
Warning | warn_printf_positional_arg_exceeds_data_args | data argument position '%0' exceeds the number of data arguments (%1) |
Warning | warn_format_zero_positional_specifier | position arguments in format strings start counting at 1 (not 0) |
Warning | warn_format_invalid_positional_specifier | invalid position specified for %select{field width|field precision}0 |
Warning | warn_format_mix_positional_nonpositional_args | cannot mix positional and non-positional arguments in format string |
Warning | warn_static_array_too_small | array argument is too small; contains %0 elements, callee requires at least %1 |
Note | note_callee_static_array | callee declares array parameter as static here |
Warning | warn_empty_format_string | format string is empty |
Warning | warn_format_string_is_wide_literal | format string should not be a wide string |
Warning | warn_printf_format_string_contains_null_char | format string contains '\\0' within the string body |
Warning | warn_printf_format_string_not_null_terminated | format string is not null-terminated |
Warning | warn_printf_asterisk_missing_arg | '%select{*|.*}0' specified field %select{width|precision}0 is missing a matching 'int' argument |
Warning | warn_printf_asterisk_wrong_type | field %select{width|precision}0 should have type %1, but argument has type %2 |
Warning | warn_printf_nonsensical_optional_amount | %select{field width|precision}0 used with '%1' conversion specifier, resulting in undefined behavior |
Warning | warn_printf_nonsensical_flag | flag '%0' results in undefined behavior with '%1' conversion specifier |
Warning | warn_format_nonsensical_length | length modifier '%0' results in undefined behavior or no effect with '%1' conversion specifier |
Warning | warn_format_non_standard_positional_arg | positional arguments are not supported by ISO C |
Warning | warn_format_non_standard | '%0' %select{length modifier|conversion specifier}1 is not supported by ISO C |
Warning | warn_format_non_standard_conversion_spec | using length modifier '%0' with conversion specifier '%1' is not supported by ISO C |
Warning | warn_printf_ignored_flag | flag '%0' is ignored when flag '%1' is present |
Warning | warn_printf_empty_objc_flag | missing object format flag |
Warning | warn_printf_ObjCflags_without_ObjCConversion | object format flags cannot be used with '%0' conversion specifier |
Warning | warn_printf_invalid_objc_flag | '%0' is not a valid object format flag |
Warning | warn_scanf_scanlist_incomplete | no closing ']' for '%%[' in scanf format string |
Note | note_format_string_defined | format string is defined here |
Note | note_format_fix_specifier | did you mean to use '%0'? |
Note | note_printf_c_str | did you mean to call the %0 method? |
Warning | warn_null_arg | null passed to a callee that requires a non-null argument |
Warning | warn_null_ret | null returned from %select{function|method}0 that requires a non-null return value |
Warning | warn_ret_stack_addr_ref | [1]:%select{address of|reference to}0 stack memory associated with local [2]:variable %1 returned |
Warning | warn_ret_local_temp_addr_ref | returning %select{address of|reference to}0 local temporary object |
Warning | warn_ret_addr_label | returning address of label, which is local |
Error | err_ret_local_block | returning block that lives on the local stack |
Note | note_ref_var_local_bind | binding reference variable %0 here |
Warning | warn_bind_ref_member_to_parameter | binding reference member %0 to stack allocated parameter %1 |
Warning | warn_init_ptr_member_to_parameter_addr | initializing pointer member %0 with the stack address of parameter %1 |
Warning | warn_bind_ref_member_to_temporary | binding reference %select{|subobject of }1member %0 to a temporary value |
Note | note_ref_or_ptr_member_declared_here | %select{reference|pointer}0 member declared here |
Note | note_ref_subobject_of_member_declared_here | member with reference subobject declared here |
Warning | warn_comparison_always | %select{self-|array }0comparison always evaluates to %select{false|true|a constant}1 |
Warning | warn_comparison_bitwise_always | bitwise comparison always evaluates to %select{false|true}0 |
Warning | warn_tautological_overlap_comparison | overlapping comparisons always evaluate to %select{false|true}0 |
Warning | warn_stringcompare | [1]:result of comparison against %select{a string literal|@encode}0 is [2]:unspecified (use strncmp instead) |
Warning | warn_identity_field_assign | assigning %select{field|instance variable}0 to itself |
Error | err_type_tag_for_datatype_not_ice | [1]:'type_tag_for_datatype' attribute requires the initializer to be [2]:an %select{integer|integral}0 constant expression |
Error | err_type_tag_for_datatype_too_large | [1]:'type_tag_for_datatype' attribute requires the initializer to be [2]:[1]:an %select{integer|integral}0 constant expression [2]:that can be represented by a 64 bit integer |
Warning | warn_type_tag_for_datatype_wrong_kind | this type tag was not designed to be used with this function |
Warning | warn_type_safety_type_mismatch | [1]:argument type %0 doesn't match specified %1 type tag [2]:%select{that requires %3|}2 |
Warning | warn_type_safety_null_pointer_required | specified %0 type tag requires a null pointer |
Error | err_assoc_type_incomplete | type %0 in generic association incomplete |
Error | err_assoc_type_nonobject | type %0 in generic association not an object type |
Error | err_assoc_type_variably_modified | type %0 in generic association is a variably modified type |
Error | err_assoc_compatible_types | type %0 in generic association compatible with previously specified type %1 |
Note | note_compat_assoc | compatible type %0 specified here |
Error | err_generic_sel_no_match | controlling expression type %0 not compatible with any generic association type |
Error | err_generic_sel_multi_match | controlling expression type %0 compatible with %1 generic association types |
Error | err_blocks_disable | [1]:blocks support disabled - compile with -fblocks [2]: or pick a deployment target that supports them |
Error | err_block_returning_array_function | block cannot return %select{array|function}0 type %1 |
Error | err_builtin_annotation_first_arg | first argument to __builtin_annotation must be an integer |
Error | err_builtin_annotation_second_arg | second argument to __builtin_annotation must be a non-wide string constant |
Error | err_cfstring_literal_not_string_constant | CFString literal is not a string constant |
Warning | warn_cfstring_truncated | [1]:input conversion stopped due to an input byte that does not [2]:belong to the input codeset UTF-8 |
Error | err_continue_not_in_loop | 'continue' statement not in loop statement |
Error | err_break_not_in_loop_or_switch | 'break' statement not in loop or switch statement |
Warning | warn_loop_ctrl_binds_to_inner | '%0' is bound to current loop, GCC binds it to the enclosing loop |
Warning | warn_break_binds_to_switch | 'break' is bound to loop, GCC binds it to switch |
Error | err_default_not_in_switch | 'default' statement not in switch statement |
Error | err_case_not_in_switch | 'case' statement not in switch statement |
Warning | warn_bool_switch_condition | switch condition has boolean value |
Warning | warn_case_value_overflow | overflow converting case value to switch condition type (%0 to %1) |
Error | err_duplicate_case | duplicate case value '%0' |
Error | err_duplicate_case_differing_expr | duplicate case value: '%0' and '%1' both equal '%2' |
Warning | warn_case_empty_range | empty case range specified |
Warning | warn_missing_case_for_condition | no case matching constant switch condition '%0' |
Warning | warn_def_missing_case | [1]:%plural{ [2]:[1]:1:enumeration value %1 not explicitly handled in switch| [2]:[1]:2:enumeration values %1 and %2 not explicitly handled in switch| [2]:[1]:3:enumeration values %1, %2, and %3 not explicitly handled in switch| [2]::%0 enumeration values not explicitly handled in switch: %1, %2, %3...}0 |
Warning | warn_missing_case | [1]:%plural{ [2]:[1]:1:enumeration value %1 not handled in switch| [2]:[1]:2:enumeration values %1 and %2 not handled in switch| [2]:[1]:3:enumeration values %1, %2, and %3 not handled in switch| [2]::%0 enumeration values not handled in switch: %1, %2, %3...}0 |
Warning | warn_unannotated_fallthrough | unannotated fall-through between switch labels |
Warning | warn_unannotated_fallthrough_per_function | [1]:unannotated fall-through between switch labels in partly-annotated [2]:function |
Note | note_insert_fallthrough_fixit | insert '%0;' to silence this warning |
Note | note_insert_break_fixit | insert 'break;' to avoid fall-through |
Error | err_fallthrough_attr_wrong_target | %0 attribute is only allowed on empty statements |
Note | note_fallthrough_insert_semi_fixit | did you forget ';'? |
Error | err_fallthrough_attr_outside_switch | fallthrough annotation is outside switch statement |
Error | err_fallthrough_attr_invalid_placement | fallthrough annotation does not directly precede switch label |
Warning | warn_fallthrough_attr_unreachable | fallthrough annotation in unreachable code |
Warning | warn_unreachable_default | default label in switch which covers all enumeration values |
Warning | warn_not_in_enum | case value not in enumerated type %0 |
Warning | warn_not_in_enum_assignment | [1]:integer constant not in range [2]:of enumerated type %0 |
Error | err_typecheck_statement_requires_scalar | statement requires expression of scalar type (%0 invalid) |
Error | err_typecheck_statement_requires_integer | statement requires expression of integer type (%0 invalid) |
Error | err_multiple_default_labels_defined | multiple default labels in one switch |
Error | err_switch_multiple_conversions | [1]:multiple conversions from switch condition type %0 to an integral or [2]:enumeration type |
Note | note_switch_conversion | conversion to %select{integral|enumeration}0 type %1 |
Error | err_switch_explicit_conversion | switch condition type %0 requires explicit conversion to %1 |
Error | err_switch_incomplete_class_type | switch condition has incomplete class type %0 |
Warning | warn_empty_if_body | if statement has empty body |
Warning | warn_empty_for_body | for loop has empty body |
Warning | warn_empty_range_based_for_body | range-based for loop has empty body |
Warning | warn_empty_while_body | while loop has empty body |
Warning | warn_empty_switch_body | switch statement has empty body |
Note | note_empty_body_on_separate_line | put the semicolon on a separate line to silence this warning |
Error | err_va_start_used_in_non_variadic_function | 'va_start' used in function with fixed args |
Error | err_va_start_used_in_wrong_abi_function | 'va_start' used in %select{System V|Win64}0 ABI function |
Error | err_ms_va_start_used_in_sysv_function | '__builtin_ms_va_start' used in System V ABI function |
Warning | warn_second_parameter_of_va_start_not_last_named_argument | second parameter of 'va_start' not last named argument |
Warning | warn_va_start_of_reference_type_is_undefined | 'va_start' has undefined behavior with reference types |
Error | err_first_argument_to_va_arg_not_of_type_va_list | first argument to 'va_arg' is of type %0 and not 'va_list' |
Error | err_second_parameter_to_va_arg_incomplete | second argument to 'va_arg' is of incomplete type %0 |
Error | err_second_parameter_to_va_arg_abstract | second argument to 'va_arg' is of abstract type %0 |
Warning | warn_second_parameter_to_va_arg_not_pod | second argument to 'va_arg' is of non-POD type %0 |
Warning | warn_second_parameter_to_va_arg_ownership_qualified | second argument to 'va_arg' is of ARC ownership-qualified type %0 |
Warning | warn_second_parameter_to_va_arg_never_compatible | [1]:second argument to 'va_arg' is of promotable type %0; this va_arg has [2]:undefined behavior because arguments will be promoted to %1 |
Warning | warn_return_missing_expr | non-void %select{function|method}1 %0 should return a value |
ExtWarn | ext_return_missing_expr | non-void %select{function|method}1 %0 should return a value |
ExtWarn | ext_return_has_expr | [1]:%select{void function|void method|constructor|destructor}1 %0 [2]:should not return a value |
Extension | ext_return_has_void_expr | void %select{function|method|block}1 %0 should not return void expression |
Error | err_return_init_list | [1]:%select{void function|void method|constructor|destructor}1 %0 [2]:must not return a value |
Error | err_ctor_dtor_returns_void | %select{constructor|destructor}1 %0 must not return void expression |
Warning | warn_noreturn_function_has_return_expr | function %0 declared 'noreturn' should not return |
Warning | warn_falloff_noreturn_function | function declared 'noreturn' should not return |
Error | err_noreturn_block_has_return_expr | block declared 'noreturn' should not return |
Error | err_noreturn_missing_on_first_decl | function declared '[[noreturn]]' after its first declaration |
Note | note_noreturn_missing_first_decl | declaration missing '[[noreturn]]' attribute is here |
Error | err_carries_dependency_missing_on_first_decl | [1]:%select{function|parameter}0 declared '[[carries_dependency]]' [2]:after its first declaration |
Note | note_carries_dependency_missing_first_decl | declaration missing '[[carries_dependency]]' attribute is here |
Error | err_carries_dependency_param_not_function_decl | [1]:'[[carries_dependency]]' attribute only allowed on parameter in a function [2]:declaration or lambda |
Error | err_block_on_nonlocal | __block attribute not allowed, only allowed on local variables |
Error | err_block_on_vm | __block attribute not allowed on declaration with a variably modified type |
Error | err_shufflevector_non_vector | first two arguments to __builtin_shufflevector must be vectors |
Error | err_shufflevector_incompatible_vector | first two arguments to __builtin_shufflevector must have the same type |
Error | err_shufflevector_nonconstant_argument | index for __builtin_shufflevector must be a constant integer |
Error | err_shufflevector_argument_too_large | [1]:index for __builtin_shufflevector must be less than the total number [2]:of vector elements |
Error | err_convertvector_non_vector | first argument to __builtin_convertvector must be a vector |
Error | err_convertvector_non_vector_type | second argument to __builtin_convertvector must be a vector type |
Error | err_convertvector_incompatible_vector | first two arguments to __builtin_convertvector must have the same number of elements |
Error | err_first_argument_to_cwsc_not_call | first argument to __builtin_call_with_static_chain must be a non-member call expression |
Error | err_first_argument_to_cwsc_block_call | first argument to __builtin_call_with_static_chain must not be a block call |
Error | err_first_argument_to_cwsc_builtin_call | first argument to __builtin_call_with_static_chain must not be a builtin call |
Error | err_first_argument_to_cwsc_pdtor_call | first argument to __builtin_call_with_static_chain must not be a pseudo-destructor call |
Error | err_second_argument_to_cwsc_not_pointer | second argument to __builtin_call_with_static_chain must be of pointer type |
Error | err_vector_incorrect_num_initializers | %select{too many|too few}0 elements in vector initialization (expected %1 elements, have %2) |
Error | err_altivec_empty_initializer | expected initializer |
Error | err_invalid_neon_type_code | incompatible constant for this __builtin_neon function |
Error | err_argument_invalid_range | argument should be a value from %0 to %1 |
Warning | warn_neon_vector_initializer_non_portable | [1]:vector initializers are not compatible with NEON intrinsics in big endian [2]:mode |
Note | note_neon_vector_initializer_non_portable | [1]:consider using vld1_%0%1() to initialize a vector from memory, or [2]:vcreate_%0%1() to initialize from an integer constant |
Note | note_neon_vector_initializer_non_portable_q | [1]:consider using vld1q_%0%1() to initialize a vector from memory, or [2]:[1]:vcombine_%0%1(vcreate_%0%1(), vcreate_%0%1()) to initialize from integer [2]:constants |
Error | err_systemz_invalid_tabort_code | invalid transaction abort code |
Error | err_64_bit_builtin_32_bit_tgt | this builtin is only available on 64-bit targets |
Error | err_ppc_builtin_only_on_pwr7 | this builtin is only valid on POWER7 or later CPUs |
Error | err_x86_builtin_32_bit_tgt | this builtin is only available on x86-64 targets |
Error | err_builtin_longjmp_unsupported | __builtin_longjmp is not supported for the current target |
Error | err_builtin_setjmp_unsupported | __builtin_setjmp is not supported for the current target |
Error | err_builtin_longjmp_invalid_val | argument to __builtin_longjmp must be a constant 1 |
Error | err_builtin_requires_language | '%0' is only available in %1 |
Error | err_constant_integer_arg_type | argument to %0 must be a constant integer |
Extension | ext_mixed_decls_code | ISO C90 forbids mixing declarations and code |
Error | err_non_local_variable_decl_in_for | declaration of non-local variable in 'for' loop |
Error | err_non_variable_decl_in_for | non-variable declaration in 'for' loop |
Error | err_toomany_element_decls | only one element declaration is allowed |
Error | err_selector_element_not_lvalue | selector element is not a valid lvalue |
Error | err_selector_element_type | selector element type %0 is not a valid object |
Error | err_selector_element_const_type | selector element of type %0 cannot be a constant l-value expression |
Error | err_collection_expr_type | the type %0 is not a pointer to a fast-enumerable object |
Warning | warn_collection_expr_type | collection expression type %0 may not respond to %1 |
Error | err_invalid_conversion_between_ext_vectors | invalid conversion between ext-vector type %0 and %1 |
Warning | warn_duplicate_attribute_exact | attribute %0 is already applied |
Warning | warn_duplicate_attribute | attribute %0 is already applied with different parameters |
Warning | warn_sync_fetch_and_nand_semantics_change | [1]:the semantics of this intrinsic changed with GCC [2]:version 4.4 - the newer semantics are provided here |
Extension | ext_invalid_sign_spec | '%0' cannot be signed or unsigned |
Warning | warn_receiver_forward_class | receiver %0 is a forward class and corresponding @interface may not exist |
Note | note_method_sent_forward_class | method %0 is used for the forward class |
ExtWarn | ext_missing_declspec | declaration specifier missing, defaulting to 'int' |
ExtWarn | ext_missing_type_specifier | type specifier missing, defaults to 'int' |
Error | err_decimal_unsupported | GNU decimal type extension not supported |
Error | err_missing_type_specifier | C++ requires a type specifier for all declarations |
Error | err_objc_array_of_interfaces | array of interface %0 is invalid (probably should be an array of pointers) |
Extension | ext_c99_array_usage | [1]:%select{qualifier in |static |}0array size %select{||'[*] '}0is a C99 [2]:feature |
Error | err_c99_array_usage_cxx | [1]:%select{qualifier in |static |}0array size %select{||'[*] '}0is a C99 [2]:feature, not permitted in C++ |
Error | err_type_requires_extension | use of type %0 requires %1 extension to be enabled |
Error | err_int128_unsupported | __int128 is not supported on this target |
Error | err_nsconsumed_attribute_mismatch | [1]:overriding method has mismatched ns_consumed attribute on its [2]: parameter |
Error | err_nsreturns_retained_attribute_mismatch | [1]:overriding method has mismatched ns_returns_%select{not_retained|retained}0 [2]: attributes |
Note | note_getter_unavailable | or because setter is declared here, but no getter method %0 is found |
Error | err_invalid_protocol_qualifiers | invalid protocol qualifiers on non-ObjC type |
Warning | warn_ivar_use_hidden | local declaration of %0 hides instance variable |
Warning | warn_direct_initialize_call | explicit call to +initialize results in duplicate call to +initialize |
Warning | warn_direct_super_initialize_call | [1]:explicit call to [super initialize] should only be in implementation [2]:of +initialize |
Error | error_ivar_use_in_class_method | instance variable %0 accessed in class method |
Error | error_implicit_ivar_access | instance variable %0 cannot be accessed because 'self' has been redeclared |
Error | error_private_ivar_access | instance variable %0 is private |
Error | error_protected_ivar_access | instance variable %0 is protected |
Warning | warn_maynot_respond | %0 may not respond to %1 |
Warning | ext_typecheck_base_super | [1]:method parameter type [2]:[1]:%diff{$ does not match super class method parameter type $| [2]:does not match super class method parameter type}0,1 |
Warning | warn_missing_method_return_type | method has no return type specified; defaults to 'id' |
Warning | warn_direct_ivar_access | [1]:instance variable %0 is being [2]:directly accessed |
Error | err_unknown_typename | unknown type name %0 |
Error | err_unknown_type_or_class_name_suggest | unknown %select{type|class}1 name %0; did you mean %2? |
Error | err_unknown_typename_suggest | unknown type name %0; did you mean %1? |
Error | err_unknown_nested_typename_suggest | no type named %0 in %1; did you mean %select{|simply }2%3? |
Error | err_no_member_suggest | no member named %0 in %1; did you mean %select{|simply }2%3? |
Error | err_undeclared_use_suggest | use of undeclared %0; did you mean %1? |
Error | err_undeclared_var_use_suggest | use of undeclared identifier %0; did you mean %1? |
Error | err_no_template_suggest | no template named %0; did you mean %1? |
Error | err_no_member_template_suggest | no template named %0 in %1; did you mean %select{|simply }2%3? |
Error | err_mem_init_not_member_or_class_suggest | [1]:initializer %0 does not name a non-static data member or base [2]:class; did you mean the %select{base class|member}1 %2? |
Error | err_field_designator_unknown_suggest | [1]:field designator %0 does not refer to any field in type %1; did you mean [2]:%2? |
Error | err_typecheck_member_reference_ivar_suggest | %0 does not have a member named %1; did you mean %2? |
Error | err_property_not_found_suggest | property %0 not found on object of type %1; did you mean %2? |
Error | err_ivar_access_using_property_syntax_suggest | property %0 not found on object of type %1; did you mean to access instance variable %2? |
Warning | warn_property_access_suggest | property %0 not found on object of type %1; did you mean to access property %2? |
Error | err_property_found_suggest | [1]:property %0 found on object of type %1; did you mean to access [2]:it with the \".\" operator? |
Error | err_undef_interface_suggest | cannot find interface declaration for %0; did you mean %1? |
Warning | warn_undef_interface_suggest | cannot find interface declaration for %0; did you mean %1? |
Error | err_undef_superclass_suggest | [1]:cannot find interface declaration for %0, superclass of %1; did you mean [2]:%2? |
Error | err_undeclared_protocol_suggest | cannot find protocol declaration for %0; did you mean %1? |
Note | note_base_class_specified_here | base class %0 specified here |
Error | err_using_directive_suggest | no namespace named %0; did you mean %1? |
Error | err_using_directive_member_suggest | no namespace named %0 in %1; did you mean %select{|simply }2%3? |
Note | note_namespace_defined_here | namespace %0 defined here |
Error | err_sizeof_pack_no_pack_name_suggest | %0 does not refer to the name of a parameter pack; did you mean %1? |
Note | note_parameter_pack_here | parameter pack %0 declared here |
Error | err_uncasted_use_of_unknown_any | %0 has unknown type; cast it to its declared type to use it |
Error | err_uncasted_call_of_unknown_any | %0 has unknown return type; cast the call to its declared return type |
Error | err_uncasted_send_to_unknown_any_method | [1]:no known method %select{%objcinstance1|%objcclass1}0; cast the [2]:message send to the method's return type |
Error | err_unsupported_unknown_any_decl | %0 has unknown type, which is not supported for this kind of declaration |
Error | err_unsupported_unknown_any_expr | unsupported expression with unknown type |
Error | err_unsupported_unknown_any_call | call to unsupported expression with unknown type |
Error | err_unknown_any_addrof | [1]:the address of a declaration with unknown type [2]:can only be cast to a pointer type |
Error | err_unknown_any_var_function_type | variable %0 with unknown type cannot be given a function type |
Error | err_unknown_any_function | function %0 with unknown type must be given a function type |
Error | err_filter_expression_integral | filter expression type should be an integral value not %0 |
Error | err_non_asm_stmt_in_naked_function | non-ASM statement in naked function is not supported |
Error | err_asm_naked_this_ref | 'this' pointer references not allowed in naked functions |
Error | err_asm_naked_parm_ref | parameter references not allowed in naked functions |
Error | err_invalid_astype_of_different_size | invalid reinterpretation: sizes of %0 and %1 must match |
Error | err_static_kernel | kernel functions cannot be declared static |
Error | err_opencl_ptrptr_kernel_param | kernel parameter cannot be declared as a pointer to a pointer |
Error | err_opencl_private_ptr_kernel_param | kernel parameter cannot be declared as a pointer to the __private address space |
Error | err_opencl_function_variable | %select{non-kernel function|function scope}0 variable cannot be declared in %1 address space |
Error | err_static_function_scope | variables in function scope cannot be declared static |
Error | err_opencl_bitfields | bitfields are not supported in OpenCL |
Error | err_opencl_vla | variable length arrays are not supported in OpenCL |
Error | err_bad_kernel_param_type | %0 cannot be used as the type of a kernel parameter |
Error | err_record_with_pointers_kernel_param | %select{struct|union}0 kernel parameters may not contain pointers |
Note | note_within_field_of_type | within field of type %0 declared here |
Note | note_illegal_field_declared_here | field of illegal %select{type|pointer type}0 %1 declared here |
Error | err_event_t_global_var | the event_t type cannot be used to declare a program scope variable |
Error | err_opencl_type_struct_or_union_field | the %0 type cannot be used to declare a structure or union field |
Error | err_event_t_addr_space_qual | the event_t type can only be used with __private address space qualifier |
Error | err_expected_kernel_void_return_type | kernel must have void return type |
Error | err_sampler_argument_required | sampler_t variable required - got %0 |
Error | err_wrong_sampler_addressspace | sampler type cannot be used with the __local and __global address space qualifiers |
Error | err_opencl_global_invalid_addr_space | %select{program scope|static local|extern}0 variable must reside in %1 address space |
Error | err_missing_actual_pipe_type | missing actual type specifier for pipe |
Error | err_reference_pipe_type | pipes packet types cannot be of reference type |
Error | err_opencl_no_main | %select{function|kernel}0 cannot be called 'main' |
Error | err_opencl_kernel_attr | attribute %0 can only be applied to a kernel function |
Error | err_opencl_return_value_with_address_space | return value cannot be qualified with address space |
Error | err_opencl_constant_no_init | variable in constant address space must be initialized |
Error | err_atomic_init_constant | [1]:atomic variable can only be assigned to a compile time constant [2]: in the declaration statement in the program scope |
Error | err_opencl_implicit_vector_conversion | implicit conversions between vector types (%0 and %1) are not permitted |
Error | err_opencl_dereferencing | dereferencing pointer of type %0 is not allowed in OpenCL |
Error | err_opencl_block_proto_variadic | invalid block prototype, variadic arguments are not allowed in OpenCL |
Error | err_opencl_invalid_type_array | array of %0 type is invalid in OpenCL |
Error | err_opencl_ternary_with_block | block type cannot be used as expression in ternary expression in OpenCL |
Error | err_opencl_pointer_to_type | pointer to type %0 is invalid in OpenCL |
Error | err_opencl_type_can_only_be_used_as_function_parameter | type %0 can only be used as a function parameter in OpenCL |
Error | err_opencl_builtin_pipe_first_arg | first argument to %0 must be a pipe type |
Error | err_opencl_builtin_pipe_arg_num | invalid number of arguments to function: %0 |
Error | err_opencl_builtin_pipe_invalid_arg | invalid argument type to function %0 (expecting %1) |
Error | err_opencl_builtin_pipe_invalid_access_modifier | invalid pipe access modifier (expecting %0) |
Error | err_opencl_invalid_access_qualifier | access qualifier can only be used for pipe and image type |
Error | err_opencl_invalid_read_write | access qualifier %0 can not be used for %1 %select{|earlier than OpenCL2.0 version}2 |
Error | err_opencl_multiple_access_qualifiers | multiple access qualifiers |
Error | err_opencl_unknown_type_specifier | OpenCL does not support the '%0' %select{type qualifier|storage class specifier}1 |
Error | err_opencl_block_storage_type | the __block storage type is not permitted |
Error | err_opencl_invalid_block_declaration | invalid block variable declaration - must be %select{const qualified|initialized}0 |
Error | err_opencl_extern_block_declaration | invalid block variable declaration - using 'extern' storage class is disallowed |
Error | err_omp_expected_var_arg | %0 is not a global variable, static local variable or static data member |
Error | err_omp_expected_var_arg_suggest | [1]:%0 is not a global variable, static local variable or static data member; [2]:did you mean %1 |
Error | err_omp_global_var_arg | arguments of '#pragma omp %0' must have %select{global storage|static storage duration}1 |
Error | err_omp_ref_type_arg | arguments of '#pragma omp %0' cannot be of reference type %1 |
Error | err_omp_var_scope | '#pragma omp %0' must appear in the scope of the %q1 variable declaration |
Error | err_omp_var_used | '#pragma omp %0' must precede all references to variable %q1 |
Error | err_omp_var_thread_local | variable %0 cannot be threadprivate because it is %select{thread-local|a global named register variable}1 |
Error | err_omp_private_incomplete_type | a private variable with incomplete type %0 |
Error | err_omp_firstprivate_incomplete_type | a firstprivate variable with incomplete type %0 |
Error | err_omp_lastprivate_incomplete_type | a lastprivate variable with incomplete type %0 |
Error | err_omp_reduction_incomplete_type | a reduction list item with incomplete type %0 |
Error | err_omp_unexpected_clause_value | expected %0 in OpenMP clause '%1' |
Error | err_omp_expected_var_name_member_expr | expected variable name%select{| or data member of current class}0 |
Error | err_omp_expected_var_name_member_expr_or_array_item | expected variable name%select{|, data member of current class}0, array element or array section |
Error | err_omp_expected_named_var_member_or_array_expression | expected expression containing only member accesses and/or array sections based on named variables |
Error | err_omp_bit_fields_forbidden_in_map_clause | bit fields cannot be used to specify storage in a map clause |
Error | err_array_section_does_not_specify_contiguous_storage | array section does not specify contiguous storage |
Error | err_omp_union_type_not_allowed | mapped storage cannot be derived from a union |
Error | err_omp_expected_access_to_data_field | expected access to data field |
Error | err_omp_multiple_array_items_in_map_clause | multiple array elements associated with the same variable are not allowed in map clauses of the same construct |
Error | err_omp_pointer_mapped_along_with_derived_section | pointer cannot be mapped along with a section derived from itself |
Error | err_omp_original_storage_is_shared_and_does_not_contain | original storage of expression in data environment is shared but data environment do not fully contain mapped expression storage |
Error | err_omp_same_pointer_derreferenced | same pointer derreferenced in multiple different ways in map clause expressions |
Note | note_omp_task_predetermined_firstprivate_here | predetermined as a firstprivate in a task construct here |
Error | err_omp_threadprivate_incomplete_type | threadprivate variable with incomplete type %0 |
Error | err_omp_no_dsa_for_variable | variable %0 must have explicitly specified data sharing attributes |
Error | err_omp_wrong_dsa | %0 variable cannot be %1 |
Error | err_omp_variably_modified_type_not_supported | arguments of OpenMP clause '%0' in '#pragma omp %2' directive cannot be of variably-modified type %1 |
Note | note_omp_explicit_dsa | defined as %0 |
Note | note_omp_predetermined_dsa | [1]:%select{static data member is predetermined as shared| [2]:[1]:variable with static storage duration is predetermined as shared| [2]:[1]:loop iteration variable is predetermined as private| [2]:[1]:loop iteration variable is predetermined as linear| [2]:[1]:loop iteration variable is predetermined as lastprivate| [2]:[1]:constant variable is predetermined as shared| [2]:[1]:global variable is predetermined as shared| [2]:[1]:non-shared variable in a task construct is predetermined as firstprivate| [2]:[1]:variable with automatic storage duration is predetermined as private}0 [2]:%select{|; perhaps you forget to enclose 'omp %2' directive into a parallel or another task region?}1 |
Note | note_omp_implicit_dsa | implicitly determined as %0 |
Error | err_omp_loop_var_dsa | loop iteration variable in the associated loop of 'omp %1' directive may not be %0, predetermined as %2 |
Error | err_omp_not_for | [1]:%select{statement after '#pragma omp %1' must be a for loop| [2]:expected %2 for loops after '#pragma omp %1'%select{|, but found only %4}3}0 |
Note | note_omp_collapse_ordered_expr | as specified in %select{'collapse'|'ordered'|'collapse' and 'ordered'}0 clause%select{||s}0 |
Error | err_omp_negative_expression_in_clause | argument to '%0' clause must be a %select{non-negative|strictly positive}1 integer value |
Error | err_omp_not_integral | [1]:expression must have integral or unscoped enumeration [2]:type, not %0 |
Error | err_omp_incomplete_type | expression has incomplete class type %0 |
Error | err_omp_explicit_conversion | expression requires explicit conversion from %0 to %1 |
Note | note_omp_conversion_here | conversion to %select{integral|enumeration}0 type %1 declared here |
Error | err_omp_ambiguous_conversion | [1]:ambiguous conversion from type %0 to an integral or unscoped [2]:enumeration type |
Error | err_omp_required_access | %0 variable must be %1 |
Error | err_omp_const_variable | const-qualified variable cannot be %0 |
Error | err_omp_const_reduction_list_item | const-qualified list item cannot be reduction |
Error | err_omp_linear_incomplete_type | a linear variable with incomplete type %0 |
Error | err_omp_linear_expected_int_or_ptr | [1]:argument of a linear clause should be of integral or pointer [2]:type, not %0 |
Warning | warn_omp_linear_step_zero | zero linear step (%0 %select{|and other variables in clause }1should probably be const) |
Warning | warn_omp_alignment_not_power_of_two | aligned clause will be ignored because the requested alignment is not a power of 2 |
Error | err_omp_aligned_expected_array_or_ptr | [1]:argument of aligned clause should be array [2]:[1]:%select{ or pointer|, pointer, reference to array or reference to pointer}1 [2]:, not %0 |
Error | err_omp_aligned_twice | a variable cannot appear in more than one aligned clause |
Error | err_omp_local_var_in_threadprivate_init | variable with local storage in initial value of threadprivate variable |
Error | err_omp_loop_not_canonical_init | [1]:initialization clause of OpenMP for loop is not in canonical form [2]:('var = init' or 'T var = init') |
ExtWarn | ext_omp_loop_not_canonical_init | [1]:initialization clause of OpenMP for loop is not in canonical form [2]:('var = init' or 'T var = init') |
Error | err_omp_loop_not_canonical_cond | [1]:condition of OpenMP for loop must be a relational comparison [2]:('<', '<=', '>', or '>=') of loop variable %0 |
Error | err_omp_loop_not_canonical_incr | [1]:increment clause of OpenMP for loop must perform simple addition [2]:or subtraction on loop variable %0 |
Error | err_omp_loop_variable_type | variable must be of integer or %select{pointer|random access iterator}0 type |
Error | err_omp_loop_incr_not_compatible | [1]:increment expression must cause %0 to %select{decrease|increase}1 [2]:on each iteration of OpenMP for loop |
Note | note_omp_loop_cond_requres_compatible_incr | loop step is expected to be %select{negative|positive}0 due to this condition |
Error | err_omp_loop_diff_cxx | [1]:could not calculate number of iterations calling 'operator-' with [2]:upper and lower loop bounds |
Error | err_omp_loop_cannot_use_stmt | '%0' statement cannot be used in OpenMP for loop |
Error | err_omp_simd_region_cannot_use_stmt | '%0' statement cannot be used in OpenMP simd region |
Warning | warn_omp_loop_64_bit_var | OpenMP loop iteration variable cannot have more than 64 bits size and will be narrowed |
Error | err_omp_unknown_reduction_identifier | incorrect reduction identifier, expected one of '+', '-', '*', '&', '|', '^', '&&', '||', 'min' or 'max' |
Error | err_omp_reduction_ref_type_arg | argument of OpenMP clause 'reduction' must reference the same object in all threads |
Error | err_omp_clause_not_arithmetic_type_arg | arguments of OpenMP clause 'reduction' for 'min' or 'max' must be of %select{scalar|arithmetic}0 type |
Error | err_omp_clause_floating_type_arg | arguments of OpenMP clause 'reduction' with bitwise operators cannot be of floating type |
Error | err_omp_once_referenced | variable can appear only once in OpenMP '%0' clause |
Note | note_omp_referenced | previously referenced here |
Error | err_omp_reduction_in_task | reduction variables may not be accessed in an explicit task |
Error | err_omp_reduction_id_not_compatible | list item of type %0 is not valid for specified reduction operation: unable to provide default initialization value |
Error | err_omp_prohibited_region | [1]:region cannot be%select{| closely}0 nested inside '%1' region [2]:[1]:%select{|; perhaps you forget to enclose 'omp %3' directive into a parallel region?| [2]:[1]:; perhaps you forget to enclose 'omp %3' directive into a for or a parallel for region with 'ordered' clause?| [2]:[1]:; perhaps you forget to enclose 'omp %3' directive into a target region?| [2]:; perhaps you forget to enclose 'omp %3' directive into a teams region?}2 |
Error | err_omp_prohibited_region_simd | OpenMP constructs may not be nested inside a simd region |
Error | err_omp_prohibited_region_atomic | OpenMP constructs may not be nested inside an atomic region |
Error | err_omp_prohibited_region_critical_same_name | cannot nest 'critical' regions having the same name %0 |
Note | note_omp_previous_critical_region | previous 'critical' region starts here |
Error | err_omp_sections_not_compound_stmt | the statement for '#pragma omp sections' must be a compound statement |
Error | err_omp_parallel_sections_not_compound_stmt | the statement for '#pragma omp parallel sections' must be a compound statement |
Error | err_omp_orphaned_section_directive | [1]:%select{orphaned 'omp section' directives are prohibited, it|'omp section' directive}0 [2]: must be closely nested to a sections region%select{|, not a %1 region}0 |
Error | err_omp_sections_substmt_not_section | statement in 'omp sections' directive must be enclosed into a section region |
Error | err_omp_parallel_sections_substmt_not_section | statement in 'omp parallel sections' directive must be enclosed into a section region |
Error | err_omp_parallel_reduction_in_task_firstprivate | argument of a reduction clause of a %0 construct must not appear in a firstprivate clause on a task construct |
Error | err_omp_atomic_read_not_expression_statement | [1]:the statement for 'atomic read' must be an expression statement of form 'v = x;', [2]: where v and x are both lvalue expressions with scalar type |
Note | note_omp_atomic_read_write | %select{expected an expression statement|expected built-in assignment operator|expected expression of scalar type|expected lvalue expression}0 |
Error | err_omp_atomic_write_not_expression_statement | [1]:the statement for 'atomic write' must be an expression statement of form 'x = expr;', [2]: where x is a lvalue expression with scalar type |
Error | err_omp_atomic_update_not_expression_statement | [1]:the statement for 'atomic update' must be an expression statement of form '++x;', '--x;', 'x++;', 'x--;', 'x binop= expr;', 'x = x binop expr' or 'x = expr binop x', [2]: where x is an l-value expression with scalar type |
Error | err_omp_atomic_not_expression_statement | [1]:the statement for 'atomic' must be an expression statement of form '++x;', '--x;', 'x++;', 'x--;', 'x binop= expr;', 'x = x binop expr' or 'x = expr binop x', [2]: where x is an l-value expression with scalar type |
Note | note_omp_atomic_update | [1]:%select{expected an expression statement|expected built-in binary or unary operator|expected unary decrement/increment operation| [2]:[1]:expected expression of scalar type|expected assignment expression|expected built-in binary operator| [2]:expected one of '+', '*', '-', '/', '&', '^', '%|', '<<', or '>>' built-in operations|expected in right hand side of expression}0 |
Error | err_omp_atomic_capture_not_expression_statement | [1]:the statement for 'atomic capture' must be an expression statement of form 'v = ++x;', 'v = --x;', 'v = x++;', 'v = x--;', 'v = x binop= expr;', 'v = x = x binop expr' or 'v = x = expr binop x', [2]: where x and v are both l-value expressions with scalar type |
Error | err_omp_atomic_capture_not_compound_statement | [1]:the statement for 'atomic capture' must be a compound statement of form '{v = x; x binop= expr;}', '{x binop= expr; v = x;}', [2]:[1]: '{v = x; x = x binop expr;}', '{v = x; x = expr binop x;}', '{x = x binop expr; v = x;}', '{x = expr binop x; v = x;}' or '{v = x; x = expr;}', [2]:[1]: '{v = x; x++;}', '{v = x; ++x;}', '{++x; v = x;}', '{x++; v = x;}', '{v = x; x--;}', '{v = x; --x;}', '{--x; v = x;}', '{x--; v = x;}' [2]: where x is an l-value expression with scalar type |
Note | note_omp_atomic_capture | %select{expected assignment expression|expected compound statement|expected exactly two expression statements|expected in right hand side of the first expression}0 |
Error | err_omp_atomic_several_clauses | directive '#pragma omp atomic' cannot contain more than one 'read', 'write', 'update' or 'capture' clause |
Note | note_omp_atomic_previous_clause | '%0' clause used here |
Error | err_omp_target_contains_not_only_teams | target construct with nested teams region contains statements outside of the teams construct |
Note | note_omp_nested_teams_construct_here | nested teams construct here |
Note | note_omp_nested_statement_here | %select{statement|directive}0 outside teams construct here |
Error | err_omp_single_copyprivate_with_nowait | the 'copyprivate' clause must not be used with the 'nowait' clause |
Note | note_omp_nowait_clause_here | 'nowait' clause is here |
Error | err_omp_wrong_cancel_region | one of 'for', 'parallel', 'sections' or 'taskgroup' is expected |
Error | err_omp_parent_cancel_region_nowait | parent region for 'omp %select{cancellation point/cancel}0' construct cannot be nowait |
Error | err_omp_parent_cancel_region_ordered | parent region for 'omp %select{cancellation point/cancel}0' construct cannot be ordered |
Error | err_omp_reduction_wrong_type | reduction type cannot be %select{qualified with 'const', 'volatile' or 'restrict'|a function|a reference|an array}0 type |
Error | err_omp_wrong_var_in_declare_reduction | only %select{'omp_priv' or 'omp_orig'|'omp_in' or 'omp_out'}0 variables are allowed in %select{initializer|combiner}0 expression |
Error | err_omp_declare_reduction_redefinition | redefinition of user-defined reduction for type %0 |
Error | err_omp_array_section_use | OpenMP array section is not allowed here |
Error | err_omp_typecheck_section_value | subscripted value is not an array or pointer |
Error | err_omp_typecheck_section_not_integer | array section %select{lower bound|length}0 is not an integer |
Error | err_omp_section_function_type | section of pointer to function type %0 |
Warning | warn_omp_section_is_char | array section %select{lower bound|length}0 is of type 'char' |
Error | err_omp_section_incomplete_type | section of pointer to incomplete type %0 |
Error | err_omp_section_negative | section %select{lower bound|length}0 is evaluated to a negative value %1 |
Error | err_omp_section_length_undefined | section length is unspecified and cannot be inferred because subscripted value is %select{not an array|an array of unknown bound}0 |
Error | err_omp_wrong_linear_modifier | expected %select{'val' modifier|one of 'ref', val' or 'uval' modifiers}0 |
Error | err_omp_wrong_linear_modifier_non_reference | variable of non-reference type %0 can be used only with 'val' modifier, but used with '%1' |
Error | err_omp_wrong_simdlen_safelen_values | the value of 'simdlen' parameter must be less than or equal to the value of the 'safelen' parameter |
Error | err_omp_wrong_if_directive_name_modifier | directive name modifier '%0' is not allowed for '#pragma omp %1' |
Error | err_omp_no_more_if_clause | no more 'if' clause is allowed |
Error | err_omp_unnamed_if_clause | expected %select{|one of}0 %1 directive name modifier%select{|s}0 |
Note | note_omp_previous_named_if_clause | previous clause with directive name modifier specified here |
Error | err_omp_ordered_directive_with_param | 'ordered' directive %select{without any clauses|with 'threads' clause}0 cannot be closely nested inside ordered region with specified parameter |
Error | err_omp_ordered_directive_without_param | 'ordered' directive with 'depend' clause cannot be closely nested inside ordered region without specified parameter |
Note | note_omp_ordered_param | 'ordered' clause with specified parameter |
Error | err_omp_expected_base_var_name | expected variable name as a base of the array %select{subscript|section}0 |
Error | err_omp_map_shared_storage | variable already marked as mapped in current construct |
Error | err_omp_not_mappable_type | type %0 is not mappable to target |
Error | err_omp_invalid_map_type_for_directive | %select{map type '%1' is not allowed|map type must be specified}0 for '#pragma omp %2' |
Error | err_omp_no_map_for_directive | expected at least one map clause for '#pragma omp %0' |
Note | note_omp_polymorphic_in_target | mappable type cannot be polymorphic |
Note | note_omp_static_member_in_target | mappable type cannot contain static members |
Error | err_omp_threadprivate_in_map | threadprivate variables are not allowed in map clause |
Error | err_omp_wrong_ordered_loop_count | the parameter of the 'ordered' clause must be greater than or equal to the parameter of the 'collapse' clause |
Note | note_collapse_loop_count | parameter of the 'collapse' clause |
Error | err_omp_grainsize_num_tasks_mutually_exclusive | '%0' and '%1' clause are mutually exclusive and may not appear on the same directive |
Note | note_omp_previous_grainsize_num_tasks | '%0' clause is specified here |
Error | err_omp_hint_clause_no_name | the name of the construct must be specified in presence of 'hint' clause |
Error | err_omp_critical_with_hint | constructs with the same name must have a 'hint' clause with the same value |
Note | note_omp_critical_hint_here | %select{|previous }0'hint' clause with value '%1' |
Note | note_omp_critical_no_hint | %select{|previous }0directive with no 'hint' clause specified |
Error | err_omp_firstprivate_distribute_private_teams | private variable in '#pragma omp teams' cannot be firstprivate in '#pragma omp distribute' |
Error | err_omp_firstprivate_and_lastprivate_in_distribute | lastprivate variable cannot be firstprivate in '#pragma omp distribute' |
Error | err_omp_firstprivate_distribute_in_teams_reduction | reduction variable in '#pragma omp teams' cannot be firstprivate in '#pragma omp distribute' |
Error | err_omp_depend_clause_thread_simd | 'depend' clauses cannot be mixed with '%0' clause |
Error | err_omp_depend_sink_wrong_expr | expected expression form x[+-d], where x is the loop iteration variable and d is a constant non-negative integer |
Error | err_omp_depend_sink_expected_loop_iteration | expected %0 loop iteration variable |
Error | err_omp_depend_sink_unexpected_expr | unexpected expression: number of expressions is larger than the number of associated loops |
Error | err_omp_depend_sink_expected_plus_minus | expected '+' or '-' operation |
Error | err_omp_depend_sink_source_not_allowed | 'depend(%select{source|sink:vec}0)' clause%select{|s}0 cannot be mixed with 'depend(%select{sink:vec|source}0)' clause%select{s|}0 |
Error | err_omp_linear_ordered | 'linear' clause cannot be specified along with 'ordered' clause with a parameter |
Error | err_omp_unexpected_schedule_modifier | modifier '%0' cannot be used along with modifier '%1' |
Error | err_omp_schedule_nonmonotonic_static | 'nonmonotonic' modifier can only be specified with 'dynamic' or 'guided' schedule kind |
Error | err_omp_schedule_nonmonotonic_ordered | 'schedule' clause with 'nonmonotonic' modifier cannot be specified if an 'ordered' clause is specified |
Error | err_omp_ordered_simd | 'ordered' clause with a parameter can not be specified in '#pragma omp %0' directive |
Warning | warn_related_result_type_compatibility_class | [1]:method is expected to return an instance of its class type [2]:[1]:%diff{$, but is declared to return $| [2]:, but is declared to return different type}0,1 |
Warning | warn_related_result_type_compatibility_protocol | [1]:protocol method is expected to return an instance of the implementing [2]:class, but is declared to return %0 |
Note | note_related_result_type_family | [1]:%select{overridden|current}0 method is part of the '%select{|alloc|copy|init| [2]:[1]:mutableCopy|new|autorelease|dealloc|finalize|release|retain|retainCount| [2]:[1]:self}1' method family%select{| and is expected to return an instance of its [2]:class type}0 |
Note | note_related_result_type_overridden | overridden method returns an instance of its class type |
Note | note_related_result_type_inferred | [1]:%select{class|instance}0 method %1 is assumed to return an instance of [2]:its receiver type (%2) |
Note | note_related_result_type_explicit | [1]:%select{overridden|current}0 method is explicitly declared 'instancetype' [2]:%select{| and is expected to return an instance of its class type}0 |
Error | err_module_private_specialization | [1]:%select{template|partial|member}0 specialization cannot be [2]:declared __module_private__ |
Error | err_module_private_local | [1]:%select{local variable|parameter|typedef}0 %1 cannot be declared [2]:__module_private__ |
Error | err_module_private_local_class | [1]:local %select{struct|interface|union|class|enum}0 cannot be declared [2]:__module_private__ |
Error | err_module_unimported_use | [1]:%select{declaration|definition|default argument}0 of %1 must be imported [2]:from module '%2' before it is required |
Error | err_module_unimported_use_multiple | [1]:%select{declaration|definition|default argument}0 of %1 must be imported [2]:from one of the following modules before it is required:%2 |
ExtWarn | ext_module_import_in_extern_c | [1]:import of C++ module '%0' appears within extern \"C\" language linkage [2]:specification |
Note | note_module_import_in_extern_c | extern \"C\" language linkage specification begins here |
Error | err_module_import_not_at_top_level_fatal | import of module '%0' appears within %1 |
ExtWarn | ext_module_import_not_at_top_level_noop | redundant #include of module '%0' appears within %1 |
Note | note_module_import_not_at_top_level | %0 begins here |
Error | err_module_self_import | import of module '%0' appears within same top-level module '%1' |
Error | err_module_import_in_implementation | @import of module '%0' in implementation of '%1'; use #import |
ExtWarn | ext_equivalent_internal_linkage_decl_in_modules | ambiguous use of internal linkage declaration %0 defined in multiple modules |
Note | note_equivalent_internal_linkage_decl | declared here%select{ in module '%1'|}0 |
Error | err_return_in_coroutine | return statement not allowed in coroutine; did you mean 'co_return'? |
Note | note_declared_coroutine_here | [1]:function is a coroutine due to use of [2]:'%select{co_await|co_yield|co_return}0' here |
Error | err_coroutine_objc_method | Objective-C methods as coroutines are not yet supported |
Error | err_coroutine_unevaluated_context | '%0' cannot be used in an unevaluated context |
Error | err_coroutine_outside_function | '%0' cannot be used outside a function |
Error | err_coroutine_ctor_dtor | '%1' cannot be used in a %select{constructor|destructor}0 |
Error | err_coroutine_constexpr | '%0' cannot be used in a constexpr function |
Error | err_coroutine_varargs | '%0' cannot be used in a varargs function |
ExtWarn | ext_coroutine_without_co_await_co_yield | [1]:'co_return' used in a function [2]:that uses neither 'co_await' nor 'co_yield' |
Error | err_implied_std_coroutine_traits_not_found | you need to include before defining a coroutine |
Error | err_malformed_std_coroutine_traits | 'std::coroutine_traits' must be a class template |
Error | err_implied_std_coroutine_traits_promise_type_not_found | this function cannot be a coroutine: %q0 has no member named 'promise_type' |
Error | err_implied_std_coroutine_traits_promise_type_not_class | this function cannot be a coroutine: %0 is not a class |
Error | err_coroutine_traits_missing_specialization | [1]:this function cannot be a coroutine: missing definition of [2]:specialization %q0 |
Warning | warn_not_a_doxygen_trailing_member_comment | not a Doxygen trailing comment |
Warning | warn_profile_data_out_of_date | [1]:profile data may be out of date: of %0 function%s0, %1 %plural{1:has|:have}1 [2]: no data and %2 %plural{1:has|:have}2 mismatched data that will be ignored |
Warning | warn_profile_data_unprofiled | no profile data available for file \"%0\" |
Warning | warn_mismatched_nullability_attr | nullability specifier %0 conflicts with existing specifier %1 |
Warning | warn_nullability_declspec | [1]:nullability specifier %0 cannot be applied [2]:[1]:to non-pointer type %1; did you mean to apply the specifier to the [2]:[1]:%select{pointer|block pointer|member pointer|function pointer| [2]:member function pointer}2? |
Note | note_nullability_here | %0 specified here |
Error | err_nullability_nonpointer | nullability specifier %0 cannot be applied to non-pointer type %1 |
Warning | warn_nullability_lost | [1]:implicit conversion from nullable pointer %0 to non-nullable pointer [2]:type %1 |
Error | err_nullability_cs_multilevel | nullability keyword %0 cannot be applied to multi-level pointer type %1 |
Note | note_nullability_type_specifier | [1]:use nullability type specifier %0 to affect the innermost [2]:pointer type of %1 |
Warning | warn_null_resettable_setter | synthesized setter %0 for null_resettable property %1 does not handle nil |
Warning | warn_nullability_missing | [1]:%select{pointer|block pointer|member pointer}0 is missing a nullability [2]:type specifier (_Nonnull, _Nullable, or _Null_unspecified) |
Error | err_objc_type_arg_explicit_nullability | type argument %0 cannot explicitly specify nullability |
Error | err_objc_type_param_bound_explicit_nullability | type parameter %0 bound %1 cannot explicitly specify nullability |
Error | err_objc_type_param_bound_nonobject | type bound %0 for type parameter %1 is not an Objective-C pointer type |
Error | err_objc_type_param_bound_missing_pointer | missing '*' in type bound %0 for type parameter %1 |
Error | err_objc_type_param_bound_qualified | type bound %1 for type parameter %0 cannot be qualified with '%2' |
Error | err_objc_type_param_redecl | redeclaration of type parameter %0 |
Error | err_objc_type_param_arity_mismatch | [1]:%select{forward class declaration|class definition|category|extension}0 has [2]:too %select{few|many}1 type parameters (expected %2, have %3) |
Error | err_objc_type_param_bound_conflict | [1]:type bound %0 for type parameter %1 conflicts with [2]:%select{implicit|previous}2 bound %3%select{for type parameter %5|}4 |
Error | err_objc_type_param_variance_conflict | [1]:%select{in|co|contra}0variant type parameter %1 conflicts with previous [2]:%select{in|co|contra}2variant type parameter %3 |
Note | note_objc_type_param_here | type parameter %0 declared here |
Error | err_objc_type_param_bound_missing | missing type bound %0 for type parameter %1 in %select{@interface|@class}2 |
Error | err_objc_parameterized_category_nonclass | [1]:%select{extension|category}0 of non-parameterized class %1 cannot have type [2]:parameters |
Error | err_objc_parameterized_forward_class | [1]:forward declaration of non-parameterized class %0 cannot have type [2]:parameters |
Error | err_objc_parameterized_forward_class_first | class %0 previously declared with type parameters |
Error | err_objc_type_arg_missing_star | type argument %0 must be a pointer (requires a '*') |
Error | err_objc_type_arg_qualified | type argument %0 cannot be qualified with '%1' |
Error | err_objc_type_arg_missing | no type or protocol named %0 |
Error | err_objc_type_args_and_protocols | [1]:angle brackets contain both a %select{type|protocol}0 (%1) and a [2]:%select{protocol|type}0 (%2) |
Error | err_objc_type_args_non_class | type arguments cannot be applied to non-class type %0 |
Error | err_objc_type_args_non_parameterized_class | type arguments cannot be applied to non-parameterized class %0 |
Error | err_objc_type_args_specialized_class | type arguments cannot be applied to already-specialized class type %0 |
Error | err_objc_type_args_wrong_arity | too %select{many|few}0 type arguments for class %1 (have %2, expected %3) |
Error | err_objc_type_arg_not_id_compatible | type argument %0 is neither an Objective-C object nor a block type |
Error | err_objc_type_arg_does_not_match_bound | type argument %0 does not satisfy the bound (%1) of type parameter %2 |
Warning | warn_objc_redundant_qualified_class_type | [1]:parameterized class %0 already conforms to the protocols listed; did you [2]:forget a '*'? |
#DiagnosticSerializationKinds.td
Type | Name | Message |
---|---|---|
Error | err_fe_unable_to_read_pch_file | unable to read PCH file %0: '%1' |
Error | err_fe_not_a_pch_file | input is not a PCH file: '%0' |
Error | err_fe_pch_malformed | malformed or corrupted AST file: '%0' |
Error | err_fe_pch_malformed_block | malformed block record in PCH file: '%0' |
Error | err_fe_pch_file_modified | file '%0' has been modified since the precompiled header '%1' was built |
Error | err_fe_pch_file_overridden | file '%0' from the precompiled header has been overridden |
Note | note_pch_required_by | '%0' required by '%1' |
Note | note_pch_rebuild_required | please rebuild precompiled header '%0' |
Note | note_module_cache_path | after modifying system headers, please delete the module cache at '%0' |
Error | err_pch_targetopt_mismatch | [1]:PCH file was compiled for the %0 '%1' but the current translation [2]:unit is being compiled for target '%2' |
Error | err_pch_targetopt_feature_mismatch | [1]:%select{AST file|current translation unit}0 was compiled with the target [2]:[1]:feature'%1' but the %select{current translation unit is|AST file was}0 [2]:not |
Error | err_pch_langopt_mismatch | [1]:%0 was %select{disabled|enabled}1 in [2]:PCH file but is currently %select{disabled|enabled}2 |
Error | err_pch_langopt_value_mismatch | %0 differs in PCH file vs. current file |
Error | err_pch_diagopt_mismatch | [1]:%0 is currently enabled, but was not in [2]:the PCH file |
Error | err_pch_modulecache_mismatch | [1]:PCH was compiled with module cache [2]:path '%0', but the path is currently '%1' |
Error | err_pch_version_too_old | PCH file uses an older PCH format that is no longer supported |
Error | err_pch_version_too_new | PCH file uses a newer PCH format that cannot be read |
Error | err_pch_different_branch | PCH file built from a different branch (%0) than the compiler (%1) |
Error | err_pch_with_compiler_errors | PCH file contains compiler errors |
Error | err_module_file_conflict | module '%0' is defined in both '%1' and '%2' |
Error | err_module_file_not_found | %select{PCH|module|AST}0 file '%1' not found%select{|: %3}2 |
Error | err_module_file_out_of_date | [1]:%select{PCH|module|AST}0 file '%1' is out of date and [2]:needs to be rebuilt%select{|: %3}2 |
Error | err_module_file_invalid | file '%1' is not a valid precompiled %select{PCH|module|AST}0 file |
Note | note_module_file_imported_by | imported by %select{|module '%2' in }1'%0' |
Error | err_module_file_not_module | AST file '%0' was not built as a module |
Error | err_imported_module_not_found | [1]:module '%0' in AST file '%1' (imported by AST file '%2') [2]:[1]:is not defined in any loaded module map file; [2]:maybe you need to load '%3'? |
Error | err_imported_module_modmap_changed | [1]:module '%0' imported by AST file '%1' found in a different module map file [2]: (%2) than when the importing AST file was built (%3) |
Error | err_imported_module_relocated | [1]:module '%0' was built in directory '%1' but now resides in [2]:directory '%2' |
Error | err_module_different_modmap | [1]:module '%0' %select{uses|does not use}1 additional module map '%2' [2]:%select{| not}1 used when the module was built |
Error | err_pch_macro_def_undef | [1]:macro '%0' was %select{defined|undef'd}1 in the precompiled header but [2]:%select{undef'd|defined}1 on the command line |
Error | err_pch_macro_def_conflict | [1]:definition of macro '%0' differs between the precompiled header ('%1') [2]:and the command line ('%2') |
Error | err_pch_undef | [1]:%select{command line contains|precompiled header was built with}0 [2]:[1]:'-undef' but %select{precompiled header was not built with it| [2]:it is not present on the command line}0 |
Error | err_pch_pp_detailed_record | [1]:%select{command line contains|precompiled header was built with}0 [2]:[1]:'-detailed-preprocessing-record' but %select{precompiled header was not [2]:built with it|it is not present on the command line}0 |
Error | err_module_odr_violation_missing_decl | [1]:%q0 from module '%1' is not present in definition of %q2 [2]:%select{ in module '%4'| provided earlier}3 |
Note | note_module_odr_violation_no_possible_decls | definition has no member %0 |
Note | note_module_odr_violation_possible_decl | declaration of %0 does not match |
Error | err_module_odr_violation_different_definitions | [1]:%q0 has different definitions in different modules; [2]:%select{definition in module '%2' is here|defined here}1 |
Note | note_module_odr_violation_different_definitions | definition in module '%0' is here |
Error | err_module_odr_violation_different_instantiations | instantiation of %q0 is different in different modules |
Warning | warn_module_uses_date_time | %select{precompiled header|module}0 uses __DATE__ or __TIME__ |
Warning | warn_duplicate_module_file_extension | duplicate module file extension block name '%0' |