DaedalusCompiler Versions Save

Daedalus ( Gothic I & II scripting language ) Compiler to DAT

v0.9.2

3 years ago

Changelog

Features

  • Fixed error: unexpected characters weren't treated as syntax error

v0.9.1

4 years ago

v0.9.0

4 years ago

Changelog

Features

  • Fixed - without --verbose flag, compiler didn't show in which file syntax error occured
  • Updated DeclarationUsagesChecked (it's now fully functional)
  • Added .ZEN parser (and --zen-paths parameter) used by DeclarationUsagesChecked
  • Added --output-ou parameter - it's now possible to generate ou files in custom path
  • Updated Application's Help Page (shown when compiler run without arguments, or with --help flag)

v0.8.0

4 years ago

Changelog

Features

  • Added possibility to use custom externals file for compilation
  • Added extern keyword for declarations of external functions
  • Added possibility of assignment when declaring a variable
  • Added SingleExpressionWarning (usage of single-expression statement hack)
  • Added NamesNotMatchingCaseWiseWarning (when declared & used identifier doesn't match case-wise)
  • Added UnusedSymbolWarning (basic support, for full support we would need to parse .ZEN files)
  • Added ConstValueChangedWarning (when trying to change value of a const in runtime)
  • Added UsageOfNonInitializedVariableWarning
  • Added CannotInitializeConstWithValueOfDifferentTypeError
  • Added CannotInitializeArrayElementWithValueOfDifferentTypeError
  • Added ArgumentsCountDoesNotMatchError
  • Added SymbolIsNotAFunctionError
  • Added UndeclaredIdentifierError (full support)
  • Added WrongClassSizeError (some builtin classes require to have exact size)
  • Added UnknownTypeNameError
  • Added IterationStatementNotInLoopError
  • Added NotConstReferenceError
  • Added ArraySizeNotConstIntegerError
  • Added ArrayIndexNotConstIntegerError
  • Added ReferencedSymbolIsNotArrayError
  • Added AttributeOfNonInstanceError
  • Added InfiniteInheritanceReferenceLoopError
  • Added InfiniteConstReferenceLoopError
  • Added InvalidBinaryOperationError
  • Added ArithmeticOperationOverflowError
  • Added DivideByZeroError
  • Added InvalidArgumentTypeToUnaryExpressionError
  • Added BinaryOperationsNotAllowedInsideFloatExpression
  • Added FloatDoesntSupportCompoundAssignments
  • Added UnsupportedOperationError
  • Added InvalidUnaryOperationError
  • Added AccessToAttributeOfArrayElementNotSupportedError
  • Added InconsistentArraySizeError
  • Added ArraySizeEqualsZeroError
  • Added IntegerLiteralTooLargeError
  • Added UnsupportedArrayTypeError
  • Added UnsupportedFunctionTypeError
  • Added UnsupportedTypeError
  • Added ClassDoesNotHaveAttributeError
  • Added VarAssignmentNotAllowedHereError

v0.7.0

4 years ago

Changelog

Features

  • Added while loop (break and continue keywords supported)
  • Compilation is stopped now if there are syntax errors
  • Added IterationStatementNotInLoopError (break, continue)
  • Added UdeclaredIdentifierError support for const assignment
  • Added TooBigArrayIndexError
  • Added ArrayIndexOutOfRangeError
  • Added TooBigArraySizeError
  • Added NotValidClassOrPrototypeError
  • Added RedefinitionError
  • Added UnableToEvaluateConstError
  • Added KeywordUsedAsNameError
  • Changed '//supresss WARNING_CODE' comment format to '//! suppress WARNING_CODE'

v0.6.1

4 years ago

Changelog

Features

  • Added full support of Ikarus & Lego (newest versions)
  • Added new warning when the only code in the line is single expression
  • Added strict mode that turns warnings into errors
  • Added //suppress: WARNING_CODE comments to suppress warnings
  • Added new error detection, when there is too big integer value
  • Fixed few minor bugs

v0.6.0

4 years ago

Changelog

Features

  • Basic Ikarus and Lego support
  • Added new tests

v0.5.1

5 years ago

Changelog

Features

  • Added alias in dockerfile

v0.5.0

5 years ago

Changelog

Features

  • Added possibility compile daedalus code into DAT file
  • Added possibility generate OU files with dialogs
  • Added catching of most of semantic errors
  • Added support for Windows, MacOS, Linux
  • Added possibility to auto build release with circleCI
  • Added unit tests for most of use cases
  • Added e2e tests of compiler