Mercurial > projects > dil
annotate trunk/src/dil/Messages.d @ 789:c1d5cfd7aa44
Implemented string literal conversion.
Removed two MID messages.
Added MSG.InvalidUTF8SequenceInString.
Added toUTF16() and toUTF32().
Fixed escape sequences.
Added formatBytes() and findInvalidUTF8Sequence().
author | Aziz K?ksal <aziz.koeksal@gmail.com> |
---|---|
date | Mon, 25 Feb 2008 02:56:22 +0100 |
parents | 47c5099562c7 |
children | c24be8d4f6ab |
rev | line source |
---|---|
54 | 1 /++ |
2 Author: Aziz Köksal | |
249 | 3 License: GPL3 |
54 | 4 +/ |
326 | 5 module dil.Messages; |
391
33b566df6af4
Migrated project to Tango.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
390
diff
changeset
|
6 import common; |
54 | 7 |
309 | 8 /// Index into table of compiler messages. |
54 | 9 enum MID |
10 { | |
309 | 11 // Lexer messages: |
390
4d36eea1bbc9
Refactored Lexer.scan().
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
389
diff
changeset
|
12 IllegalCharacter, |
789
c1d5cfd7aa44
Implemented string literal conversion.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
787
diff
changeset
|
13 // InvalidUnicodeCharacter, |
54 | 14 InvalidUTF8Sequence, |
15 // '' | |
16 UnterminatedCharacterLiteral, | |
17 EmptyCharacterLiteral, | |
18 // #line | |
19 ExpectedIdentifierSTLine, | |
388
ae154eceba65
Applied some fixes to scanning and printing #line tokens.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
375
diff
changeset
|
20 ExpectedIntegerAfterSTLine, |
789
c1d5cfd7aa44
Implemented string literal conversion.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
787
diff
changeset
|
21 // ExpectedFilespec, |
323 | 22 UnterminatedFilespec, |
54 | 23 UnterminatedSpecialToken, |
24 // "" | |
25 UnterminatedString, | |
26 // x"" | |
27 NonHexCharInHexString, | |
28 OddNumberOfDigitsInHexString, | |
29 UnterminatedHexString, | |
30 // /* */ /+ +/ | |
31 UnterminatedBlockComment, | |
32 UnterminatedNestedComment, | |
33 // `` r"" | |
34 UnterminatedRawString, | |
35 UnterminatedBackQuoteString, | |
36 // \x \u \U | |
37 UndefinedEscapeSequence, | |
432
3ead178e0662
Added message MID.InvalidUnicodeEscapeSequence.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
405
diff
changeset
|
38 InvalidUnicodeEscapeSequence, |
54 | 39 InsufficientHexDigits, |
40 // \&[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
|
41 UndefinedHTMLEntity, |
54 | 42 UnterminatedHTMLEntity, |
43 InvalidBeginHTMLEntity, | |
56
63af7ddf52e1
- Started properly implementing number scanner. Added stub for real numbers.
aziz
parents:
54
diff
changeset
|
44 // integer overflows |
58 | 45 OverflowDecimalSign, |
56
63af7ddf52e1
- Started properly implementing number scanner. Added stub for real numbers.
aziz
parents:
54
diff
changeset
|
46 OverflowDecimalNumber, |
63af7ddf52e1
- Started properly implementing number scanner. Added stub for real numbers.
aziz
parents:
54
diff
changeset
|
47 OverflowHexNumber, |
63af7ddf52e1
- Started properly implementing number scanner. Added stub for real numbers.
aziz
parents:
54
diff
changeset
|
48 OverflowBinaryNumber, |
63af7ddf52e1
- Started properly implementing number scanner. Added stub for real numbers.
aziz
parents:
54
diff
changeset
|
49 OverflowOctalNumber, |
63 | 50 OverflowFloatNumber, |
51 OctalNumberHasDecimals, | |
59
3e594725899a
- Issuing error when no digits were found in hex and binary numbers.
aziz
parents:
58
diff
changeset
|
52 NoDigitsInHexNumber, |
3e594725899a
- Issuing error when no digits were found in hex and binary numbers.
aziz
parents:
58
diff
changeset
|
53 NoDigitsInBinNumber, |
62
96af5653acef
- Fixed loop of hex number scanner. Moved checks under the switch block.
aziz
parents:
59
diff
changeset
|
54 HexFloatExponentRequired, |
389
c4bfceab7246
Applied fixes and improvements to hex float scanner.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
388
diff
changeset
|
55 HexFloatExpMustStartWithDigit, |
c4bfceab7246
Applied fixes and improvements to hex float scanner.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
388
diff
changeset
|
56 FloatExpMustStartWithDigit, |
86
0459c902a370
- Added code for parsing Assert-, Mixin-, Import-, Typeid- and TypeDotIdExpressions.
aziz
parents:
81
diff
changeset
|
57 |
309 | 58 // Parser messages: |
86
0459c902a370
- Added code for parsing Assert-, Mixin-, Import-, Typeid- and TypeDotIdExpressions.
aziz
parents:
81
diff
changeset
|
59 ExpectedButFound, |
238
f3c6c15961bb
- Added method peekNext(). Replaced code that used lx.peek() with peekNext().
aziz
parents:
86
diff
changeset
|
60 RedundantStorageClass, |
341
3ac651ea83fb
- Fix: created TemplateAliasParameter instead of TemplateTypeParameter.
aziz
parents:
329
diff
changeset
|
61 TemplateTupleParameter, |
342
f13d551d7c4f
- Added error messages MID.InContract and MID.OutContract.
aziz
parents:
341
diff
changeset
|
62 InContract, |
f13d551d7c4f
- Added error messages MID.InContract and MID.OutContract.
aziz
parents:
341
diff
changeset
|
63 OutContract, |
359
511c14950cac
- Added messages MissingLinkageType and UnrecognizedLinkageType.
aziz
parents:
342
diff
changeset
|
64 MissingLinkageType, |
511c14950cac
- Added messages MissingLinkageType and UnrecognizedLinkageType.
aziz
parents:
342
diff
changeset
|
65 UnrecognizedLinkageType, |
405
e2529923a0cb
Added two error messages.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
394
diff
changeset
|
66 ExpectedBaseClasses, |
e2529923a0cb
Added two error messages.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
394
diff
changeset
|
67 BaseClassInForwardDeclaration, |
309 | 68 |
69 // Help messages: | |
70 HelpMain, | |
329 | 71 HelpGenerate, |
375
0bd21b746a04
- Added code to main() for recognizing options to the importgraph command.
aziz
parents:
359
diff
changeset
|
72 HelpImportGraph, |
309 | 73 } |
74 | |
394
6440da4adb07
Fixed forward references of enum MID complaints by compiler.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
391
diff
changeset
|
75 private string[] messages; |
6440da4adb07
Fixed forward references of enum MID complaints by compiler.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
391
diff
changeset
|
76 |
730
5cb236c6fe52
Added static this() to dil.Messages.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
681
diff
changeset
|
77 static this() |
5cb236c6fe52
Added static this() to dil.Messages.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
681
diff
changeset
|
78 { |
5cb236c6fe52
Added static this() to dil.Messages.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
681
diff
changeset
|
79 messages = new string[MID.max+1]; |
5cb236c6fe52
Added static this() to dil.Messages.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
681
diff
changeset
|
80 } |
5cb236c6fe52
Added static this() to dil.Messages.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
681
diff
changeset
|
81 |
779
8e6fed11bb68
Moved Settings.d and SettingsLoader.d to src/.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
762
diff
changeset
|
82 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
|
83 { |
6440da4adb07
Fixed forward references of enum MID complaints by compiler.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
391
diff
changeset
|
84 assert(MID.max+1 == msgs.length); |
6440da4adb07
Fixed forward references of enum MID complaints by compiler.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
391
diff
changeset
|
85 messages = msgs; |
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 |
309 | 88 string GetMsg(MID mid) |
89 { | |
394
6440da4adb07
Fixed forward references of enum MID complaints by compiler.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
391
diff
changeset
|
90 assert(mid < messages.length); |
6440da4adb07
Fixed forward references of enum MID complaints by compiler.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
391
diff
changeset
|
91 return messages[mid]; |
309 | 92 } |
93 | |
391
33b566df6af4
Migrated project to Tango.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
390
diff
changeset
|
94 char[] FormatMsg(MID mid, ...) |
309 | 95 { |
391
33b566df6af4
Migrated project to Tango.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
390
diff
changeset
|
96 return Format(_arguments, _argptr, GetMsg(mid)); |
54 | 97 } |
98 | |
524
39b497c76e2b
Moved struct MSG from dil.Parser to dil.Messages.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
432
diff
changeset
|
99 /// 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
|
100 struct MSG |
39b497c76e2b
Moved struct MSG from dil.Parser to dil.Messages.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
432
diff
changeset
|
101 { |
39b497c76e2b
Moved struct MSG from dil.Parser to dil.Messages.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
432
diff
changeset
|
102 static: |
533
2a8d0ed0d71e
Improved error reporting in dil.Converter.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
529
diff
changeset
|
103 // Converter: |
2a8d0ed0d71e
Improved error reporting in dil.Converter.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
529
diff
changeset
|
104 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
|
105 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
|
106 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
|
107 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
|
108 // DDoc macros: |
7173ece1b696
Wrapped some macro functions inside struct MacroExpander.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
730
diff
changeset
|
109 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
|
110 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
|
111 // Parser messages: |
789
c1d5cfd7aa44
Implemented string literal conversion.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
787
diff
changeset
|
112 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
|
113 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
|
114 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
|
115 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
|
116 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
|
117 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
|
118 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
|
119 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
|
120 auto ExpectedFunctionBody = "expected function body, not '{}'"; |
616
506ce60760d8
Fixed some error messages.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
611
diff
changeset
|
121 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
|
122 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
|
123 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
|
124 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
|
125 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
|
126 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
|
127 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
|
128 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
|
129 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
|
130 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
|
131 auto ExpectedInterfaceBody = "expected interface body, not '{}'"; |
639
1b1315ac27a4
Added two error messages.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
637
diff
changeset
|
132 auto ExpectedStructBody = "expected struct body, not '{}'"; |
1b1315ac27a4
Added two error messages.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
637
diff
changeset
|
133 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
|
134 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
|
135 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
|
136 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
|
137 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
|
138 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
|
139 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
|
140 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
|
141 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
|
142 auto ExpectedDeclaratorIdentifier = "expected declarator identifier, not '{}'"; |
574
ae8f58a13917
Added messages to struct MSG.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
555
diff
changeset
|
143 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
|
144 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
|
145 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
|
146 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
|
147 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
|
148 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
|
149 // Semantic analysis: |
611
6d449e777f5d
Added semantic code to insert symbols into the scope.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
574
diff
changeset
|
150 auto DeclConflictsWithDecl = "declaration '{}' conflicts with declaration @{}"; |
574
ae8f58a13917
Added messages to struct MSG.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
555
diff
changeset
|
151 auto VariableConflictsWithDecl = "variable '{}' conflicts with declaration @{}"; |
ae8f58a13917
Added messages to struct MSG.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
555
diff
changeset
|
152 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
|
153 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
|
154 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
|
155 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
|
156 } |