diff options
| author | Andrew Kelley <andrew@ziglang.org> | 2020-06-17 04:29:54 -0400 |
|---|---|---|
| committer | Andrew Kelley <andrew@ziglang.org> | 2020-06-18 17:12:56 -0400 |
| commit | 7e58c56ca72099f6e71752289be7165947bfaa04 (patch) | |
| tree | d4b5def4b5fd17caba14e88f5bdc3673449e8fdd /src/softfloat_ext.cpp | |
| parent | b4eac0414a01b1096e8dd7e89455db88f19789cf (diff) | |
| download | zig-7e58c56ca72099f6e71752289be7165947bfaa04.tar.gz zig-7e58c56ca72099f6e71752289be7165947bfaa04.zip | |
self-hosted: implement Decl lookup
* Take advantage of coercing anonymous struct literals to struct types.
* Reworks Module to favor Zig source as the primary use case.
Breaks ZIR compilation, which will have to be restored in a future commit.
* Decl uses src_index rather then src, pointing to an AST Decl node
index, or ZIR Module Decl index, rather than a byte offset.
* ZIR instructions have an `analyzed_inst` field instead of Module
having a hash table.
* Module.Fn loses the `fn_type` field since it is redundant with
its `owner_decl` `TypedValue` type.
* Implement Type and Value copying. A ZIR Const instruction's TypedValue
is copied to the Decl arena during analysis, which allows freeing the
ZIR text instructions post-analysis.
* Don't flush the ELF file if there are compilation errors.
* Function return types allow arbitrarily complex expressions.
* AST->ZIR for function calls and return statements.
Diffstat (limited to 'src/softfloat_ext.cpp')
0 files changed, 0 insertions, 0 deletions
