mirror of
https://github.com/ziglang/zig.git
synced 2026-01-03 12:03:19 +00:00
Sema: ensure error_set_merged is sorted
This commit is contained in:
parent
a4c5ec49f1
commit
f6bd534fc9
@ -7390,6 +7390,8 @@ fn zirSwitchBlock(sema: *Sema, block: *Block, inst: Zir.Inst.Index) CompileError
|
||||
names.putAssumeCapacityNoClobber(error_name, {});
|
||||
}
|
||||
|
||||
// names must be sorted
|
||||
Module.ErrorSet.sortNames(&names);
|
||||
else_error_ty = try Type.Tag.error_set_merged.create(sema.arena, names);
|
||||
}
|
||||
},
|
||||
@ -12979,6 +12981,8 @@ fn zirReify(sema: *Sema, block: *Block, inst: Zir.Inst.Index) CompileError!Air.I
|
||||
);
|
||||
}
|
||||
|
||||
// names must be sorted
|
||||
Module.ErrorSet.sortNames(&names);
|
||||
const ty = try Type.Tag.error_set_merged.create(sema.arena, names);
|
||||
return sema.addType(ty);
|
||||
},
|
||||
|
||||
@ -260,6 +260,13 @@ test "Type.ErrorSet" {
|
||||
.{ .name = "C" },
|
||||
},
|
||||
});
|
||||
_ = @Type(.{
|
||||
.ErrorSet = &.{
|
||||
.{ .name = "C" },
|
||||
.{ .name = "B" },
|
||||
.{ .name = "A" },
|
||||
},
|
||||
});
|
||||
}
|
||||
|
||||
test "Type.Struct" {
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user