annotate trunk/src/dil/Messages.d @ 798:c24be8d4f6ab

Added documentation comments.
author Aziz K?ksal <aziz.koeksal@gmail.com>
date Sat, 01 Mar 2008 02:53:06 +0100
parents c1d5cfd7aa44
children cb8040538772
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
54
e55bd2270f94 - Relocated messages table to a separate module.
aziz
parents:
diff changeset
1 /++
e55bd2270f94 - Relocated messages table to a separate module.
aziz
parents:
diff changeset
2 Author: Aziz Köksal
249
32d354584b28 - Upgraded license notices to GPL3.
aziz
parents: 238
diff changeset
3 License: GPL3
54
e55bd2270f94 - Relocated messages table to a separate module.
aziz
parents:
diff changeset
4 +/
326
4a7359b88c11 - Added package 'dil' to module declarations.
aziz
parents: 325
diff changeset
5 module dil.Messages;
798
c24be8d4f6ab Added documentation comments.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents: 789
diff changeset
6
391
33b566df6af4 Migrated project to Tango.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents: 390
diff changeset
7 import common;
54
e55bd2270f94 - Relocated messages table to a separate module.
aziz
parents:
diff changeset
8
798
c24be8d4f6ab Added documentation comments.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents: 789
diff changeset
9 /// Enumeration of indices into the table of compiler messages.
54
e55bd2270f94 - Relocated messages table to a separate module.
aziz
parents:
diff changeset
10 enum MID
e55bd2270f94 - Relocated messages table to a separate module.
aziz
parents:
diff changeset
11 {
309
b4d842b0d2c7 - Added new files Settings.d, config.d and lang_en.d
aziz
parents: 272
diff changeset
12 // Lexer messages:
390
4d36eea1bbc9 Refactored Lexer.scan().
Aziz K?ksal <aziz.koeksal@gmail.com>
parents: 389
diff changeset
13 IllegalCharacter,
789
c1d5cfd7aa44 Implemented string literal conversion.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents: 787
diff changeset
14 // InvalidUnicodeCharacter,
54
e55bd2270f94 - Relocated messages table to a separate module.
aziz
parents:
diff changeset
15 InvalidUTF8Sequence,
e55bd2270f94 - Relocated messages table to a separate module.
aziz
parents:
diff changeset
16 // ''
e55bd2270f94 - Relocated messages table to a separate module.
aziz
parents:
diff changeset
17 UnterminatedCharacterLiteral,
e55bd2270f94 - Relocated messages table to a separate module.
aziz
parents:
diff changeset
18 EmptyCharacterLiteral,
e55bd2270f94 - Relocated messages table to a separate module.
aziz
parents:
diff changeset
19 // #line
e55bd2270f94 - Relocated messages table to a separate module.
aziz
parents:
diff changeset
20 ExpectedIdentifierSTLine,
388
ae154eceba65 Applied some fixes to scanning and printing #line tokens.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents: 375
diff changeset
21 ExpectedIntegerAfterSTLine,
789
c1d5cfd7aa44 Implemented string literal conversion.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents: 787
diff changeset
22 // ExpectedFilespec,
323
6259fb93e3dd - Rewrote scanSpecialToken().
aziz
parents: 309
diff changeset
23 UnterminatedFilespec,
54
e55bd2270f94 - Relocated messages table to a separate module.
aziz
parents:
diff changeset
24 UnterminatedSpecialToken,
e55bd2270f94 - Relocated messages table to a separate module.
aziz
parents:
diff changeset
25 // ""
e55bd2270f94 - Relocated messages table to a separate module.
aziz
parents:
diff changeset
26 UnterminatedString,
e55bd2270f94 - Relocated messages table to a separate module.
aziz
parents:
diff changeset
27 // x""
e55bd2270f94 - Relocated messages table to a separate module.
aziz
parents:
diff changeset
28 NonHexCharInHexString,
e55bd2270f94 - Relocated messages table to a separate module.
aziz
parents:
diff changeset
29 OddNumberOfDigitsInHexString,
e55bd2270f94 - Relocated messages table to a separate module.
aziz
parents:
diff changeset
30 UnterminatedHexString,
e55bd2270f94 - Relocated messages table to a separate module.
aziz
parents:
diff changeset
31 // /* */ /+ +/
e55bd2270f94 - Relocated messages table to a separate module.
aziz
parents:
diff changeset
32 UnterminatedBlockComment,
e55bd2270f94 - Relocated messages table to a separate module.
aziz
parents:
diff changeset
33 UnterminatedNestedComment,
e55bd2270f94 - Relocated messages table to a separate module.
aziz
parents:
diff changeset
34 // `` r""
e55bd2270f94 - Relocated messages table to a separate module.
aziz
parents:
diff changeset
35 UnterminatedRawString,
e55bd2270f94 - Relocated messages table to a separate module.
aziz
parents:
diff changeset
36 UnterminatedBackQuoteString,
e55bd2270f94 - Relocated messages table to a separate module.
aziz
parents:
diff changeset
37 // \x \u \U
e55bd2270f94 - Relocated messages table to a separate module.
aziz
parents:
diff changeset
38 UndefinedEscapeSequence,
432
3ead178e0662 Added message MID.InvalidUnicodeEscapeSequence.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents: 405
diff changeset
39 InvalidUnicodeEscapeSequence,
54
e55bd2270f94 - Relocated messages table to a separate module.
aziz
parents:
diff changeset
40 InsufficientHexDigits,
e55bd2270f94 - Relocated messages table to a separate module.
aziz
parents:
diff changeset
41 // \&[a-zA-Z][a-zA-Z0-9]+;
272
0bde32503976 - Added module HtmlEntities. It contains a table for converting HTML entities to Unicode characters.
aziz
parents: 249
diff changeset
42 UndefinedHTMLEntity,
54
e55bd2270f94 - Relocated messages table to a separate module.
aziz
parents:
diff changeset
43 UnterminatedHTMLEntity,
e55bd2270f94 - Relocated messages table to a separate module.
aziz
parents:
diff changeset
44 InvalidBeginHTMLEntity,
56
63af7ddf52e1 - Started properly implementing number scanner. Added stub for real numbers.
aziz
parents: 54
diff changeset
45 // integer overflows
58
50bb7fc9db44 - The types of integers are recognized now.
aziz
parents: 56
diff changeset
46 OverflowDecimalSign,
56
63af7ddf52e1 - Started properly implementing number scanner. Added stub for real numbers.
aziz
parents: 54
diff changeset
47 OverflowDecimalNumber,
63af7ddf52e1 - Started properly implementing number scanner. Added stub for real numbers.
aziz
parents: 54
diff changeset
48 OverflowHexNumber,
63af7ddf52e1 - Started properly implementing number scanner. Added stub for real numbers.
aziz
parents: 54
diff changeset
49 OverflowBinaryNumber,
63af7ddf52e1 - Started properly implementing number scanner. Added stub for real numbers.
aziz
parents: 54
diff changeset
50 OverflowOctalNumber,
63
c29229fbf2f7 - Recognizing floats that start with a dot.
aziz
parents: 62
diff changeset
51 OverflowFloatNumber,
c29229fbf2f7 - Recognizing floats that start with a dot.
aziz
parents: 62
diff changeset
52 OctalNumberHasDecimals,
59
3e594725899a - Issuing error when no digits were found in hex and binary numbers.
aziz
parents: 58
diff changeset
53 NoDigitsInHexNumber,
3e594725899a - Issuing error when no digits were found in hex and binary numbers.
aziz
parents: 58
diff changeset
54 NoDigitsInBinNumber,
62
96af5653acef - Fixed loop of hex number scanner. Moved checks under the switch block.
aziz
parents: 59
diff changeset
55 HexFloatExponentRequired,
389
c4bfceab7246 Applied fixes and improvements to hex float scanner.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents: 388
diff changeset
56 HexFloatExpMustStartWithDigit,
c4bfceab7246 Applied fixes and improvements to hex float scanner.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents: 388
diff changeset
57 FloatExpMustStartWithDigit,
86
0459c902a370 - Added code for parsing Assert-, Mixin-, Import-, Typeid- and TypeDotIdExpressions.
aziz
parents: 81
diff changeset
58
309
b4d842b0d2c7 - Added new files Settings.d, config.d and lang_en.d
aziz
parents: 272
diff changeset
59 // Parser messages:
86
0459c902a370 - Added code for parsing Assert-, Mixin-, Import-, Typeid- and TypeDotIdExpressions.
aziz
parents: 81
diff changeset
60 ExpectedButFound,
238
f3c6c15961bb - Added method peekNext(). Replaced code that used lx.peek() with peekNext().
aziz
parents: 86
diff changeset
61 RedundantStorageClass,
341
3ac651ea83fb - Fix: created TemplateAliasParameter instead of TemplateTypeParameter.
aziz
parents: 329
diff changeset
62 TemplateTupleParameter,
342
f13d551d7c4f - Added error messages MID.InContract and MID.OutContract.
aziz
parents: 341
diff changeset
63 InContract,
f13d551d7c4f - Added error messages MID.InContract and MID.OutContract.
aziz
parents: 341
diff changeset
64 OutContract,
359
511c14950cac - Added messages MissingLinkageType and UnrecognizedLinkageType.
aziz
parents: 342
diff changeset
65 MissingLinkageType,
511c14950cac - Added messages MissingLinkageType and UnrecognizedLinkageType.
aziz
parents: 342
diff changeset
66 UnrecognizedLinkageType,
405
e2529923a0cb Added two error messages.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents: 394
diff changeset
67 ExpectedBaseClasses,
e2529923a0cb Added two error messages.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents: 394
diff changeset
68 BaseClassInForwardDeclaration,
309
b4d842b0d2c7 - Added new files Settings.d, config.d and lang_en.d
aziz
parents: 272
diff changeset
69
b4d842b0d2c7 - Added new files Settings.d, config.d and lang_en.d
aziz
parents: 272
diff changeset
70 // Help messages:
b4d842b0d2c7 - Added new files Settings.d, config.d and lang_en.d
aziz
parents: 272
diff changeset
71 HelpMain,
329
17f43b0d6106 - Renamed command highlight to generate.
aziz
parents: 327
diff changeset
72 HelpGenerate,
375
0bd21b746a04 - Added code to main() for recognizing options to the importgraph command.
aziz
parents: 359
diff changeset
73 HelpImportGraph,
309
b4d842b0d2c7 - Added new files Settings.d, config.d and lang_en.d
aziz
parents: 272
diff changeset
74 }
b4d842b0d2c7 - Added new files Settings.d, config.d and lang_en.d
aziz
parents: 272
diff changeset
75
798
c24be8d4f6ab Added documentation comments.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents: 789
diff changeset
76 /// The table of compiler messages.
c24be8d4f6ab Added documentation comments.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents: 789
diff changeset
77 private string[] g_compilerMessages;
394
6440da4adb07 Fixed forward references of enum MID complaints by compiler.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents: 391
diff changeset
78
730
5cb236c6fe52 Added static this() to dil.Messages.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents: 681
diff changeset
79 static this()
5cb236c6fe52 Added static this() to dil.Messages.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents: 681
diff changeset
80 {
798
c24be8d4f6ab Added documentation comments.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents: 789
diff changeset
81 g_compilerMessages = new string[MID.max+1];
730
5cb236c6fe52 Added static this() to dil.Messages.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents: 681
diff changeset
82 }
5cb236c6fe52 Added static this() to dil.Messages.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents: 681
diff changeset
83
798
c24be8d4f6ab Added documentation comments.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents: 789
diff changeset
84 /// Sets the compiler messages.
779
8e6fed11bb68 Moved Settings.d and SettingsLoader.d to src/.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents: 762
diff changeset
85 void SetMessages(string[] msgs)
394
6440da4adb07 Fixed forward references of enum MID complaints by compiler.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents: 391
diff changeset
86 {
6440da4adb07 Fixed forward references of enum MID complaints by compiler.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents: 391
diff changeset
87 assert(MID.max+1 == msgs.length);
798
c24be8d4f6ab Added documentation comments.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents: 789
diff changeset
88 g_compilerMessages = msgs;
394
6440da4adb07 Fixed forward references of enum MID complaints by compiler.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents: 391
diff changeset
89 }
6440da4adb07 Fixed forward references of enum MID complaints by compiler.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents: 391
diff changeset
90
798
c24be8d4f6ab Added documentation comments.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents: 789
diff changeset
91 /// Returns the compiler message for mid.
309
b4d842b0d2c7 - Added new files Settings.d, config.d and lang_en.d
aziz
parents: 272
diff changeset
92 string GetMsg(MID mid)
b4d842b0d2c7 - Added new files Settings.d, config.d and lang_en.d
aziz
parents: 272
diff changeset
93 {
798
c24be8d4f6ab Added documentation comments.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents: 789
diff changeset
94 assert(mid < g_compilerMessages.length);
c24be8d4f6ab Added documentation comments.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents: 789
diff changeset
95 return g_compilerMessages[mid];
309
b4d842b0d2c7 - Added new files Settings.d, config.d and lang_en.d
aziz
parents: 272
diff changeset
96 }
b4d842b0d2c7 - Added new files Settings.d, config.d and lang_en.d
aziz
parents: 272
diff changeset
97
798
c24be8d4f6ab Added documentation comments.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents: 789
diff changeset
98 /// Returns a formatted string.
391
33b566df6af4 Migrated project to Tango.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents: 390
diff changeset
99 char[] FormatMsg(MID mid, ...)
309
b4d842b0d2c7 - Added new files Settings.d, config.d and lang_en.d
aziz
parents: 272
diff changeset
100 {
391
33b566df6af4 Migrated project to Tango.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents: 390
diff changeset
101 return Format(_arguments, _argptr, GetMsg(mid));
54
e55bd2270f94 - Relocated messages table to a separate module.
aziz
parents:
diff changeset
102 }
e55bd2270f94 - Relocated messages table to a separate module.
aziz
parents:
diff changeset
103
524
39b497c76e2b Moved struct MSG from dil.Parser to dil.Messages.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents: 432
diff changeset
104 /// Collection of error messages with no MID yet.
39b497c76e2b Moved struct MSG from dil.Parser to dil.Messages.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents: 432
diff changeset
105 struct MSG
39b497c76e2b Moved struct MSG from dil.Parser to dil.Messages.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents: 432
diff changeset
106 {
39b497c76e2b Moved struct MSG from dil.Parser to dil.Messages.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents: 432
diff changeset
107 static:
533
2a8d0ed0d71e Improved error reporting in dil.Converter.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents: 529
diff changeset
108 // Converter:
2a8d0ed0d71e Improved error reporting in dil.Converter.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents: 529
diff changeset
109 auto InvalidUTF16Character = "invalid UTF-16 character '\\u{:X4}'.";
2a8d0ed0d71e Improved error reporting in dil.Converter.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents: 529
diff changeset
110 auto InvalidUTF32Character = "invalid UTF-32 character '\\U{:X8}'.";
2a8d0ed0d71e Improved error reporting in dil.Converter.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents: 529
diff changeset
111 auto UTF16FileMustBeDivisibleBy2 = "the byte length of a UTF-16 source file must be divisible by 2.";
2a8d0ed0d71e Improved error reporting in dil.Converter.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents: 529
diff changeset
112 auto UTF32FileMustBeDivisibleBy4 = "the byte length of a UTF-32 source file must be divisible by 4.";
744
7173ece1b696 Wrapped some macro functions inside struct MacroExpander.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents: 730
diff changeset
113 // DDoc macros:
7173ece1b696 Wrapped some macro functions inside struct MacroExpander.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents: 730
diff changeset
114 auto UndefinedDDocMacro = "DDoc macro '{}' is undefined";
7173ece1b696 Wrapped some macro functions inside struct MacroExpander.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents: 730
diff changeset
115 auto UnterminatedDDocMacro = "DDoc macro '{}' has no closing ')'";
524
39b497c76e2b Moved struct MSG from dil.Parser to dil.Messages.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents: 432
diff changeset
116 // Parser messages:
789
c1d5cfd7aa44 Implemented string literal conversion.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents: 787
diff changeset
117 auto InvalidUTF8SequenceInString = "invalid UTF-8 sequence in string literal: '{0}'";
637
fe66cecb6ec9 Reporting error if module declaration is not first.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents: 631
diff changeset
118 auto ModuleDeclarationNotFirst = "a module declaration is only allowed as the first declaration in a file";
653
29cc5bf3ce89 Refactored StringExpression.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents: 640
diff changeset
119 auto StringPostfixMismatch = "string literal has mistmatching postfix character";
524
39b497c76e2b Moved struct MSG from dil.Parser to dil.Messages.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents: 432
diff changeset
120 auto ExpectedIdAfterTypeDot = "expected identifier after '(Type).', not '{}'";
39b497c76e2b Moved struct MSG from dil.Parser to dil.Messages.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents: 432
diff changeset
121 auto ExpectedModuleIdentifier = "expected module identifier, not '{}'";
681
95a3c28c0f64 Renamed AsmStatement->AsmBlockStatement and AsnInstruction->AsmStatement.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents: 653
diff changeset
122 auto IllegalDeclaration = "illegal declaration found: {}";
524
39b497c76e2b Moved struct MSG from dil.Parser to dil.Messages.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents: 432
diff changeset
123 auto ExpectedFunctionName = "expected function name, not '{}'";
39b497c76e2b Moved struct MSG from dil.Parser to dil.Messages.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents: 432
diff changeset
124 auto ExpectedVariableName = "expected variable name, not '{}'";
39b497c76e2b Moved struct MSG from dil.Parser to dil.Messages.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents: 432
diff changeset
125 auto ExpectedFunctionBody = "expected function body, not '{}'";
616
506ce60760d8 Fixed some error messages.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents: 611
diff changeset
126 auto RedundantLinkageType = "redundant linkage type: {}";
524
39b497c76e2b Moved struct MSG from dil.Parser to dil.Messages.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents: 432
diff changeset
127 auto ExpectedPragmaIdentifier = "expected pragma identifier, not '{}'";
39b497c76e2b Moved struct MSG from dil.Parser to dil.Messages.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents: 432
diff changeset
128 auto ExpectedAliasModuleName = "expected alias module name, not '{}'";
39b497c76e2b Moved struct MSG from dil.Parser to dil.Messages.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents: 432
diff changeset
129 auto ExpectedAliasImportName = "expected alias name, not '{}'";
39b497c76e2b Moved struct MSG from dil.Parser to dil.Messages.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents: 432
diff changeset
130 auto ExpectedImportName = "expected an identifier, not '{}'";
39b497c76e2b Moved struct MSG from dil.Parser to dil.Messages.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents: 432
diff changeset
131 auto ExpectedEnumMember = "expected enum member, not '{}'";
39b497c76e2b Moved struct MSG from dil.Parser to dil.Messages.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents: 432
diff changeset
132 auto ExpectedEnumBody = "expected enum body, not '{}'";
39b497c76e2b Moved struct MSG from dil.Parser to dil.Messages.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents: 432
diff changeset
133 auto ExpectedClassName = "expected class name, not '{}'";
39b497c76e2b Moved struct MSG from dil.Parser to dil.Messages.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents: 432
diff changeset
134 auto ExpectedClassBody = "expected class body, not '{}'";
39b497c76e2b Moved struct MSG from dil.Parser to dil.Messages.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents: 432
diff changeset
135 auto ExpectedInterfaceName = "expected interface name, not '{}'";
39b497c76e2b Moved struct MSG from dil.Parser to dil.Messages.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents: 432
diff changeset
136 auto ExpectedInterfaceBody = "expected interface body, not '{}'";
639
1b1315ac27a4 Added two error messages.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents: 637
diff changeset
137 auto ExpectedStructBody = "expected struct body, not '{}'";
1b1315ac27a4 Added two error messages.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents: 637
diff changeset
138 auto ExpectedUnionBody = "expected union body, not '{}'";
524
39b497c76e2b Moved struct MSG from dil.Parser to dil.Messages.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents: 432
diff changeset
139 auto ExpectedTemplateName = "expected template name, not '{}'";
39b497c76e2b Moved struct MSG from dil.Parser to dil.Messages.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents: 432
diff changeset
140 auto ExpectedAnIdentifier = "expected an identifier, not '{}'";
681
95a3c28c0f64 Renamed AsmStatement->AsmBlockStatement and AsnInstruction->AsmStatement.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents: 653
diff changeset
141 auto IllegalStatement = "illegal statement found: {}";
555
d9e328c3bab9 Fixed infinite loop in dil.Parser.parseMixin().
Aziz K?ksal <aziz.koeksal@gmail.com>
parents: 533
diff changeset
142 auto ExpectedNonEmptyStatement = "didn't expect ';', use {{ } instead";
524
39b497c76e2b Moved struct MSG from dil.Parser to dil.Messages.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents: 432
diff changeset
143 auto ExpectedScopeIdentifier = "expected 'exit', 'success' or 'failure', not '{}'";
574
ae8f58a13917 Added messages to struct MSG.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents: 555
diff changeset
144 auto InvalidScopeIdentifier = "'exit', 'success', 'failure' are valid scope identifiers, but not '{}'";
524
39b497c76e2b Moved struct MSG from dil.Parser to dil.Messages.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents: 432
diff changeset
145 auto ExpectedIntegerAfterAlign = "expected an integer after align, not '{}'";
681
95a3c28c0f64 Renamed AsmStatement->AsmBlockStatement and AsnInstruction->AsmStatement.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents: 653
diff changeset
146 auto IllegalAsmStatement = "illegal asm statement found: {}";
524
39b497c76e2b Moved struct MSG from dil.Parser to dil.Messages.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents: 432
diff changeset
147 auto ExpectedDeclaratorIdentifier = "expected declarator identifier, not '{}'";
574
ae8f58a13917 Added messages to struct MSG.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents: 555
diff changeset
148 auto ExpectedTemplateParameters = "expected one or more template parameters, not ')'";
ae8f58a13917 Added messages to struct MSG.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents: 555
diff changeset
149 auto ExpectedTypeOrExpression = "expected a type or and expression, not ')'";
524
39b497c76e2b Moved struct MSG from dil.Parser to dil.Messages.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents: 432
diff changeset
150 auto ExpectedAliasTemplateParam = "expected name for alias template parameter, not '{}'";
39b497c76e2b Moved struct MSG from dil.Parser to dil.Messages.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents: 432
diff changeset
151 auto ExpectedNameForThisTempParam = "expected name for 'this' template parameter, not '{}'";
529
135e9e6933a7 Tidied up version/debug parser functions.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents: 524
diff changeset
152 auto ExpectedIdentOrInt = "expected an identifier or an integer, not '{}'";
640
05645f5613c1 Added an error message.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents: 639
diff changeset
153 auto MissingCatchOrFinally = "try statement is missing a catch or finally body.";
574
ae8f58a13917 Added messages to struct MSG.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents: 555
diff changeset
154 // Semantic analysis:
611
6d449e777f5d Added semantic code to insert symbols into the scope.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents: 574
diff changeset
155 auto DeclConflictsWithDecl = "declaration '{}' conflicts with declaration @{}";
574
ae8f58a13917 Added messages to struct MSG.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents: 555
diff changeset
156 auto VariableConflictsWithDecl = "variable '{}' conflicts with declaration @{}";
ae8f58a13917 Added messages to struct MSG.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents: 555
diff changeset
157 auto InterfaceCantHaveVariables = "an interface can't have member variables";
631
2feb88f5c867 Added dil.parser.ExpressionParser and dil.parser.Factory.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents: 616
diff changeset
158 auto MixinArgumentMustBeString = "the mixin argument must evaluate to a string";
787
47c5099562c7 Added two semantic error messages.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents: 779
diff changeset
159 auto DebugSpecModuleLevel = "debug={} must be a module level";
47c5099562c7 Added two semantic error messages.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents: 779
diff changeset
160 auto VersionSpecModuleLevel = "version={} must be a module level";
524
39b497c76e2b Moved struct MSG from dil.Parser to dil.Messages.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents: 432
diff changeset
161 }