compiler/libec Improvements to conversion from AST->Type class, and to outputting...
authorJerome St-Louis <jerome@ecere.com>
Tue, 9 Apr 2013 06:23:13 +0000 (02:23 -0400)
committerJerome St-Louis <jerome@ecere.com>
Mon, 15 Apr 2013 05:22:29 +0000 (01:22 -0400)
commit4c70cb90c3b342ed08e5cc2487d31c2c61def4c3
tree8ffbafbe77856b76aff0df41317d972e3103e3f2
parente2373fcba2c09cf688759d1e0789cb150183ec23
compiler/libec Improvements to conversion from AST->Type class, and to outputting the type class to C code
- e.g. signal from musl libc was not handled properly: void (*signal(int, void (*)(int)))(int);
- Other grammar/processing improvements: accepting declaration after statements with a warning, typedefing uint after another type and a comma, error-handling struct declarations missing a semi colon
- Memory leak fixes (freeing asm field, extra type refcount)
- Fixes to build MemoryGuard config with MinGW-w64 (keeping type names when extended atribs present in typedef)
- 64 bit Fixes: memory corruption with subMemberStack ( was using sizeof(int) rather than sizeof(void *)
72 files changed:
compiler/bootstrap/ecc/bootstrap/ecc.c
compiler/bootstrap/ecere/bootstrap/AVLTree.c
compiler/bootstrap/ecere/bootstrap/BTNode.c
compiler/bootstrap/ecere/bootstrap/BinaryTree.c
compiler/bootstrap/ecere/bootstrap/BufferedFile.c
compiler/bootstrap/ecere/bootstrap/BuiltInContainer.c
compiler/bootstrap/ecere/bootstrap/Container.c
compiler/bootstrap/ecere/bootstrap/CustomAVLTree.c
compiler/bootstrap/ecere/bootstrap/DualPipe.c
compiler/bootstrap/ecere/bootstrap/File.c
compiler/bootstrap/ecere/bootstrap/LinkList.c
compiler/bootstrap/ecere/bootstrap/List.c
compiler/bootstrap/ecere/bootstrap/Map.c
compiler/bootstrap/ecere/bootstrap/OldList.c
compiler/bootstrap/ecere/bootstrap/String.c
compiler/bootstrap/ecere/bootstrap/System.c
compiler/bootstrap/ecere/bootstrap/TempFile.c
compiler/bootstrap/ecere/bootstrap/dataTypes.c
compiler/bootstrap/ecere/bootstrap/instance.c
compiler/bootstrap/ecere/bootstrap/memory.c
compiler/bootstrap/ecp/bootstrap/ecp.c
compiler/bootstrap/ecs/bootstrap/ecs.c
compiler/bootstrap/libec/bootstrap/ast.c
compiler/bootstrap/libec/bootstrap/copy.c
compiler/bootstrap/libec/bootstrap/dbpass.c
compiler/bootstrap/libec/bootstrap/ec.main.c
compiler/bootstrap/libec/bootstrap/ecdefs.c
compiler/bootstrap/libec/bootstrap/expression.c
compiler/bootstrap/libec/bootstrap/firstPass.c
compiler/bootstrap/libec/bootstrap/freeAst.c
compiler/bootstrap/libec/bootstrap/grammar.c
compiler/bootstrap/libec/bootstrap/lexer.c
compiler/bootstrap/libec/bootstrap/loadSymbols.c
compiler/bootstrap/libec/bootstrap/output.c
compiler/bootstrap/libec/bootstrap/pass0.c
compiler/bootstrap/libec/bootstrap/pass1.c
compiler/bootstrap/libec/bootstrap/pass15.c
compiler/bootstrap/libec/bootstrap/pass16.c
compiler/bootstrap/libec/bootstrap/pass2.c
compiler/bootstrap/libec/bootstrap/pass3.c
compiler/bootstrap/libec/bootstrap/shortcuts.c
compiler/bootstrap/libec/bootstrap/type.c
compiler/ecc/ecc.ec
compiler/ecc/locale/ecc.pot
compiler/ecs/ecs.ec
compiler/libec/locale/ec.pot
compiler/libec/precompiled/expression.c
compiler/libec/precompiled/grammar.c
compiler/libec/precompiled/type.c
compiler/libec/src/ast.ec
compiler/libec/src/copy.ec
compiler/libec/src/ecdefs.ec
compiler/libec/src/freeAst.ec
compiler/libec/src/grammar.ec
compiler/libec/src/grammar.h
compiler/libec/src/grammar.y
compiler/libec/src/output.ec
compiler/libec/src/pass1.ec
compiler/libec/src/pass15.ec
compiler/libec/src/pass16.ec
compiler/libec/src/pass2.ec
compiler/libec/src/pass3.ec
compiler/libec/src/shortcuts.ec
compiler/libec/src/type.ec
compiler/libec/src/type.y
ide/src/IDESettings.ec
ide/src/OldIDESettings.ec
ide/src/debugger/Debugger.ec
ide/src/debugger/debugTools.ec
ide/src/designer/CodeEditor.ec
ide/src/designer/findCtx.ec
ide/src/designer/findParams.ec