SC2Mapster.com Wiki

Syntax error

  • You are using a function that is forward defined:
    void func () { forwardDefinition(); }
    void forwardDefinition() { }
    
    Solution 1: Put the function before
    void forwardDefinition() { }
    void func () { forwardDefinition(); }
    
    Solution 2: Put the function prototype before
    void forwardDefinition(); // Prototype
    void func () { forwardDefinition(); }
    void forwardDefinition() { }
    
  • Variable declarations must be made at the top of the function.
    void func() {
      int a;
      a = 1;
      int b; // Must be moved right after int a;
    

Internal compiler error

  • A line cannot be more than 2048 characters.

Implicit cast not allowed

  • You are trying to put a variable of a type A into somewhere that expects a type B.
    bool b = AbsI(-1);
    

Parameter type does not match the function definition

  • You are trying to call a function with an argument of the wrong type.
    void takeInt(int a) {}
    takeInt(false); // Error!
    

Wrong number of parameters

  • You are trying to call a function with the wrong number of parameters.
    void takeOne(int a) {}
    takeOne(1, 2); // Error!
    

Function not found

  • If the entry point void MapInit(); is not defined.

Bulk copy not supported

  • You are trying to copy a custom structure of 2 or more attributes.
    struct Monkey { string name; int numBananas; };
    void test () {
      Monkey a;
      Monkey b = a; // Error happens here!
    }
    

Global data are too large

  • You are trying to use too much memory with your global variables. The maximum seems to be around 219 = 524,288 * sizeof int
    int[1000000] a;
    

failed: 32k - 1 size limit to local variables

  • You are trying to use too much memory with your local variables.
    void f() { int[1000000] a; }
    

Invalid address

  • You are trying to call a function in the global declarations.
    int giveone() { return 1; }
    const int test = giveone();
    

Nested iteration detected

  • You are using two "Pick Each __" actions, one within the other.
  • To avoid this replace one of the actions with a "For Each _" action.

Registry Overload

  • You are combining too many strings... (Wait WTF? Yes this is a real error)
  • You can only combine 28 different strings at once.
     string exampleString = ("Test 1" + "Test 2" + "Test 3" + "Test 4" + "Test 5" + 
          "Test 6" + "Test 7" + "Test 8" + "Test 9" + "Test 10" + 
          "Test 11" + "Test 12" + "Test 13" + "Test 14" + "Test 15" + 
          "Test 16" + "Test 17" + "Test 18" + "Test 19" + "Test 20" + 
          "Test 21" + "Test 22" + "Test 23" + "Test 24" + "Test 25" + 
          "Test 26" + "Test 27" + "Test 28" + "Test 29");
    

Error List

  • e_badLValue=Cannot assign to the left side of assignment expression
  • e_badParameterType=Can only pass basic types
  • e_cantFindInclude=Include file not found
  • e_cantTakeAddress=Cannot use '&' on an object which has no address
  • e_constAssigned=Const variable already assigned
  • e_constInitRequired=Must initialize const variables
  • e_constNotAllowedHere=Cannot use const here
  • e_derefNotPointer=Cannot use '->' on a non-pointer object
  • e_expectedArrayIndex=Expected an array index: '['
  • e_expectedBoolExpr=Expected a boolean expression
  • e_expectedCloseBrace=Expected a closing brace: '}'
  • e_expectedComma=Expected a comma: ','
  • e_expectedConstExpr=Non-constant initialization of constant object
  • e_expectedExpr=Expected an expression
  • e_expectedFieldName=Expected a field name inside a structure
  • e_expectedFieldType=Expected a field type inside a structure
  • e_expectedFuncBody=Expected ';' or function body
  • e_expectedGlobalName=Expected unused global variable or function name
  • e_expectedInclude=Expected an include file name
  • e_expectedIntType=Shift operator requires integer value
  • e_expectedLeftParen=Expected '('
  • e_expectedNativeName=Expected a registered native function name
  • e_expectedOpenBrace=Expected an opening brace: '{'
  • e_expectedParams=Invalid parameter list
  • e_expectedReturn=Expected a return value
  • e_expectedRightParen=Expected ')'
  • e_expectedSemicolon=Expected a semicolon: ';'
  • e_expectedStructIdent=Structure requires an identifier
  • e_expectedType=Expected type name
  • e_expectedTypedefIdent=Typedef requires an unused identifier
  • e_expectedTypedefType=Typedef requires a type
  • e_globalsTooLarge=Global data are too large
  • e_identiferTruncated=Truncated identifier
  • e_illegalArraySize=Illegal array dimension
  • e_illegalCharacter=Illegal char constant
  • e_illegalEscapeSeq=Illegal escape sequence
  • e_illegalIndex=Array index require an integer value
  • e_illegalOctal=illegal octal digit
  • e_internalGalaxyError=Internal compiler error
  • e_localsTooLarge=32k - 1 size limit to local variables
  • e_mangleOverflow=Mangled name overflow
  • e_nativeMismatch=Native function prototype does not match the internal function
  • e_nestingTooDeep=Nesting overflow
  • e_newlineConst=Newline in constant
  • e_noBulkCopy=Bulk copy not supported
  • e_noForwardSupport=struct forward declaration not supported
  • e_noImplicitCast=Implicit cast not allowed
  • e_noNestedStruct=struct cannot be nested inside itself
  • e_notArray=Cannot use '[': object is not an array
  • e_notFunction=Cannot use '(': object is not a function
  • e_notStruct=Cannot use '.': object is not a structure
  • e_notStructField=This field is not a member of the struct type
  • e_noVoidVars=Illegal variable type: void
  • e_numericOverflow=Numeric overflow
  • e_oldStyleDimension=Galaxy array definitions require the dimension after the type
  • e_paramCountMismatch=Wrong number of parameters
  • e_paramTypeMismatch=Parameter type does not match the function definition
  • e_prototypeMismatch=Function does not match previous definition
  • e_callbackMismatch=Mismatched callback definitions
  • e_redefinedField=struct field redefinition
  • e_redefinedFuncName=function already defined
  • e_redefinedParam=redefined identifier
  • e_registerUsageOverflow=Register overflow
  • e_requireStruct=Require struct on left side of -> or .
  • e_scriptTooLarge=Script too large
  • e_stateStackOverflow=Stack overflow
  • e_stringTruncated=Truncated string
  • e_syntaxError=Syntax error
  • e_typecastError=That typecast not allowed
  • e_typeMismatch=Types do not match
  • e_undefFunction=Function declared but not defined
  • e_unexpectedBreak=Unexpected 'break' statement
  • e_unexpectedComment=comment blocks with /* */ are not supported
  • e_unexpectedContinue=Unexpected 'continue' statement
  • e_unexpectedDirective=unexpected directive, Galaxy does not have a preprocessor
  • e_unexpectedGoto='goto' statements are unsupported
  • e_unexpectedNew=dynamic memory allocation unsupported
  • e_unexpectedOperator=Operators ++ and -- are unsupported
  • e_unexpectedReturn=Unexpected value returned from a 'void' function
  • e_unexpectedSign=unexpected 'signed' or 'unsigned' as Galaxy types have implicit sign
  • e_unexpectedSwitch='switch' statements are unsupported
  • e_unreachableCode=unreachable code
  • e_jumpOutOfBounds=Code jump out of bounds (try reducing the size of very large functions or triggers)
  • e_noFunctionBody=No function body was ever declared
  • e_execPaused=Execution paused
  • e_threadIsActive=Execution currently active
  • e_threadIsReady=Thread is ready to execute
  • e_execTimeout=Execution took too long
  • e_codePtrInData=Code pointer tried to jump to data space
  • e_dataPtrInCode=Data pointer tried to access code space
  • e_divByZero=Divide by zero
  • e_invalidAddr=Invalid address
  • e_invalidGlobalPtr=Invalid global pointer
  • e_invalidStackPtr=Invalid stack pointer
  • e_nativeCodeError=Native function has encountered an error
  • e_notInCode=Code pointer moved out of code space
  • e_nullPointer=Dereferenced a null pointer
  • e_stackOverflow=Stack overflow
  • e_stackUnderflow=Stack underflow

You must login to post a comment. Don't have an account? Register to get one!