Skip to content

Tags: ValeryAntopol/mpl-c

Tags

190813

Incremental update (Matway#1)

* Fix language name in compiler messages

* Add PRE recursion depth limit

* Remove redundant comment

* Make global static data store in IR global constant, make debug info for large objects more compact

* Remove redundant blank lines, remove redundant comment

* Make compiler error message about local capture in real function more informative

* Enforce variable dynamization whenever a reference to it copied to dynamic storage

* Enlarge limit of characters in type names in debug info, fix order of writes to type names in debug info

* Add calling convention option to function signatures

* Fix error messages in exportFunction and exportVariable

* Remove redundant blank lines and comments, align code in astNodeToCodeNodeImpl

* Make compiler produce correct IR for calls of variadic functions with no arguments

* Make user-defined calling convention passed directly into IR, implement importVariable and exportVariable for references

* Fix compilation fail when code assigned to reference to variadic function

* Fix compilation fail when used-defined names "closure" and "self" shadow compiler-defined names

* Try to create aliases for functions called by different names

* Enforce the use of PRE captures in matching

* Add hash sum to debug type names, enlarge debug type name size limit, align type name getters

* Remove duplicated line, add forgotten condition to assert in processImpl

* Remove compilation error whenever dynamic codeRef created inside dynamic loop

* Make compiler dereference outputs of functions in correct order

* Remove compilation error whenever virtual variable wrapped into a built-in list

* Make compiler error message about local capture in real function more informative

* Enforce recompilation of function that assigns codeRef with virtual capture containing code with 0 previously set to that codeRef whenever virtual capture value changed between calls

* Make compiler distinguish real functions with a difference in the referenceness of the arguments

* Try to implement recursive lambda assignment

* Make compiler use empty string as default convention

* Implement independent compilation of real functions

* Enforce suppression of errors from PRE whenever recursion depth limit was previously exceeded

* Refactor code using exportFunction

* Make built-in functions new and delete check for stack underflow

* Fix formatting

* Refactor code

* Unify syntax for all callables

* Remove func

* Remove built-in functions new and delete

* Fix compilation fail when code assigned to virtual codeRef

* Add exported function to visible names if its body has errors

* Move helper functions from codeNode.mpl and group them in variable.mpl

* Use ascii table from standard library instead of custom

* Remove redundant space

* Ensure that arguments in declareBuiltin are known at compile time

* Make result of built-in function addressToReference Dirty instead of Dynamic

* Extend information about CodeNode

* Add matching info about pointees of pointers dereferenced in PRE, pass captures through failed nodes

* Add more information to schemas printed in error messages

* Check if export function is variadic before arguments processing

* Change order of operations in processExportFunctionImpl

* Fix error messages in built-in functions importVariable, exportVariable, importFunction, exportFunction

* Fix codestyle

* Fix that built-in function textSplit would not return value if input is an empty string

* Fix that parser would recognize 0x as valid token

* Use getter instead of internal field to get size of Array in parser

* Make possible to cast a number to a schema of a number

* Prohibit creating virtual codeRefs

* Make global variables dynamic by default

* Fix that invalid IR would be generated for realizing virtual string

* Simplify cast in irWriter

* Make functions with enforced signature implicitly touch last input whenever it was not explicitly touched

* Fix crash whenever a schema is dynamised

* Make shadows inherit staticity from origin

* Make fields inherit staticity from parent

* Make variable tree dirty whenever a reference became global

* Use specific type string in debug info

* Fix typos in error messages

* Extend function name in debug info

* Make parser correctly recognize names consisting of dots

* Use proper source in reallyCreateShadows

* Use [useModule] instead of [includeModule] in builtin.mpl

* Improve reporting about signature mismatch

* Add forgotten information to shadows in [makeShadowsImpl]

* Add unwrapped call limit

* Make compiler distinguish real and virtual use of variable

* Make compiler do not create IR for variables assigned to schemas

* Clear results after failing of PRE

* Remove redundant blank line

* Fix that overload resolving breaks whenever a reference to a value from an overloaded name is captured into another name

* Remove redundant makeStringView

* Fix that addNamesFromModule would incorrectly check if module already included

* Rewrite processing of command line arguments

* Remove trailing spaces

* Keep usedOrIncludedModulesTable untouched in unregCodeNodeNames

* Use appropriate way to copy variable from built-in list

* Remove dead code

181205

Fix memory leak when objects are created inside conditional branch

181203

Migrate code from the internal repository