Changeset 1222

Show
Ignore:
Timestamp:
07/09/08 15:32:51 (2 months ago)
Author:
asterite
Message:

Now const and invariant are shown in the UI, except in autocompletion

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • trunk/descent.core/META-INF/MANIFEST.MF

    r1214 r1222  
    33Bundle-Name: %pluginName 
    44Bundle-SymbolicName: descent.core;singleton:=true 
    5 Bundle-Version: 0.5.3.20080706 
     5Bundle-Version: 0.5.3.20080708 
    66Bundle-Activator: descent.core.JavaCore 
    77Bundle-Vendor: %providerName 
  • trunk/descent.core/src/descent/core/Flags.java

    r1195 r1222  
    105105     * @since 2.0 
    106106     */ 
    107     public static final int AccConst = 0x2000; 
     107    public static final int AccConst = 0x80000000; 
    108108    /** 
    109109     * Scope property flag. 
     
    252252     * @since 2.0 
    253253     */ 
    254     public static final int AccInvariant = 0x00020000; 
     254    public static final int AccInvariant = 0x40000000; 
    255255     
    256256    /** 
  • trunk/descent.core/src/descent/core/Signature.java

    r1195 r1222  
    681681     
    682682    /** 
     683     * Character constant indicating a const type in a signature. 
     684     * Value is <code>'x'</code>. 
     685     */ 
     686    public static final char C_CONST                                    = 'x'; 
     687     
     688    /** 
     689     * Character constant indicating an invariant type in a signature. 
     690     * Value is <code>'y'</code>. 
     691     */ 
     692    public static final char C_INVARIANT                                    = 'y'; 
     693     
     694    /** 
    683695     * String constant for the signature of the primitive type void. 
    684696     * Value is <code>"v"</code>. 
     
    13531365            } 
    13541366            @Override 
     1367            public void acceptConst(String signature) { 
     1368                replace(signature); 
     1369            } 
     1370            @Override 
     1371            public void acceptInvariant(String signature) { 
     1372                replace(signature); 
     1373            } 
     1374            @Override 
    13551375            public void acceptDynamicArray(String signature) { 
    13561376                replace(signature); 
     
    14961516            @Override 
    14971517            public void acceptStaticArray(char[] dimension, String signature) { 
     1518                copy(signature); 
     1519            } 
     1520            @Override 
     1521            public void acceptConst(String signature) { 
     1522                copy(signature); 
     1523            } 
     1524            @Override 
     1525            public void acceptInvariant(String signature) { 
    14981526                copy(signature); 
    14991527            } 
     
    16271655                sb.append('['); 
    16281656                sb.append(']'); 
     1657            } 
     1658            @Override 
     1659            public void acceptConst(String signature) { 
     1660                Stack<StringBuilder> st = stack.peek(); 
     1661                 
     1662                StringBuilder sb = st.peek(); 
     1663                sb.insert(0, "const("); 
     1664                sb.append(')'); 
     1665            } 
     1666            @Override 
     1667            public void acceptInvariant(String signature) { 
     1668                Stack<StringBuilder> st = stack.peek(); 
     1669                 
     1670                StringBuilder sb = st.peek(); 
     1671                sb.insert(0, "invariant("); 
     1672                sb.append(')'); 
    16291673            } 
    16301674            @Override 
  • trunk/descent.core/src/descent/core/compiler/IProblem.java

    r1189 r1222  
    209209     
    210210    /* Problems during lexing, parsing, and semantic analysis, generated automatically, 
    211        64 is the first semantic error in the list. */ 
     211       65 is the first semantic error in the list. */ 
    212212    int UnterminatedBlockComment = 1; 
    213213    int UnterminatedPlusBlockComment = 2; 
     
    272272    int TypeOnlyAllowedIfAnonymousEnumAndNoEnumType = 61; 
    273273    int IfTypeThereMustBeAnInitializer = 62; 
    274     int SymbolConflictsWithSymbolAtLocation = 63; 
    275     int SymbolAtLocationConflictsWithSymbolAtLocation = 64; 
    276     int PropertyCanNotBeRedefined = 65; 
    277     int CircularDefinition = 66; 
    278     int EnumValueOverflow = 67; 
    279     int EnumMustHaveAtLeastOneMember = 68; 
    280     int EnumBaseTypeMustBeOfIntegralType = 69; 
    281     int ForwardReferenceOfSymbol = 70; 
    282     int ForwardReferenceOfSymbolDotSymbol = 71; 
    283     int ForwardReferenceWhenLookingFor = 72; 
    284     int BaseEnumIsForwardReference = 73; 
    285     int CannotResolveForwardReference = 74; 
    286     int EnumIsForwardReference = 75; 
    287     int IntegerConstantExpressionExpected = 76; 
    288     int ThisNotInClassOrStruct = 77; 
    289     int ThisOnlyAllowedInNonStaticMemberFunctions = 78; 
    290     int SuperOnlyAllowedInNonStaticMemberFunctions = 79; 
    291     int SuperNotInClass = 80; 
    292     int ClassHasNoSuper = 81; 
    293     int BaseTypeMustBeInterface = 82; 
    294     int MemberIsPrivate = 83; 
    295     int UsedAsAType = 84; 
    296     int ExternSymbolsCannotHaveInitializers = 85; 
    297     int VoidsHaveNoValue = 86; 
    298     int CannotInferTypeFromThisArrayInitializer = 87; 
    299     int NoDefinition = 88; 
    300     int DuplicatedInterfaceInheritance = 89; 
    301     int BaseTypeMustBeClassOrInterface = 90; 
    302     int FieldsNotAllowedInInterfaces = 91; 
    303     int UndefinedIdentifier = 92; 
    304     int NotAMember = 93; 
    305     int NewAllocatorsOnlyForClassOrStruct = 94; 
    306     int DeleteDeallocatorsOnlyForClassOrStruct = 95; 
    307     int ConstructorsOnlyForClass = 96; 
    308     int DestructorsOnlyForClass = 97; 
    309     int InvariantsOnlyForClassStructUnion = 98; 
    310     int FunctionDoesNotOverrideAny = 99; 
    311     int CannotOverrideFinalFunctions = 100; 
    312     int OverrideOnlyForClassMemberFunctions = 101; 
    313     int FunctionMustReturnAResultOfType = 102; 
    314     int MoreThanOneInvariant = 103; 
    315     int ParameterMultiplyDefined = 104; 
    316     int SymbolNotFound = 105; 
    317     int StatementIsNotReachable = 106; 
    318     int VoidFunctionsHaveNoResult = 107; 
    319     int ReturnStatementsCannotBeInContracts = 108; 
    320     int NotAnAggregateType = 109; 
    321     int UnrecognizedPragma = 110; 
    322     int AnonCanOnlyBePartOfAnAggregate = 111; 
    323     int PragmaIsMissingClosingSemicolon = 112; 
    324     int CannotImplicitlyConvert = 113; 
    325     int ForbiddenReference = 114; 
    326     int DiscouragedReference = 115; 
    327     int Task = 116; 
    328     int UndefinedType = 117; 
    329     int IsClassPathCorrect = 118; 
    330     int FunctionsCannotBeConstOrAuto = 119; 
    331     int FunctionsCannotBeScopeOrAuto = 120; 
    332     int NonVirtualFunctionsCannotBeAbstract = 121; 
    333     int CannotBeBothAbstractAndFinal = 122; 
    334     int ModifierCannotBeAppliedToVariables = 123; 
    335     int StructsCannotBeAbstract = 124; 
    336     int UnionsCannotBeAbstract = 125; 
    337     int AliasCannotBeConst = 126; 
    338     int OneArgumentOfTypeExpected = 127; 
    339     int IllegalMainParameters = 128; 
    340     int MustReturnIntOrVoidFromMainFunction = 129; 
    341     int AtLeastOneArgumentOfTypeExpected = 130; 
    342     int FirstArgumentMustBeOfType = 131; 
    343     int StringExpectedForPragmaMsg = 132; 
    344     int LibPragmaMustRecieveASingleArgumentOfTypeString = 133; 
    345     int StringExpectedForPragmaLib = 134; 
    346     int CannotHaveOutOrInoutParameterOfTypeStaticArray = 135; 
    347     int CannotHaveParameterOfTypeVoid = 136; 
    348     int FunctionsCannotReturnStaticArrays = 137; 
    349     int UnrecongnizedTrait = 138; 
    350     int CanOnlyConcatenateArrays = 139; 
    351     int ArrayIndexOutOfBounds = 140; 
    352     int ArrayIndexOutOfBounds2 = 141; 
    353     int AssertionFailed = 142; 
    354     int AssertionFailedNoMessage = 143; 
    355     int ExpressionIsNotEvaluatableAtCompileTime = 144; 
    356     int UndefinedProperty = 145; 
    357     int DeprecatedProperty = 146; 
    358     int FileNameMustBeString = 147; 
    359     int FileImportsMustBeSpecified = 148; 
    360     int FileNotFound = 149; 
    361     int ErrorReadingFile = 150; 
    362     int ExpressionHasNoEffect = 151; 
    363     int ConstantIsNotAnLValue = 152; 
    364     int VersionIdentifierReserved = 153; 
    365     int CannotPutCatchStatementInsideFinallyBlock = 154; 
    366     int ExpressionDoesNotGiveABooleanResult = 155; 
    367     int BreakIsNotInsideALoopOrSwitch = 156; 
    368     int CaseIsNotInSwitch = 157; 
    369     int VersionDeclarationMustBeAtModuleLevel = 158; 
    370     int DebugDeclarationMustBeAtModuleLevel = 159; 
    371     int GotoCaseNotInSwitch = 160; 
    372     int GotoDefaultNotInSwitch = 161; 
    373     int LazyVariablesCannotBeLvalues = 162; 
    374     int DivisionByZero = 163; 
    375     int DefaultNotInSwitch = 164; 
    376     int SwitchAlreadyHasDefault = 165; 
    377     int ContinueNotInLoop = 166; 
    378     int ForeachIndexCannotBeRef = 167; 
    379     int ParametersDoesNotMatchParameterTypes = 168; 
    380     int IncompatibleParameterStorageClass = 169; 
    381     int OutCannotBeConst = 170; 
    382     int OutCannotBeInvariant = 171; 
    383     int ScopeCannotBeRefOrOut = 172; 
    384     int IncompatibleTypesForOperator = 173; 
    385     int IncompatibleTypesForMinus = 174; 
    386     int SymbolNotDefined = 175; 
    387     int SymbolNotATemplate = 176; 
    388     int CannotDeleteType = 177; 
    389     int NotAnLvalue = 178; 
    390     int CannotAliasAnExpression = 179; 
    391     int CannotAssignToStaticArray = 180; 
    392     int CannotChangeReferenceToStaticArray = 181; 
    393     int CannotModifyParameterInContract = 182; 
    394     int BothOverloadsMuchArgumentList = 183; 
    395     int ExpressionHasNoType = 184; 
    396     int SymbolNotAnExpression = 185; 
    397     int SymbolHasNoValue = 186; 
    398     int TooManyInitializers = 187; 
    399     int SymbolNotAStaticAndCannotHaveStaticInitializer = 188; 
    400     int SymbolNotAType = 189; 
    401     int IncompleteMixinDeclaration = 190; 
    402     int SymbolNotATemplateItIs = 191; 
    403     int SymbolCannotBeDeclaredToBeAFunction = 192; 
    404     int CannotHaveArrayOfType = 193; 
    405     int SymbolDoesNotMatchAnyTemplateDeclaration = 194; 
    406     int IndexOverflowForStaticArray = 195; 
    407     int UnknownSize = 196; 
    408     int NoSizeYetForForwardReference = 197; 
    409     int SymbolMatchesMoreThanOneTemplateDeclaration = 198; 
    410     int ExpressionLeadsToStackOverflowAtCompileTime = 199; 
    411     int StringIndexOutOfBounds = 200; 
    412     int CannotCreateInstanceOfAbstractClass = 201; 
    413     int CannotCreateInstanceOfInterface = 202; 
    414     int WithExpressionsMustBeClassObject = 203; 
    415     int DeclarationIsAlreadyDefined = 204; 
    416     int DeclarationIsAlreadyDefinedInAnotherScope = 205; 
    417     int VersionDefinedAfterUse = 206; 
    418     int DebugDefinedAfterUse = 207; 
    419     int NotEnoughArguments = 208; 
    420     int CanOnlySynchronizeOnClassObjects = 209; 
    421     int CannotDeduceTemplateFunctionFromArgumentTypes = 210; 
    422     int CannotDeduceTemplateFunctionFromArgumentTypes2 = 211; 
    423     int ArrayDimensionExceedsMax = 212; 
    424     int AStructIsNotAValidInitializerFor = 213; 
    425     int CannotUseArrayToInitialize = 214; 
    426     int CircularReferenceTo = 215; 
    427     int ParameterIsAlreadyDefined = 216; 
    428     int MemberIsNotAccessible = 217; 
    429     int SymbolIsNotAccessible = 218; 
    430     int ThisForSymbolNeedsToBeType = 219; 
    431     int SymbolHasForwardReferences = 220; 
    432     int CannotHaveAssociativeArrayOfKey = 221; 
    433     int CannotHaveAssociativeArrayOf = 222; 
    434     int CannotHaveArrayOfAuto = 223; 
    435     int EnclosingLabelForBreakNotFound = 224; 
    436     int EnclosingLabelForContinueNotFound = 225; 
    437     int CannotAppendTypeToType = 226; 
    438     int CannotAppendToStaticArray = 227; 
    439     int ExpressionIsVoidAndHasNoValue = 228; 
    440     int NeedMemberFunctionOpCmpForSymbolToCompare = 229; 
    441     int CompareNotDefinedForComplexOperands = 230; 
    442     int NeedThisForAddressOfSymbol = 231; 
    443     int RecursiveMixinInstantiation = 232; 
    444     int SymbolIsNotOfIntegralType = 233; 
    445     int DeleteAAKeyDeprecated = 234; 
    446     int SymbolIsDeprecated = 235; 
    447     int ShadowingDeclarationIsDeprecated = 236; 
    448     int ReturnStatementsCannotBeInFinallyScopeExitOrScopeSuccessBodies = 237; 
    449     int CannotReturnExpressionFromConstructor = 238; 
    450     int CaseNotFound = 239; 
    451     int CircularInheritanceOfInterface = 240; 
    452     int ArgumentToMixinMustBeString = 241; 
    453     int CannotAccessFrameOfFunction = 242; 
    454     int OperationNotAllowedOnBool = 243; 
    455     int SymbolIsNotAScalar = 244; 
    456     int ImportCannotBeResolved = 245; 
    457     int SymbolIsNotAVariable = 246; 
    458     int CatchHidesCatch = 247; 
    459     int ArithmeticOrStringTypeExpectedForValueParameter = 248; 
    460     int FunctionsCannotReturnAFunction = 249; 
    461     int FunctionsCannotReturnATuple = 250; 
    462     int FunctionsCannotReturnAuto = 251; 
    463     int RecursiveType = 252; 
    464     int VariadicFunctionsWithNonDLinkageMustHaveAtLeastOneParameter = 253; 
    465     int SymbolMustBeAFunction = 254; 
    466     int FunctionExpectedBeforeCall = 255; 
    467     int FunctionExpectedBeforeCallNotSymbolOfType = 256; 
    468     int CircularReferenceOfTypedef = 257; 
    469     int StringSliceIsOutOfBounds = 258; 
    470     int ErrorInstantiating = 259; 
    471     int CaseMustBeAnIntegralOrStringConstant = 260; 
    472     int DuplicateCaseInSwitchStatement = 261; 
    473     int SpecialMemberFunctionsNotAllowedForSymbol = 262; 
    474     int SpecialFunctionsNotAllowedInInterface = 263; 
    475     int FunctionBodyIsNotAbstractInInterface = 264; 
    476     int SuperClassConstructorCallMustBeInAConstructor = 265; 
    477     int ClassConstructorCallMustBeInAConstructor = 266; 
    478     int NoSuperClassConstructor = 267; 
    479     int ConstructorCallsNotAllowedInLoopsOrAfterLabels = 268; 
    480     int MultipleConstructorCalls = 269; 
    481     int ExpressionIsNotConstantOrDoesNotEvaluateToABool = 270; 
    482     int StaticIfConditionalCannotBeAtGlobalScope = 271; 
    483     int CannotBreakOutOfFinallyBlock = 272; 
    484     int LabelHasNoBreak = 273; 
    485     int LabelHasNoContinue = 274; 
    486     int CannotGotoInOrOutOfFinallyBlock = 275; 
    487     int CalledWithArgumentTypesMatchesBoth = 276; 
    488     int SymbolIsNotAnArithmeticType = 277; 
    489     int SymbolIsNotAnArithmeticTypeItIs = 278; 
    490     int CannotPerformModuloComplexArithmetic = 279; 
    491     int OperatorNotAllowedOnBoolExpression = 280; 
    492     int ForeachKeyTypeMustBeIntOrUint = 281; 
    493     int ForeachKeyCannotBeOutOrRef = 282; 
    494     int NoReverseIterationOnAssociativeArrays = 283; 
    495     int OnlyOneOrTwoArgumentsForAssociativeArrayForeach = 284; 
    496     int OnlyOneOrTwoArgumentsForArrayForeach = 285; 
    497     int ForeachTargetIsNotAnArrayOf = 286; 
    498     int ForeachKeyCannotBeInout = 287; 
    499     int ForeachValueOfUTFConversionCannotBeInout = 288; 
    500     int CannotInferTypeForSymbol = 289; 
    501     int CannotInferTypeFromInitializer = 290; 
    502     int NoStorageClassForSymbol = 291; 
    503     int OnlyOneValueOrTwoKeyValueArgumentsForTupleForeach = 292; 
    504     int CannotUniquelyInferForeachArgumentTypes = 293; 
    505     int InvalidForeachAggregate = 294; 
    506     int NotAnAssociativeArrayInitializer = 295; 
    507     int ArrayInitializersAsExpressionsNotAllowed = 296; 
    508     int IftypeConditionCannotBeAtGlobalScope = 297; 
    509     int SymbolIsNotAFieldOfSymbol = 298; 
    510     int RecursiveTemplateExpansion = 299; 
    511     int RecursiveTemplateExpansionForTemplateArgument = 300; 
    512     int IndexIsNotATypeOrExpression = 301; 
    513     int CannotHavePointerToSymbol = 302; 
    514     int SizeOfTypeIsNotKnown = 303; 
    515     int CanOnlySliceTupleTypes = 304; 
    516     int NoPropertyForTuple = 305; 
    517     int CannotResolveDotProperty = 306; 
    518     int CannotTakeAddressOfBitInArray = 307; 
    519     int OnlyOneIndexAllowedToIndex = 308; 
    520     int NoOpIndexOperatorOverloadForType = 309; 
    521     int ArrayDimensionOverflow = 310; 
    522     int OperatorAssignmentOverloadWithOpIndexIllegal = 311; 
    523     int CannotHaveOutOrInoutArgumentOfBitInArray = 312; 
    524     int SymbolIsAliasedToAFunction = 313; 
    525     int LinkageDoesNotMatchInterfaceFunction = 314; 
    526     int InterfaceFunctionIsNotImplemented = 315; 
    527     int ExpectedKeyAsArgumentToRemove = 316; 
    528     int CyclicConstructorCall = 317; 
    529     int MissingOrCurruptObjectDotD = 318; 
    530     int CannotContinueOutOfFinallyBlock = 319; 
    531     int ForwardDeclaration = 320; 
    532     int CannotFormDelegateDueToCovariantReturnType = 321; 
    533     int ForeachRangeKeyCannotHaveStorageClass = 322; 
    534     int MultipleOverridesOfSameFunction = 323; 
    535     int IdentityAssignmentOperatorOverloadIsIllegal = 324; 
    536     int LiteralsCannotBeClassMembers = 325; 
    537     int NoMatchForImplicitSuperCallInConstructor = 326; 
    538     int NoReturnAtEndOfFunction = 327; 
    539     int CanOnlyDeclareTypeAliasesWithinStaticIfConditionals = 328; 
    540     int PackageAndModuleHaveTheSameName = 329; 
    541     int StringLiteralsAreImmutable = 330; 
    542     int ExpressionDotNewIsOnlyForAllocatingNestedClasses = 331; 
    543     int TooManyArgumentsForArray = 332; 
    544     int ReturnExpressionExpected = 333; 
    545     int ReturnWithoutCallingConstructor = 334; 
    546     int ModuleIsInMultiplePackages = 335; 
    547     int ModuleIsInMultipleDefined = 336; 
    548     int NeedUpperAndLowerBoundToSlicePointer = 337; 
    549     int NeedUpperAndLowerBoundToSliceTuple = 338; 
    550     int CannotConvertStringLiteralToVoidPointer = 339; 
    551     int SymbolIsNotAPreInstanceInitializableField = 340; 
    552     int NoCaseStatementFollowingGoto = 341; 
    553     int SwitchStatementHasNoDefault = 342; 
    554     int SymbolIsNotAFunctionTemplate = 343; 
    555     int TupleIsNotAValidTemplateValueArgument = 344; 
    556     int IncompatibleArgumentsForTemplateInstantiation = 345; 
    557     int ThrowStatementsCannotBeInContracts = 346; 
    558     int CanOnlyThrowClassObjects = 347; 
    559     int StringExpectedAsSecondArgument = 348; 
    560     int WrongNumberOfArguments = 349; 
    561     int StringMustBeChars = 350; 
    562     int InvalidFirstArgument = 351; 
    563     int FirstArgumentIsNotAClass = 352; 
    564     int ArgumentHasNoMembers = 353; 
    565     int SymbolHasNoMembers = 354; 
    566     int KindSymbolHasNoMembers = 355; 
    567     int DotOffsetDeprecated = 356; 
    568     int NoClassInfoForComInterfaceObjects = 357; 
    569     int CannotMakeReferenceToABit = 358; 
    570     int CannotFormTupleOfTuples = 359; 
    571     int MissingInitializerInStaticConstructorForConstVariable = 360; 
    572     int GlobalsStaticsFieldsRefAndAutoParametersCannotBeAuto = 361; 
    573     int ReferenceToScopeClassMustBeScope = 362; 
    574     int NumberOfKeysMustMatchNumberOfValues = 363; 
    575     int ExpectedNumberArguments = 364; 
    576     int ArraySliceIfOutOfBounds = 365; 
    577     int InvalidUCS32Char = 366; 
    578     int TupleIndexExceedsBounds = 367; 
    579     int SliceIsOutOfRange = 368; 
    580     int CannotTakeAddressOf = 369; 
    581     int VariableIsUsedBeforeInitialization = 370; 
    582     int EscapingReferenceToLocal = 371; 
    583     int EscapingReferenceToAutoLocal = 372; 
    584     int EscapingReferenceToLocalVariable = 373; 
    585     int EscapingReferenceToVariadicParameter = 374; 
    586     int CanOnlyCatchClassObjects = 375; 
    587     int BaseClassIsForwardReferenced = 376; 
    588     int BaseIsForwardReferenced = 377; 
    589     int CannotInheritFromFinalClass = 378; 
    590     int StaticClassCannotInheritFromNestedClass = 379; 
    591     int SuperClassIsNestedWithin = 380; 
    592     int ArrayComparisonTypeMismatch = 381; 
    593     int ConditionalExpressionIsNotAModifiableLvalue = 382; 
    594     int CannotCastSymbolToSymbol = 383; 
    595     int CannotDeleteInstanceOfComInterface = 384; 
    596     int TemplateIsNotAMemberOf = 385; 
    597     int TemplateIdentifierIsNotAMemberOf = 386; 
    598     int CanOnlyInitiailizeConstMemberInsideConstructor = 387; 
    599     int SymbolIsNotAMember = 388; 
    600     int SymbolIsNotATemplate = 389; 
    601     int DSymbolHasNoSize = 390; 
    602     int ExpressionOfTypeDoesNotHaveABooleanValue = 391; 
    603     int ImplicitConversionCanCauseLossOfData = 392; 
    604     int ForwardReferenceToType = 393; 
    605     int FloatingPointConstantExpressionExpected = 394; 
    606     int ExpressionIsNotAValidTemplateValueArgument = 395; 
    607     int InvalidRangeLowerBound = 396; 
    608     int InvalidRangeUpperBound = 397; 
    609     int SymbolIsNotAScalarType = 398; 
    610     int ForeachIndexMustBeType = 399; 
    611     int ForeachValueMustBeType = 400; 
    612     int OpApplyFunctionMustReturnAnInt = 401; 
    613     int FunctionOfTypeOverridesButIsNotCovariant = 402; 
    614     int CannotOverrideFinalFunction = 403; 
    615     int IncompatibleCovariantTypes = 404; 
    616     int CannotUseTemplateToAddVirtualFunctionToClass = 405; 
    617     int OutResultIsAlreadyDefined = 406; 
    618     int MissingInitializerForConstField = 407; 
    619     int MissingInitializerForFinalField = 408; 
    620     int ImportNotFound = 409; 
    621     int SymbolMustBeAnArrayOfPointerType = 410; 
    622     int RvalueOfInExpressionMustBeAnAssociativeArray = 411; 
    623     int InterfaceInheritsFromDuplicateInterface = 412; 
    624     int LabelIsAlreadyDefined = 413; 
    625     int CannotSubtractPointerFromSymbol = 414; 
    626     int ThisForNestedClassMustBeAClassType = 415; 
    627     int CanOnlyDereferenceAPointer = 416; 
    628     int OuterClassThisNeededToNewNestedClass = 417; 
    629     int ThisForNestedClassMustBeOfType = 418; 
    630     int NoConstructorForSymbol = 419; 
    631     int NoAllocatorForSymbol = 420; 
    632     int NegativeArrayIndex = 421; 
    633     int NewCanOnlyCreateStructsDynamicArraysAndClassObjects = 422; 
    634     int MismatchedFunctionReturnTypeInference = 423; 
    635     int ShiftLeftExceeds = 424; 
    636     int SymbolCannotBeSlicedWithBrackets = 425; 
    637     int SliceExpressionIsNotAModifiableLvalue = 426; 
    638     int SymbolIsNotAMemberOf = 427; 
    639     int MoreInitiailizersThanFields = 428; 
    640     int OverlappingInitiailization = 429; 
    641     int CannotMakeExpressionOutOfInitializer = 430; 
    642     int NoDefaultOrCaseInSwitchStatement = 431; 
    643     int SymbolIsNotASymbol = 432; 
    644     int ForwardReferenceToTemplate = 433; 
    645     int ForwardReferenceToTemplateDeclaration = 434; 
    646     int SpecializationNotAllowedForDeducedParameter = 435; 
    647     int CannotDeclareTemplateAtFunctionScope = 436; 
    648     int TemplateHasNoValue = 437; 
    649     int CannotUseLocalAsTemplateParameter = 438; 
    650     int NoSizeForType = 439; 
    651     int SymbolDotSymbolIsNotADeclaration = 440; 
    652     int ThisIsRequiredButIsNotABaseClassOf = 441; 
    653     int ForwardReferenceToSymbol = 442; 
    654     int IdentifierOfSymbolIsNotDefined = 443; 
    655     int StructIsForwardReferenced = 444; 
    656     int CannotUseTemplateToAddFieldToAggregate = 445; 
    657     int CannotModifyFinalVariable = 446; 
    658     int InvalidUtf8Sequence2 = 447; 
    659     int Utf16HighValuePastEndOfString = 448; 
    660     int Utf16LowValueOutOfRange = 449; 
    661     int UnpairedUtf16Value = 450; 
    662     int IllegalUtf16Value = 451; 
    663     int StaticConstructorCanOnlyBePartOfStructClassModule = 452; 
    664     int ShiftAssignIsOutsideTheRange = 453; 
    665     int TemplateTupleParameterMustBeLastOne = 454; 
    666     int SymbolIsNestedInBoth = 455; 
    667     int FunctionIsAbstract = 456; 
    668     int KindSymbolDoesNotOverload = 457; 
    669     int MismatchedTupleLengths = 458; 
    670     int DoNotUseNullWhenComparingClassTypes = 459; 
    671     int UseTokenInsteadOfTokenWhenComparingWithNull = 460; 
    672     int VoidDoesNotHaveAnInitializer = 461; 
    673     int FunctionNameExpectedForStartAddress = 462; 
    674     int TypeofReturnMustBeInsideFunction = 463; 
    675     int PostBlitsAreOnlyForStructUnionDefinitions = 464; 
    676     int CannotHaveEDotTuple = 465; 
    677     int CannotCreateCppClasses = 466; 
    678     int SwitchAndCaseAreInDifferentFinallyBlocks = 467; 
    679     int SwitchAndDefaultAreInDifferentFinallyBlocks = 468; 
    680     int CannotHaveFieldWithSameStructType = 469; 
    681     int WithoutThisCannotBeConstInvariant = 470; 
    682     int CannotModifySymbol = 471; 
     274    int InvariantAsAttributeIsOnlySupportedInD2 = 63; 
     275    int ConstAsAttributeIsOnlySupportedInD2 = 64; 
     276    int SymbolConflictsWithSymbolAtLocation = 65; 
     277    int SymbolAtLocationConflictsWithSymbolAtLocation = 66; 
     278    int PropertyCanNotBeRedefined = 67; 
     279    int CircularDefinition = 68; 
     280    int EnumValueOverflow = 69; 
     281    int EnumMustHaveAtLeastOneMember = 70; 
     282    int EnumBaseTypeMustBeOfIntegralType = 71; 
     283    int ForwardReferenceOfSymbol = 72; 
     284    int ForwardReferenceOfSymbolDotSymbol = 73; 
     285    int ForwardReferenceWhenLookingFor = 74; 
     286    int BaseEnumIsForwardReference = 75; 
     287    int CannotResolveForwardReference = 76; 
     288    int EnumIsForwardReference = 77; 
     289    int IntegerConstantExpressionExpected = 78; 
     290    int ThisNotInClassOrStruct = 79; 
     291    int ThisOnlyAllowedInNonStaticMemberFunctions = 80; 
     292    int SuperOnlyAllowedInNonStaticMemberFunctions = 81; 
     293    int SuperNotInClass = 82; 
     294    int ClassHasNoSuper = 83; 
     295    int BaseTypeMustBeInterface = 84; 
     296    int MemberIsPrivate = 85; 
     297    int UsedAsAType = 86; 
     298    int ExternSymbolsCannotHaveInitializers = 87; 
     299    int VoidsHaveNoValue = 88; 
     300    int CannotInferTypeFromThisArrayInitializer = 89; 
     301    int NoDefinition = 90; 
     302    int DuplicatedInterfaceInheritance = 91; 
     303    int BaseTypeMustBeClassOrInterface = 92; 
     304    int FieldsNotAllowedInInterfaces = 93; 
     305    int UndefinedIdentifier = 94; 
     306    int NotAMember = 95; 
     307    int NewAllocatorsOnlyForClassOrStruct = 96; 
     308    int DeleteDeallocatorsOnlyForClassOrStruct = 97; 
     309    int ConstructorsOnlyForClass = 98; 
     310    int DestructorsOnlyForClass = 99; 
     311    int InvariantsOnlyForClassStructUnion = 100; 
     312    int FunctionDoesNotOverrideAny = 101; 
     313    int CannotOverrideFinalFunctions = 102; 
     314    int OverrideOnlyForClassMemberFunctions = 103; 
     315    int FunctionMustReturnAResultOfType = 104; 
     316    int MoreThanOneInvariant = 105; 
     317    int ParameterMultiplyDefined = 106; 
     318    int SymbolNotFound = 107; 
     319    int StatementIsNotReachable = 108; 
     320    int VoidFunctionsHaveNoResult = 109; 
     321    int ReturnStatementsCannotBeInContracts = 110; 
     322    int NotAnAggregateType = 111; 
     323    int UnrecognizedPragma = 112; 
     324    int AnonCanOnlyBePartOfAnAggregate = 113; 
     325    int PragmaIsMissingClosingSemicolon = 114; 
     326    int CannotImplicitlyConvert = 115; 
     327    int ForbiddenReference = 116; 
     328    int DiscouragedReference = 117; 
     329    int Task = 118; 
     330    int UndefinedType = 119; 
     331    int IsClassPathCorrect = 120; 
     332    int FunctionsCannotBeConstOrAuto = 121; 
     333    int FunctionsCannotBeScopeOrAuto = 122; 
     334    int NonVirtualFunctionsCannotBeAbstract = 123; 
     335    int CannotBeBothAbstractAndFinal = 124; 
     336    int ModifierCannotBeAppliedToVariables = 125; 
     337    int StructsCannotBeAbstract = 126; 
     338    int UnionsCannotBeAbstract = 127; 
     339    int AliasCannotBeConst = 128; 
     340    int OneArgumentOfTypeExpected = 129; 
     341    int IllegalMainParameters = 130; 
     342    int MustReturnIntOrVoidFromMainFunction = 131; 
     343    int AtLeastOneArgumentOfTypeExpected = 132; 
     344    int FirstArgumentMustBeOfType = 133; 
     345    int StringExpectedForPragmaMsg = 134; 
     346    int LibPragmaMustRecieveASingleArgumentOfTypeString = 135; 
     347    int StringExpectedForPragmaLib = 136; 
     348    int CannotHaveOutOrInoutParameterOfTypeStaticArray = 137; 
     349    int CannotHaveParameterOfTypeVoid = 138; 
     350    int FunctionsCannotReturnStaticArrays = 139; 
     351    int UnrecongnizedTrait = 140; 
     352    int CanOnlyConcatenateArrays = 141; 
     353    int ArrayIndexOutOfBounds = 142; 
     354    int ArrayIndexOutOfBounds2 = 143; 
     355    int AssertionFailed = 144; 
     356    int AssertionFailedNoMessage = 145; 
     357    int ExpressionIsNotEvaluatableAtCompileTime = 146; 
     358    int UndefinedProperty = 147; 
     359    int DeprecatedProperty = 148; 
     360    int FileNameMustBeString = 149; 
     361    int FileImportsMustBeSpecified = 150; 
     362    int FileNotFound = 151; 
     363    int ErrorReadingFile = 152; 
     364    int ExpressionHasNoEffect = 153; 
     365    int ConstantIsNotAnLValue = 154; 
     366    int VersionIdentifierReserved = 155; 
     367    int CannotPutCatchStatementInsideFinallyBlock = 156; 
     368    int ExpressionDoesNotGiveABooleanResult = 157; 
     369    int BreakIsNotInsideALoopOrSwitch = 158; 
     370    int CaseIsNotInSwitch = 159; 
     371    int VersionDeclarationMustBeAtModuleLevel = 160; 
     372    int DebugDeclarationMustBeAtModuleLevel = 161; 
     373    int GotoCaseNotInSwitch = 162; 
     374    int GotoDefaultNotInSwitch = 163; 
     375    int LazyVariablesCannotBeLvalues = 164; 
     376    int DivisionByZero = 165; 
     377    int DefaultNotInSwitch = 166; 
     378    int SwitchAlreadyHasDefault = 167; 
     379    int ContinueNotInLoop = 168; 
     380    int ForeachIndexCannotBeRef = 169; 
     381    int ParametersDoesNotMatchParameterTypes = 170; 
     382    int IncompatibleParameterStorageClass = 171; 
     383    int OutCannotBeConst = 172; 
     384    int OutCannotBeInvariant = 173; 
     385    int ScopeCannotBeRefOrOut = 174; 
     386    int IncompatibleTypesForOperator = 175; 
     387    int IncompatibleTypesForMinus = 176; 
     388    int SymbolNotDefined = 177; 
     389    int SymbolNotATemplate = 178; 
     390    int CannotDeleteType = 179; 
     391    int NotAnLvalue = 180; 
     392    int CannotAliasAnExpression = 181; 
     393    int CannotAssignToStaticArray = 182; 
     394    int CannotChangeReferenceToStaticArray = 183; 
     395    int CannotModifyParameterInContract = 184; 
     396    int BothOverloadsMuchArgumentList = 185; 
     397    int ExpressionHasNoType = 186; 
     398    int SymbolNotAnExpression = 187; 
     399    int SymbolHasNoValue = 188; 
     400    int TooManyInitializers = 189; 
     401    int SymbolNotAStaticAndCannotHaveStaticInitializer = 190; 
     402    int SymbolNotAType = 191; 
     403    int IncompleteMixinDeclaration = 192; 
     404    int SymbolNotATemplateItIs = 193; 
     405    int SymbolCannotBeDeclaredToBeAFunction = 194; 
     406    int CannotHaveArrayOfType = 195; 
     407    int SymbolDoesNotMatchAnyTemplateDeclaration = 196; 
     408    int IndexOverflowForStaticArray = 197; 
     409    int UnknownSize = 198; 
     410    int NoSizeYetForForwardReference = 199; 
     411    int SymbolMatchesMoreThanOneTemplateDeclaration = 200; 
     412    int ExpressionLeadsToStackOverflowAtCompileTime = 201; 
     413    int StringIndexOutOfBounds = 202; 
     414    int CannotCreateInstanceOfAbstractClass = 203; 
     415    int CannotCreateInstanceOfInterface = 204; 
     416    int WithExpressionsMustBeClassObject = 205; 
     417    int DeclarationIsAlreadyDefined = 206; 
     418    int DeclarationIsAlreadyDefinedInAnotherScope = 207; 
     419    int VersionDefinedAfterUse = 208; 
     420    int DebugDefinedAfterUse = 209; 
     421    int NotEnoughArguments = 210; 
     422    int CanOnlySynchronizeOnClassObjects = 211; 
     423    int CannotDeduceTemplateFunctionFromArgumentTypes = 212; 
     424    int CannotDeduceTemplateFunctionFromArgumentTypes2 = 213; 
     425    int ArrayDimensionExceedsMax = 214; 
     426    int AStructIsNotAValidInitializerFor = 215; 
     427    int CannotUseArrayToInitialize = 216; 
     428    int CircularReferenceTo = 217; 
     429    int ParameterIsAlreadyDefined = 218; 
     430    int MemberIsNotAccessible = 219; 
     431    int SymbolIsNotAccessible = 220; 
     432    int ThisForSymbolNeedsToBeType = 221; 
     433    int SymbolHasForwardReferences = 222; 
     434    int CannotHaveAssociativeArrayOfKey = 223; 
     435    int CannotHaveAssociativeArrayOf = 224; 
     436    int CannotHaveArrayOfAuto = 225; 
     437    int EnclosingLabelForBreakNotFound = 226; 
     438    int EnclosingLabelForContinueNotFound = 227; 
     439    int CannotAppendTypeToType = 228; 
     440    int CannotAppendToStaticArray = 229; 
     441    int ExpressionIsVoidAndHasNoValue = 230; 
     442    int NeedMemberFunctionOpCmpForSymbolToCompare = 231; 
     443    int CompareNotDefinedForComplexOperands = 232; 
     444    int NeedThisForAddressOfSymbol = 233; 
     445    int RecursiveMixinInstantiation = 234; 
     446    int SymbolIsNotOfIntegralType = 235; 
     447    int DeleteAAKeyDeprecated = 236; 
     448    int SymbolIsDeprecated = 237; 
     449    int ShadowingDeclarationIsDeprecated = 238; 
     450    int ReturnStatementsCannotBeInFinallyScopeExitOrScopeSuccessBodies = 239; 
     451    int CannotReturnExpressionFromConstructor = 240; 
     452    int CaseNotFound = 241; 
     453    int CircularInheritanceOfInterface = 242; 
     454    int ArgumentToMixinMustBeString = 243; 
     455    int CannotAccessFrameOfFunction = 244; 
     456    int OperationNotAllowedOnBool = 245; 
     457    int SymbolIsNotAScalar = 246; 
     458    int ImportCannotBeResolved = 247; 
     459    int SymbolIsNotAVariable = 248; 
     460    int CatchHidesCatch = 249; 
     461    int ArithmeticOrStringTypeExpectedForValueParameter = 250; 
     462    int FunctionsCannotReturnAFunction = 251; 
     463    int FunctionsCannotReturnATuple = 252; 
     464    int FunctionsCannotReturnAuto = 253; 
     465    int RecursiveType = 254; 
     466    int VariadicFunctionsWithNonDLinkageMustHaveAtLeastOneParameter = 255; 
     467    int SymbolMustBeAFunction = 256; 
     468    int FunctionExpectedBeforeCall = 257; 
     469    int FunctionExpectedBeforeCallNotSymbolOfType = 258; 
     470    int CircularReferenceOfTypedef = 259; 
     471    int StringSliceIsOutOfBounds = 260; 
     472    int ErrorInstantiating = 261; 
     473    int CaseMustBeAnIntegralOrStringConstant = 262; 
     474    int DuplicateCaseInSwitchStatement = 263; 
     475    int SpecialMemberFunctionsNotAllowedForSymbol = 264; 
     476    int SpecialFunctionsNotAllowedInInterface = 265; 
     477    int FunctionBodyIsNotAbstractInInterface = 266; 
     478    int SuperClassConstructorCallMustBeInAConstructor = 267; 
     479    int ClassConstructorCallMustBeInAConstructor = 268; 
     480    int NoSuperClassConstructor = 269; 
     481    int ConstructorCallsNotAllowedInLoopsOrAfterLabels = 270; 
     482    int MultipleConstructorCalls = 271; 
     483    int ExpressionIsNotConstantOrDoesNotEvaluateToABool = 272; 
     484    int StaticIfConditionalCannotBeAtGlobalScope = 273; 
     485    int CannotBreakOutOfFinallyBlock = 274; 
     486    int LabelHasNoBreak = 275; 
     487    int LabelHasNoContinue = 276; 
     488    int CannotGotoInOrOutOfFinallyBlock = 277; 
     489    int CalledWithArgumentTypesMatchesBoth = 278; 
     490    int SymbolIsNotAnArithmeticType = 279; 
     491    int SymbolIsNotAnArithmeticTypeItIs = 280; 
     492    int CannotPerformModuloComplexArithmetic = 281; 
     493    int OperatorNotAllowedOnBoolExpression = 282; 
     494    int ForeachKeyTypeMustBeIntOrUint = 283; 
     495    int ForeachKeyCannotBeOutOrRef = 284; 
     496    int NoReverseIterationOnAssociativeArrays = 285; 
     497    int OnlyOneOrTwoArgumentsForAssociativeArrayForeach = 286; 
     498    int OnlyOneOrTwoArgumentsForArrayForeach = 287; 
     499    int ForeachTargetIsNotAnArrayOf = 288; 
     500    int ForeachKeyCannotBeInout = 289; 
     501    int ForeachValueOfUTFConversionCannotBeInout = 290; 
     502    int CannotInferTypeForSymbol = 291; 
     503    int CannotInferTypeFromInitializer = 292; 
     504    int NoStorageClassForSymbol = 293; 
     505    int OnlyOneValueOrTwoKeyValueArgumentsForTupleForeach = 294; 
     506    int CannotUniquelyInferForeachArgumentTypes = 295; 
     507    int InvalidForeachAggregate = 296; 
     508    int NotAnAssociativeArrayInitializer = 297; 
     509    int ArrayInitializersAsExpressionsNotAllowed = 298; 
     510    int IftypeConditionCannotBeAtGlobalScope = 299; 
     511    int SymbolIsNotAFieldOfSymbol = 300; 
     512    int RecursiveTemplateExpansion = 301; 
     513    int RecursiveTemplateExpansionForTemplateArgument = 302; 
     514    int IndexIsNotATypeOrExpression = 303; 
     515    int CannotHavePointerToSymbol = 304; 
     516    int SizeOfTypeIsNotKnown = 305; 
     517    int CanOnlySliceTupleTypes = 306; 
     518    int NoPropertyForTuple = 307; 
     519    int CannotResolveDotProperty = 308; 
     520    int CannotTakeAddressOfBitInArray = 309; 
     521    int OnlyOneIndexAllowedToIndex = 310; 
     522    int NoOpIndexOperatorOverloadForType = 311; 
     523    int ArrayDimensionOverflow = 312; 
     524    int OperatorAssignmentOverloadWithOpIndexIllegal = 313; 
     525    int CannotHaveOutOrInoutArgumentOfBitInArray = 314; 
     526    int SymbolIsAliasedToAFunction = 315; 
     527    int LinkageDoesNotMatchInterfaceFunction = 316; 
     528    int InterfaceFunctionIsNotImplemented = 317; 
     529    int ExpectedKeyAsArgumentToRemove = 318; 
     530    int CyclicConstructorCall = 319; 
     531    int MissingOrCurruptObjectDotD = 320; 
     532    int CannotContinueOutOfFinallyBlock = 321; 
     533    int ForwardDeclaration = 322; 
     534    int CannotFormDelegateDueToCovariantReturnType = 323; 
     535    int ForeachRangeKeyCannotHaveStorageClass = 324; 
     536    int MultipleOverridesOfSameFunction = 325; 
     537    int IdentityAssignmentOperatorOverloadIsIllegal = 326; 
     538    int LiteralsCannotBeClassMembers = 327; 
     539    int NoMatchForImplicitSuperCallInConstructor = 328; 
     540    int NoReturnAtEndOfFunction = 329; 
     541    int CanOnlyDeclareTypeAliasesWithinStaticIfConditionals = 330; 
     542    int PackageAndModuleHaveTheSameName = 331; 
     543    int StringLiteralsAreImmutable = 332; 
     544    int ExpressionDotNewIsOnlyForAllocatingNestedClasses = 333; 
     545    int TooManyArgumentsForArray = 334; 
     546    int ReturnExpressionExpected = 335; 
     547    int ReturnWithoutCallingConstructor = 336; 
     548    int ModuleIsInMultiplePackages = 337; 
     549    int ModuleIsInMultipleDefined = 338; 
     550    int NeedUpperAndLowerBoundToSlicePointer = 339; 
     551    int NeedUpperAndLowerBoundToSliceTuple = 340; 
     552    int CannotConvertStringLiteralToVoidPointer = 341; 
     553    int SymbolIsNotAPreInstanceInitializableField = 342; 
     554    int NoCaseStatementFollowingGoto = 343; 
     555    int SwitchStatementHasNoDefault = 344; 
     556    int SymbolIsNotAFunctionTemplate = 345; 
     557    int TupleIsNotAValidTemplateValueArgument = 346; 
     558    int IncompatibleArgumentsForTemplateInstantiation = 347; 
     559    int ThrowStatementsCannotBeInContracts = 348; 
     560    int CanOnlyThrowClassObjects = 349; 
     561    int StringExpectedAsSecondArgument = 350; 
     562    int WrongNumberOfArguments = 351; 
     563    int StringMustBeChars = 352; 
     564    int InvalidFirstArgument = 353; 
     565    int FirstArgumentIsNotAClass = 354; 
     566    int ArgumentHasNoMembers = 355; 
     567    int SymbolHasNoMembers = 356; 
     568    int KindSymbolHasNoMembers = 357; 
     569    int DotOffsetDeprecated = 358; 
     570    int NoClassInfoForComInterfaceObjects = 359; 
     571    int CannotMakeReferenceToABit = 360; 
     572    int CannotFormTupleOfTuples = 361; 
     573    int MissingInitializerInStaticConstructorForConstVariable = 362; 
     574    int GlobalsStaticsFieldsRefAndAutoParametersCannotBeAuto = 363; 
     575    int ReferenceToScopeClassMustBeScope = 364; 
     576    int NumberOfKeysMustMatchNumberOfValues = 365; 
     577    int ExpectedNumberArguments = 366; 
     578    int ArraySliceIfOutOfBounds = 367; 
     579    int InvalidUCS32Char = 368; 
     580    int TupleIndexExceedsBounds = 369; 
     581    int SliceIsOutOfRange = 370; 
     582    int CannotTakeAddressOf = 371; 
     583    int VariableIsUsedBeforeInitialization = 372; 
     584    int EscapingReferenceToLocal = 373; 
     585    int EscapingReferenceToAutoLocal = 374; 
     586    int EscapingReferenceToLocalVariable = 375; 
     587    int EscapingReferenceToVariadicParameter = 376; 
     588    int CanOnlyCatchClassObjects = 377; 
     589    int BaseClassIsForwardReferenced = 378; 
     590    int BaseIsForwardReferenced = 379; 
     591    int CannotInheritFromFinalClass = 380; 
     592    int StaticClassCannotInheritFromNestedClass = 381; 
     593    int SuperClassIsNestedWithin = 382; 
     594    int ArrayComparisonTypeMismatch = 383; 
     595    int ConditionalExpressionIsNotAModifiableLvalue = 384; 
     596    int CannotCastSymbolToSymbol = 385; 
     597    int CannotDeleteInstanceOfComInterface = 386; 
     598    int TemplateIsNotAMemberOf = 387; 
     599    int TemplateIdentifierIsNotAMemberOf = 388; 
     600    int CanOnlyInitiailizeConstMemberInsideConstructor = 389; 
     601    int SymbolIsNotAMember = 390; 
     602    int SymbolIsNotATemplate = 391; 
     603    int DSymbolHasNoSize = 392; 
     604    int ExpressionOfTypeDoesNotHaveABooleanValue = 393; 
     605    int ImplicitConversionCanCauseLossOfData = 394; 
     606    int ForwardReferenceToType = 395; 
     607    int FloatingPointConstantExpressionExpected = 396; 
     608    int ExpressionIsNotAValidTemplateValueArgument = 397; 
     609    int InvalidRangeLowerBound = 398; 
     610    int InvalidRangeUpperBound = 399; 
     611    int SymbolIsNotAScalarType = 400; 
     612    int ForeachIndexMustBeType = 401; 
     613    int ForeachValueMustBeType = 402; 
     614    int OpApplyFunctionMustReturnAnInt = 403; 
     615    int FunctionOfTypeOverridesButIsNotCovariant = 404; 
     616    int CannotOverrideFinalFunction = 405; 
     617    int IncompatibleCovariantTypes = 406; 
     618    int CannotUseTemplateToAddVirtualFunctionToClass = 407; 
     619    int OutResultIsAlreadyDefined = 408; 
     620    int MissingInitializerForConstField = 409; 
     621    int MissingInitializerForFinalField = 410; 
     622    int ImportNotFound = 411; 
     623    int SymbolMustBeAnArrayOfPointerType = 412; 
     624    int RvalueOfInExpressionMustBeAnAssociativeArray = 413; 
     625    int InterfaceInheritsFromDuplicateInterface = 414; 
     626    int LabelIsAlreadyDefined = 415; 
     627    int CannotSubtractPointerFromSymbol = 416; 
     628    int ThisForNestedClassMustBeAClassType = 417; 
     629    int CanOnlyDereferenceAPointer = 418; 
     630    int OuterClassThisNeededToNewNestedClass = 419; 
     631    int ThisForNestedClassMustBeOfType = 420; 
     632    int NoConstructorForSymbol = 421; 
     633    int NoAllocatorForSymbol = 422; 
     634    int NegativeArrayIndex = 423; 
     635    int NewCanOnlyCreateStructsDynamicArraysAndClassObjects = 424; 
     636    int MismatchedFunctionReturnTypeInference = 425; 
     637    int ShiftLeftExceeds = 426; 
     638    int SymbolCannotBeSlicedWithBrackets = 427; 
     639    int SliceExpressionIsNotAModifiableLvalue = 428; 
     640    int SymbolIsNotAMemberOf = 429; 
     641    int MoreInitiailizersThanFields = 430; 
     642    int OverlappingInitiailization = 431; 
     643    int CannotMakeExpressionOutOfInitializer = 432; 
     644    int NoDefaultOrCaseInSwitchStatement = 433; 
     645    int SymbolIsNotASymbol = 434; 
     646    int ForwardReferenceToTemplate = 435; 
     647    int ForwardReferenceToTemplateDeclaration = 436; 
     648    int SpecializationNotAllowedForDeducedParameter = 437; 
     649    int CannotDeclareTemplateAtFunctionScope = 438; 
     650    int TemplateHasNoValue = 439; 
     651    int CannotUseLocalAsTemplateParameter = 440; 
     652    int NoSizeForType = 441; 
     653    int SymbolDotSymbolIsNotADeclaration = 442; 
     654    int ThisIsRequiredButIsNotABaseClassOf = 443; 
     655    int ForwardReferenceToSymbol = 444; 
     656    int IdentifierOfSymbolIsNotDefined = 445; 
     657    int StructIsForwardReferenced = 446; 
     658    int CannotUseTemplateToAddFieldToAggregate = 447; 
     659    int CannotModifyFinalVariable = 448; 
     660    int InvalidUtf8Sequence2 = 449; 
     661    int Utf16HighValuePastEndOfString = 450; 
     662    int Utf16LowValueOutOfRange = 451; 
     663    int UnpairedUtf16Value = 452; 
     664    int IllegalUtf16Value = 453; 
     665    int StaticConstructorCanOnlyBePartOfStructClassModule = 454; 
     666    int ShiftAssignIsOutsideTheRange = 455; 
     667    int TemplateTupleParameterMustBeLastOne = 456; 
     668    int SymbolIsNestedInBoth = 457; 
     669    int FunctionIsAbstract = 458; 
     670    int KindSymbolDoesNotOverload = 459; 
     671    int MismatchedTupleLengths = 460; 
     672    int DoNotUseNullWhenComparingClassTypes = 461; 
     673    int UseTokenInsteadOfTokenWhenComparingWithNull = 462; 
     674    int VoidDoesNotHaveAnInitializer = 463; 
     675    int FunctionNameExpectedForStartAddress = 464; 
     676    int TypeofReturnMustBeInsideFunction = 465; 
     677    int PostBlitsAreOnlyForStructUnionDefinitions = 466; 
     678    int CannotHaveEDotTuple = 467; 
     679    int CannotCreateCppClasses = 468; 
     680    int SwitchAndCaseAreInDifferentFinallyBlocks = 469; 
     681    int SwitchAndDefaultAreInDifferentFinallyBlocks = 470; 
     682    int CannotHaveFieldWithSameStructType = 471; 
     683    int WithoutThisCannotBeConstInvariant = 472; 
     684    int CannotModifySymbol = 473; 
    683685 
    684686} 
  • trunk/descent.core/src/descent/core/dom/ASTConverter.java

    r1201 r1222  
    32933293        case TOKlazy: b.setModifierKeyword(descent.core.dom.Modifier.ModifierKeyword.LAZY_KEYWORD); break; 
    32943294        case TOKref: b.setModifierKeyword(descent.core.dom.Modifier.ModifierKeyword.REF_KEYWORD); break; 
     3295        case TOKenum: b.setModifierKeyword(descent.core.dom.Modifier.ModifierKeyword.ENUM_KEYWORD); break; 
    32953296        default: 
    32963297            throw new IllegalStateException("Invalid modifier: " + a.tok); 
  • trunk/descent.core/src/descent/core/dom/Modifier.java

    r1168 r1222  
    3232 *    <b>lazy</b> 
    3333 *    <b>ref</b> 
     34 *    <b>enum</b> 
    3435 * </pre> 
    3536 */ 
     
    6263        LAZY_KEYWORD("lazy", LAZY), 
    6364        REF_KEYWORD("ref", REF), 
     65        ENUM_KEYWORD("enum", ENUM), 
    6466        ; 
    6567