DiagnosticSerializationKinds.td revision 321369
1234287Sdim//==--- DiagnosticSerializationKinds.td - serialization diagnostics -------===// 2234287Sdim// 3234287Sdim// The LLVM Compiler Infrastructure 4234287Sdim// 5234287Sdim// This file is distributed under the University of Illinois Open Source 6234287Sdim// License. See LICENSE.TXT for details. 7234287Sdim// 8234287Sdim//===----------------------------------------------------------------------===// 9234287Sdim 10234287Sdimlet Component = "Serialization" in { 11276479Sdimlet CategoryName = "AST Deserialization Issue" in { 12234287Sdim 13234287Sdimdef err_fe_unable_to_read_pch_file : Error< 14239462Sdim "unable to read PCH file %0: '%1'">; 15234287Sdimdef err_fe_not_a_pch_file : Error< 16234287Sdim "input is not a PCH file: '%0'">; 17234287Sdimdef err_fe_pch_malformed : Error< 18261991Sdim "malformed or corrupted AST file: '%0'">, DefaultFatal; 19234287Sdimdef err_fe_pch_malformed_block : Error< 20234287Sdim "malformed block record in PCH file: '%0'">, DefaultFatal; 21234287Sdimdef err_fe_pch_file_modified : Error< 22249423Sdim "file '%0' has been modified since the precompiled header '%1' was built">, 23234287Sdim DefaultFatal; 24314564Sdimdef err_fe_module_file_modified : Error< 25314564Sdim "file '%0' has been modified since the module file '%1' was built">, 26314564Sdim DefaultFatal; 27314564Sdimdef err_fe_ast_file_modified : Error< 28314564Sdim "file '%0' has been modified since the AST file '%1' was built">, 29314564Sdim DefaultFatal; 30239462Sdimdef err_fe_pch_file_overridden : Error< 31239462Sdim "file '%0' from the precompiled header has been overridden">; 32276479Sdimdef note_pch_required_by : Note<"'%0' required by '%1'">; 33276479Sdimdef note_pch_rebuild_required : Note<"please rebuild precompiled header '%0'">; 34261991Sdimdef note_module_cache_path : Note< 35261991Sdim "after modifying system headers, please delete the module cache at '%0'">; 36234287Sdim 37243830Sdimdef err_pch_targetopt_mismatch : Error< 38243830Sdim "PCH file was compiled for the %0 '%1' but the current translation " 39243830Sdim "unit is being compiled for target '%2'">; 40243830Sdimdef err_pch_targetopt_feature_mismatch : Error< 41243830Sdim "%select{AST file|current translation unit}0 was compiled with the target " 42243830Sdim "feature'%1' but the %select{current translation unit is|AST file was}0 " 43243830Sdim "not">; 44234287Sdimdef err_pch_langopt_mismatch : Error<"%0 was %select{disabled|enabled}1 in " 45234287Sdim "PCH file but is currently %select{disabled|enabled}2">; 46234287Sdimdef err_pch_langopt_value_mismatch : Error< 47234287Sdim "%0 differs in PCH file vs. current file">; 48276479Sdimdef err_pch_diagopt_mismatch : Error<"%0 is currently enabled, but was not in " 49276479Sdim "the PCH file">; 50288943Sdimdef err_pch_modulecache_mismatch : Error<"PCH was compiled with module cache " 51288943Sdim "path '%0', but the path is currently '%1'">; 52234287Sdim 53276479Sdimdef err_pch_version_too_old : Error< 54234287Sdim "PCH file uses an older PCH format that is no longer supported">; 55276479Sdimdef err_pch_version_too_new : Error< 56234287Sdim "PCH file uses a newer PCH format that cannot be read">; 57276479Sdimdef err_pch_different_branch : Error< 58234287Sdim "PCH file built from a different branch (%0) than the compiler (%1)">; 59234287Sdimdef err_pch_with_compiler_errors : Error< 60234287Sdim "PCH file contains compiler errors">; 61276479Sdim 62296417Sdimdef err_module_file_conflict : Error< 63296417Sdim "module '%0' is defined in both '%1' and '%2'">, DefaultFatal; 64296417Sdimdef err_module_file_not_found : Error< 65296417Sdim "%select{PCH|module|AST}0 file '%1' not found%select{|: %3}2">, DefaultFatal; 66296417Sdimdef err_module_file_out_of_date : Error< 67296417Sdim "%select{PCH|module|AST}0 file '%1' is out of date and " 68296417Sdim "needs to be rebuilt%select{|: %3}2">, DefaultFatal; 69296417Sdimdef err_module_file_invalid : Error< 70296417Sdim "file '%1' is not a valid precompiled %select{PCH|module|AST}0 file">, DefaultFatal; 71296417Sdimdef note_module_file_imported_by : Note< 72296417Sdim "imported by %select{|module '%2' in }1'%0'">; 73296417Sdimdef err_module_file_not_module : Error< 74296417Sdim "AST file '%0' was not built as a module">, DefaultFatal; 75296417Sdim 76276479Sdimdef err_imported_module_not_found : Error< 77280031Sdim "module '%0' in AST file '%1' (imported by AST file '%2') " 78280031Sdim "is not defined in any loaded module map file; " 79280031Sdim "maybe you need to load '%3'?">, DefaultFatal; 80276479Sdimdef err_imported_module_modmap_changed : Error< 81276479Sdim "module '%0' imported by AST file '%1' found in a different module map file" 82276479Sdim " (%2) than when the importing AST file was built (%3)">, DefaultFatal; 83280031Sdimdef err_imported_module_relocated : Error< 84280031Sdim "module '%0' was built in directory '%1' but now resides in " 85280031Sdim "directory '%2'">, DefaultFatal; 86280031Sdimdef err_module_different_modmap : Error< 87280031Sdim "module '%0' %select{uses|does not use}1 additional module map '%2'" 88280031Sdim "%select{| not}1 used when the module was built">; 89249423Sdim 90243830Sdimdef err_pch_macro_def_undef : Error< 91243830Sdim "macro '%0' was %select{defined|undef'd}1 in the precompiled header but " 92243830Sdim "%select{undef'd|defined}1 on the command line">; 93243830Sdimdef err_pch_macro_def_conflict : Error< 94243830Sdim "definition of macro '%0' differs between the precompiled header ('%1') " 95243830Sdim "and the command line ('%2')">; 96243830Sdimdef err_pch_undef : Error< 97243830Sdim "%select{command line contains|precompiled header was built with}0 " 98243830Sdim "'-undef' but %select{precompiled header was not built with it|" 99243830Sdim "it is not present on the command line}0">; 100251662Sdimdef err_pch_pp_detailed_record : Error< 101251662Sdim "%select{command line contains|precompiled header was built with}0 " 102251662Sdim "'-detailed-preprocessing-record' but %select{precompiled header was not " 103251662Sdim "built with it|it is not present on the command line}0">; 104234287Sdim 105261991Sdimdef err_module_odr_violation_missing_decl : Error< 106261991Sdim "%q0 from module '%1' is not present in definition of %q2" 107261991Sdim "%select{ in module '%4'| provided earlier}3">, NoSFINAE; 108261991Sdimdef note_module_odr_violation_no_possible_decls : Note< 109261991Sdim "definition has no member %0">; 110261991Sdimdef note_module_odr_violation_possible_decl : Note< 111261991Sdim "declaration of %0 does not match">; 112276479Sdimdef err_module_odr_violation_different_definitions : Error< 113276479Sdim "%q0 has different definitions in different modules; " 114276479Sdim "%select{definition in module '%2' is here|defined here}1">; 115321369Sdimdef note_first_module_difference : Note< 116321369Sdim "in first definition, possible difference is here">; 117276479Sdimdef note_module_odr_violation_different_definitions : Note< 118276479Sdim "definition in module '%0' is here">; 119321369Sdimdef note_second_module_difference : Note< 120321369Sdim "in second definition, possible difference is here">; 121321369Sdim 122276479Sdimdef err_module_odr_violation_different_instantiations : Error< 123276479Sdim "instantiation of %q0 is different in different modules">; 124261991Sdim 125321369Sdimdef err_module_odr_violation_mismatch_decl : Error< 126321369Sdim "%q0 has different definitions in different modules; first difference is " 127321369Sdim "%select{definition in module '%2'|defined here}1 found " 128321369Sdim "%select{end of class|public access specifier|private access specifier|" 129321369Sdim "protected access specifier|static assert|field|method|type alias|typedef|" 130321369Sdim "data member|friend declaration}3">; 131321369Sdimdef note_module_odr_violation_mismatch_decl : Note<"but in '%0' found " 132321369Sdim "%select{end of class|public access specifier|private access specifier|" 133321369Sdim "protected access specifier|static assert|field|method|type alias|typedef|" 134321369Sdim "data member|friend declaration}1">; 135296417Sdim 136321369Sdimdef err_module_odr_violation_mismatch_decl_diff : Error< 137321369Sdim "%q0 has different definitions in different modules; first difference is " 138321369Sdim "%select{definition in module '%2'|defined here}1 found " 139321369Sdim "%select{" 140321369Sdim "static assert with condition|" 141321369Sdim "static assert with message|" 142321369Sdim "static assert with %select{|no }4message|" 143321369Sdim "field %4|" 144321369Sdim "field %4 with type %5|" 145321369Sdim "%select{non-|}5bitfield %4|" 146321369Sdim "bitfield %4 with one width expression|" 147321369Sdim "%select{non-|}5mutable field %4|" 148321369Sdim "field %4 with %select{no|an}5 initalizer|" 149321369Sdim "field %4 with an initializer|" 150321369Sdim "%select{method %5|constructor|destructor}4|" 151321369Sdim "%select{method %5|constructor|destructor}4 " 152321369Sdim "is %select{not deleted|deleted}6|" 153321369Sdim "%select{method %5|constructor|destructor}4 " 154321369Sdim "is %select{|pure }6%select{not virtual|virtual}7|" 155321369Sdim "%select{method %5|constructor|destructor}4 " 156321369Sdim "is %select{not static|static}6|" 157321369Sdim "%select{method %5|constructor|destructor}4 " 158321369Sdim "is %select{not volatile|volatile}6|" 159321369Sdim "%select{method %5|constructor|destructor}4 " 160321369Sdim "is %select{not const|const}6|" 161321369Sdim "%select{method %5|constructor|destructor}4 " 162321369Sdim "is %select{not inline|inline}6|" 163321369Sdim "%select{method %5|constructor|destructor}4 " 164321369Sdim "that has %6 parameter%s6|" 165321369Sdim "%select{method %5|constructor|destructor}4 " 166321369Sdim "with %ordinal6 parameter of type %7%select{| decayed from %9}8|" 167321369Sdim "%select{method %5|constructor|destructor}4 " 168321369Sdim "with %ordinal6 parameter named %7|" 169321369Sdim "%select{method %5|constructor|destructor}4 " 170321369Sdim "with %ordinal6 parameter with%select{out|}7 a default argument|" 171321369Sdim "%select{method %5|constructor|destructor}4 " 172321369Sdim "with %ordinal6 parameter with a default argument|" 173321369Sdim "%select{typedef|type alias}4 name %5|" 174321369Sdim "%select{typedef|type alias}4 %5 with underlying type %6|" 175321369Sdim "data member with name %4|" 176321369Sdim "data member %4 with type %5|" 177321369Sdim "data member %4 with%select{out|}5 an initializer|" 178321369Sdim "data member %4 with an initializer|" 179321369Sdim "data member %4 %select{is constexpr|is not constexpr}5|" 180321369Sdim "friend %select{class|function}4|" 181321369Sdim "friend %4|" 182321369Sdim "friend function %4|" 183321369Sdim "}3">; 184321369Sdim 185321369Sdimdef note_module_odr_violation_mismatch_decl_diff : Note<"but in '%0' found " 186321369Sdim "%select{" 187321369Sdim "static assert with different condition|" 188321369Sdim "static assert with different message|" 189321369Sdim "static assert with %select{|no }2message|" 190321369Sdim "field %2|" 191321369Sdim "field %2 with type %3|" 192321369Sdim "%select{non-|}3bitfield %2|" 193321369Sdim "bitfield %2 with different width expression|" 194321369Sdim "%select{non-|}3mutable field %2|" 195321369Sdim "field %2 with %select{no|an}3 initializer|" 196321369Sdim "field %2 with a different initializer|" 197321369Sdim "%select{method %3|constructor|destructor}2|" 198321369Sdim "%select{method %3|constructor|destructor}2 " 199321369Sdim "is %select{not deleted|deleted}4|" 200321369Sdim "%select{method %3|constructor|destructor}2 " 201321369Sdim "is %select{|pure }4%select{not virtual|virtual}5|" 202321369Sdim "%select{method %3|constructor|destructor}2 " 203321369Sdim "is %select{not static|static}4|" 204321369Sdim "%select{method %3|constructor|destructor}2 " 205321369Sdim "is %select{not volatile|volatile}4|" 206321369Sdim "%select{method %3|constructor|destructor}2 " 207321369Sdim "is %select{not const|const}4|" 208321369Sdim "%select{method %3|constructor|destructor}2 " 209321369Sdim "is %select{not inline|inline}4|" 210321369Sdim "%select{method %3|constructor|destructor}2 " 211321369Sdim "that has %4 parameter%s4|" 212321369Sdim "%select{method %3|constructor|destructor}2 " 213321369Sdim "with %ordinal4 parameter of type %5%select{| decayed from %7}6|" 214321369Sdim "%select{method %3|constructor|destructor}2 " 215321369Sdim "with %ordinal4 parameter named %5|" 216321369Sdim "%select{method %3|constructor|destructor}2 " 217321369Sdim "with %ordinal4 parameter with%select{out|}5 a default argument|" 218321369Sdim "%select{method %3|constructor|destructor}2 " 219321369Sdim "with %ordinal4 parameter with a different default argument|" 220321369Sdim "%select{typedef|type alias}2 name %3|" 221321369Sdim "%select{typedef|type alias}2 %3 with different underlying type %4|" 222321369Sdim "data member with name %2|" 223321369Sdim "data member %2 with different type %3|" 224321369Sdim "data member %2 with%select{out|}3 an initializer|" 225321369Sdim "data member %2 with a different initializer|" 226321369Sdim "data member %2 %select{is constexpr|is not constexpr}3|" 227321369Sdim "friend %select{class|function}2|" 228321369Sdim "friend %2|" 229321369Sdim "friend function %2|" 230321369Sdim "}1">; 231321369Sdim 232321369Sdimdef err_module_odr_violation_mismatch_decl_unknown : Error< 233321369Sdim "%q0 %select{with definition in module '%2'|defined here}1 has different " 234321369Sdim "definitions in different modules; first difference is this " 235321369Sdim "%select{||||static assert|field|method|type alias|typedef|data member|" 236321369Sdim "friend declaration|unexpected decl}3">; 237321369Sdimdef note_module_odr_violation_mismatch_decl_unknown : Note< 238321369Sdim "but in '%0' found " 239321369Sdim "%select{||||different static assert|different field|different method|" 240321369Sdim "different type alias|different typedef|different data member|" 241321369Sdim "different friend declaration|another unexpected decl}1">; 242321369Sdim 243296417Sdimdef warn_duplicate_module_file_extension : Warning< 244296417Sdim "duplicate module file extension block name '%0'">, 245296417Sdim InGroup<ModuleFileExtension>; 246296417Sdim 247321369Sdimdef warn_module_system_bit_conflict : Warning< 248321369Sdim "module file '%0' was validated as a system module and is now being imported " 249321369Sdim "as a non-system module; any difference in diagnostic options will be ignored">, 250321369Sdim InGroup<ModuleConflict>; 251276479Sdim} // let CategoryName 252321369Sdim 253321369Sdimlet CategoryName = "AST Serialization Issue" in { 254321369Sdimdef warn_module_uses_date_time : Warning< 255321369Sdim "%select{precompiled header|module}0 uses __DATE__ or __TIME__">, 256321369Sdim InGroup<DiagGroup<"pch-date-time">>; 257321369Sdimdef err_module_no_size_mtime_for_header : Error< 258321369Sdim "cannot emit module %0: %select{size|mtime}1 must be explicitly specified " 259321369Sdim "for missing header file \"%2\"">; 260321369Sdim} // let CategoryName 261276479Sdim} // let Component 262276479Sdim 263