aboutsummaryrefslogtreecommitdiff
path: root/src/parseh.cpp
AgeCommit message (Collapse)Author
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
2016-02-07parseh: tiny performance improvementAndrew Kelley
2016-02-07improve performance for get_fn_typeAndrew Kelley
2016-02-07parseh: fix not properly demoting structs to typedefsAndrew Kelley
2016-02-06parseh understands simple string literal macrosAndrew Kelley
2016-02-04fix debug info for bool typeAndrew Kelley
2016-02-03types sized and aligned with LLVM target data layout APIAndrew Kelley
2016-02-02build: fix libc path findingAndrew Kelley
2016-02-01inline is a keyword instead of a directiveAndrew Kelley
2016-02-01add ?? prefix operatorAndrew Kelley
2016-02-01parseh understands macros which alias global fn ptr varsAndrew Kelley
2016-02-01parseh: do not create macro alias for extern varsAndrew Kelley
2016-01-31parseh: correct debug for forward declsAndrew Kelley
also C typedefs emit simply `const Foo = Bar;` since in C you can implicitly cast from a typedef child to parent but in zig you can't.
2016-01-31parseh handles typedef void betterAndrew Kelley
and introduce c_long_double type
2016-01-31parseh understands forward struct definitionsAndrew Kelley
See #88
2016-01-31parseh: use the decayed type not original typeAndrew Kelley
2016-01-31fix some parseh crashesAndrew Kelley
2016-01-31parseh understands types better and handles some situations betterAndrew Kelley
See #88 Also, includes partial implementation of typedef top level declaration. See #95 Also, fix function types. Previously the way we were deduping function type pointers was incorrect.
2016-01-29parseh properly ignores anonymous structsAndrew Kelley
and nodes get valid create_index values
2016-01-29parseh understands variable declarationsAndrew Kelley
and some initializers such as integers
2016-01-29parseh fix crashAndrew Kelley
2016-01-29parseh defines can reference other definesAndrew Kelley
2016-01-29parseh understands number literal definesAndrew Kelley
2016-01-29parseh understands simple character literal macroAndrew Kelley
2016-01-28attempt to get preprocessor entities from libclangAndrew Kelley
I'm pretty sure it's impossible, the API does not expose the macro expansion value and the source location points to the macro's name, not its value.
2016-01-28parseh understands bodyless struct used in fnAndrew Kelley
2016-01-28parseh handles self referential structs and fn pointersAndrew Kelley