aboutsummaryrefslogtreecommitdiff
path: root/src/parseh.cpp
AgeCommit message (Collapse)Author
2017-04-13typedefpocalypseAndrew Kelley
closes #314
2017-03-26add stack protector safety when linking libcAndrew Kelley
* introduce zigrt file. it contains only weak symbols so that multiple instances can be merged. it contains __zig_panic so that multiple .o files can call the same panic function. * remove `@setFnVisible` builtin and add @setGlobalLinkage builtin which is more powerful * add `@panic` builtin function. * fix collision of symbols with extern prototypes and internal function names * add stack protector safety when linking against libc. To add the safety mechanism without libc requires implementing Thread Local Storage. See #276
2017-03-20fix test regression regarding shadowing namesAndrew Kelley
closes #271
2017-03-10update to llvm 4.0Andrew Kelley
2017-02-27fix inability to write to global in some casesAndrew Kelley
before, when we initialized a variable by copying the initialization value, it made the internal const value references point to a duplicate value, resulting in a phony duplicate global value being updated instead of the real on. now the behavior is as expected. thanks to hoppetosse for pointing out this bug on IRC.
2017-02-04ability to set global variable alignment and ...Andrew Kelley
..section in the initialization expression
2017-02-03exported global variables get emitted as external in LLVMAndrew Kelley
2017-02-03implement packed structsAndrew Kelley
closes #183
2017-01-13fix some stuff when llvm has assertions onAndrew Kelley
2017-01-12fix use decl regressionAndrew Kelley
2017-01-12IR: fix array concatenationAndrew Kelley
all tests passing
2017-01-12IR: implement macro for function aliasing function pointerAndrew Kelley
2017-01-11pass some parseh testsAndrew Kelley
2017-01-11pass more testsAndrew Kelley
2017-01-10partially fix parseh commandAndrew Kelley
2017-01-04IR: add unreachable code compiler errorAndrew Kelley
2016-12-28IR: pass passSliceOfEmptyStructToFn testAndrew Kelley
2016-12-26IR: pass intToPtrCast testAndrew Kelley
2016-12-25IR: support compile time global pointer reinterpretAndrew Kelley
this required moving the place we store types to ConstExprValue
2016-12-18IR: all structs anonymousAndrew Kelley
2016-12-11IR: fix implementation of parsehAndrew Kelley
libc hello world works now
2016-12-04IR: re-organize where state goes to prepare for genericsAndrew Kelley
* Rip out legacy code for generics * put scope in instruction instead of AST nodes * separate top level decl stuff from AST nodes - remove the assumption that there is a 1:1 correspondence between an output instruction and an AST node - This way we won't have to clone AST nodes for generics.
2016-12-01rewrite scope implementationAndrew Kelley
* now there are not extra unused hash tables * each variable declaration opens a new scope inside a function
2016-12-01rename BlockContext to ScopeAndrew Kelley
2016-11-18IR: correctly codegening memset and memcpyAndrew Kelley
2016-11-17remove AST cloning code and add AST render for while loopsAndrew Kelley
2016-11-04WIP moving all analysis to IRAndrew Kelley
2016-09-28remove compiler directivesAndrew Kelley
* add `setFnTest`, `setFnVisible`, `setFnStaticEval`, `setFnNoInline` builtin functions to replace previous directive functionality * add `coldcc` and `nakedcc` as keywords which can be used as part of a function prototype. * `setDebugSafety` builtin can be used to set debug safety features at a per block scope level. * closes #169
2016-09-23enums support member functionsAndrew Kelley
2016-09-19use size_t for indexesAndrew Kelley
protect against incorrect copies in debug mode
2016-09-10rename LLVMZig to ZigLLVMAndrew Kelley
2016-09-05fix gcc 5.4.0compile errorsAndrew Kelley
2016-09-04port to llvm 3.9Andrew Kelley
2016-08-07ability to have a return type of 'type'Andrew Kelley
2016-08-04new multiline string syntaxAndrew Kelley
This patch also moves a bunch of the parser code into the tokenizer. Closes #162.
2016-07-17rename NodeTypeStructDecl to NodeTypeContainerDeclAndrew Kelley
2016-05-07support generic data structuresAndrew Kelley
See #22
2016-04-22parseh: support anonymous enums and enums with initializersAndrew Kelley
2016-04-22add syntax to allow symbols to have arbitrary strings as namesAndrew Kelley
2016-04-21better parsing of C macrosAndrew Kelley
See #88
2016-03-08update to llvm 3.8.0Andrew Kelley
2016-03-01c_void is provided outside of C importsAndrew Kelley
2016-03-01rewrite how importing worksAndrew Kelley
* Introduce the concept of packages. Closes #3 * Add support for error notes. * Introduce `@import` and `@c_import` builtin functions and remove the `import` and `c_import` top level declarations. * Introduce the `use` top level declaration. * Add `--check-unused` parameter to perform semantic analysis and codegen on all top level declarations, not just exported ones and ones referenced by exported ones. * Delete the root export node and add `--library` argument.
2016-02-14parseh: fix __cdecl causing a fn ptr to be double ptrAndrew Kelley
2016-02-13parseh: ZIG_PARSEH_CFLAGS -> ZIG_NATIVE_PARSEH_CFLAGSAndrew Kelley
2016-02-13parseh: support attributed typesAndrew Kelley
2016-02-13parseh: more specific warning for different calling conventionsAndrew Kelley
2016-02-13parseh: fix branching on undefined memoryAndrew Kelley
2016-02-11ability to cross compileAndrew Kelley
hello_libc.zig can produce a windows build
2016-02-09fix build with GCCAndrew Kelley