137b74a387bb3993387029859c2d9d051c41c724eStephen HinesDIAG(note_has_no_symtab,
237b74a387bb3993387029859c2d9d051c41c724eStephen Hines     DiagnosticEngine::Note,
337b74a387bb3993387029859c2d9d051c41c724eStephen Hines     "input file `%0' has no symbol table `%2'\n  path of input file: %1",
437b74a387bb3993387029859c2d9d051c41c724eStephen Hines     "input file `%0' has no symbol table `%2'\n  path of input file: %1")
537b74a387bb3993387029859c2d9d051c41c724eStephen HinesDIAG(fatal_cannot_read_strtab,
637b74a387bb3993387029859c2d9d051c41c724eStephen Hines     DiagnosticEngine::Fatal,
737b74a387bb3993387029859c2d9d051c41c724eStephen Hines     "cannot read strtab for %2 in file `%0': %1",
837b74a387bb3993387029859c2d9d051c41c724eStephen Hines     "cannot read strtab for %2 in file `%0': %1")
937b74a387bb3993387029859c2d9d051c41c724eStephen HinesDIAG(fail_sym_resolution,
1037b74a387bb3993387029859c2d9d051c41c724eStephen Hines     DiagnosticEngine::Unreachable,
1137b74a387bb3993387029859c2d9d051c41c724eStephen Hines     "Fails to resolve symbols [%0:%1]\nPlease reports to `%2'",
1237b74a387bb3993387029859c2d9d051c41c724eStephen Hines     "Fails to resolve symbols [%0:%1]\nPlease reports to `%2'")
1337b74a387bb3993387029859c2d9d051c41c724eStephen HinesDIAG(mark_dynamic_defined,
1437b74a387bb3993387029859c2d9d051c41c724eStephen Hines     DiagnosticEngine::Ignore,
1537b74a387bb3993387029859c2d9d051c41c724eStephen Hines     "refer to dynamic symbol %0",
1637b74a387bb3993387029859c2d9d051c41c724eStephen Hines     "call a external function %0")
1737b74a387bb3993387029859c2d9d051c41c724eStephen HinesDIAG(comm_refer_to_define,
1837b74a387bb3993387029859c2d9d051c41c724eStephen Hines     DiagnosticEngine::Ignore,
1937b74a387bb3993387029859c2d9d051c41c724eStephen Hines     "common symbol %0 is overridden by previous definition",
2037b74a387bb3993387029859c2d9d051c41c724eStephen Hines     "common symbol %0 is overridden by previous definition")
2137b74a387bb3993387029859c2d9d051c41c724eStephen HinesDIAG(redefine_common,
2237b74a387bb3993387029859c2d9d051c41c724eStephen Hines     DiagnosticEngine::Ignore,
2337b74a387bb3993387029859c2d9d051c41c724eStephen Hines     "common symbol %0 is overridden by definition",
2437b74a387bb3993387029859c2d9d051c41c724eStephen Hines     "common symbol %0 is overriden by definition")
2537b74a387bb3993387029859c2d9d051c41c724eStephen HinesDIAG(indirect_refer_to_common,
2637b74a387bb3993387029859c2d9d051c41c724eStephen Hines     DiagnosticEngine::Ignore,
2737b74a387bb3993387029859c2d9d051c41c724eStephen Hines     "indirect symbol %0 points to a common symbol",
2837b74a387bb3993387029859c2d9d051c41c724eStephen Hines     "indirect symbol %0 points to a common symbol")
2937b74a387bb3993387029859c2d9d051c41c724eStephen HinesDIAG(indirect_refer_to_inexist,
3037b74a387bb3993387029859c2d9d051c41c724eStephen Hines     DiagnosticEngine::Fatal,
3137b74a387bb3993387029859c2d9d051c41c724eStephen Hines     "indirect symbol %0 points to a undefined symbol",
3237b74a387bb3993387029859c2d9d051c41c724eStephen Hines     "variable %0 is undefined")
3337b74a387bb3993387029859c2d9d051c41c724eStephen HinesDIAG(multiple_definitions,
3437b74a387bb3993387029859c2d9d051c41c724eStephen Hines     DiagnosticEngine::Error,
3537b74a387bb3993387029859c2d9d051c41c724eStephen Hines     "multiple definition of symbol `%0'",
3637b74a387bb3993387029859c2d9d051c41c724eStephen Hines     "you define variable %0 twice")
3737b74a387bb3993387029859c2d9d051c41c724eStephen HinesDIAG(undefined_situation,
3837b74a387bb3993387029859c2d9d051c41c724eStephen Hines     DiagnosticEngine::Unreachable,
3937b74a387bb3993387029859c2d9d051c41c724eStephen Hines     "reach undefined situation, action: %0, old(%1) -> new(%2)",
4037b74a387bb3993387029859c2d9d051c41c724eStephen Hines     "reach undefined situation, action: %0, old(%1) -> new(%2)")
4137b74a387bb3993387029859c2d9d051c41c724eStephen HinesDIAG(multiple_absolute_definitions,
4237b74a387bb3993387029859c2d9d051c41c724eStephen Hines     DiagnosticEngine::Error,
4337b74a387bb3993387029859c2d9d051c41c724eStephen Hines     "inconsistent definitions of absolute symbol `%0': old(%1) -> new(%2)",
4437b74a387bb3993387029859c2d9d051c41c724eStephen Hines     "you defined an absolute symbol with different values")
45