diff options
| author | Andrew Kelley <andrew@ziglang.org> | 2021-04-07 22:02:45 -0700 |
|---|---|---|
| committer | Andrew Kelley <andrew@ziglang.org> | 2021-04-07 22:02:45 -0700 |
| commit | e730172e47749db8a9d3be5949231bde95343b39 (patch) | |
| tree | d77ee85e8f3c99a6a13979a22e8650063677b75a /lib/std/Thread.zig | |
| parent | b67378fb08fb3129b66385479a278a93940f09f5 (diff) | |
| download | zig-e730172e47749db8a9d3be5949231bde95343b39.tar.gz zig-e730172e47749db8a9d3be5949231bde95343b39.zip | |
stage2: fix switch validation of handling all enum values
There were several problems, all fixed:
* AstGen was storing field names as references to the original
source code bytes. However, that data would be destroyed when the
source file is updated. Now, it correctly stores the field names in
the Decl arena for the enum. The same fix applies to error set field
names.
* Sema was missing a memset inside `analyzeSwitch`, leaving the "seen
enum fields" array with undefined memory. Now that they are all
properly set to null, the validation works.
* Moved the "enum declared here" note to the end. It looked weird
interrupting the notes for which enum values were missing.
Diffstat (limited to 'lib/std/Thread.zig')
0 files changed, 0 insertions, 0 deletions
