mirror of
https://codeberg.org/ziglang/zig.git
synced 2025-12-09 15:19:07 +00:00
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.
|
||
|---|---|---|
| .. | ||
| behavior | ||
| c_abi | ||
| cases | ||
| link | ||
| src | ||
| standalone | ||
| assemble_and_link.zig | ||
| behavior.zig | ||
| cases.zig | ||
| cbe.zig | ||
| compare_output.zig | ||
| compile_errors.zig | ||
| gen_h.zig | ||
| link.zig | ||
| llvm_targets.zig | ||
| nvptx.zig | ||
| run_translated_c.zig | ||
| stack_traces.zig | ||
| standalone.zig | ||
| tests.zig | ||
| translate_c.zig | ||