zig/lib/std/dwarf
Andrew Kelley ada0010471 compiler: move unions into InternPool
There are a couple concepts here worth understanding:

Key.UnionType - This type is available *before* resolving the union's
fields. The enum tag type, number of fields, and field names, field
types, and field alignments are not available with this.

InternPool.UnionType - This one can be obtained from the above type with
`InternPool.loadUnionType` which asserts that the union's enum tag type
has been resolved. This one has all the information available.

Additionally:

* ZIR: Turn an unused bit into `any_aligned_fields` flag to help
  semantic analysis know whether a union has explicit alignment on any
  fields (usually not).
* Sema: delete `resolveTypeRequiresComptime` which had the same type
  signature and near-duplicate logic to `typeRequiresComptime`.
  - Make opaque types not report comptime-only (this was inconsistent
    between the two implementations of this function).
* Implement accepted proposal #12556 which is a breaking change.
2023-08-22 13:54:14 -07:00
..
abi.zig netbsd: std.dwarf.abi: disable x86_64 regBytes() 2023-08-15 17:26:39 -04:00
AT.zig std.dwarf: implement basic DWARF 5 parsing 2022-03-15 16:53:45 -04:00
ATE.zig std.dwarf: implement basic DWARF 5 parsing 2022-03-15 16:53:45 -04:00
call_frame.zig compiler: move unions into InternPool 2023-08-22 13:54:14 -07:00
EH.zig - add default register rule 2023-07-20 22:58:13 -04:00
expressions.zig dwarf: small code size reduction in expression runner 2023-07-25 10:28:03 -04:00
FORM.zig std.dwarf: implement basic DWARF 5 parsing 2022-03-15 16:53:45 -04:00
LANG.zig std.dwarf: implement basic DWARF 5 parsing 2022-03-15 16:53:45 -04:00
OP.zig wasm: Implement debug info for parameters 2022-05-09 18:51:46 +02:00
TAG.zig std.dwarf: implement basic DWARF 5 parsing 2022-03-15 16:53:45 -04:00