authorgravatar for andrew@ziglang.orgAndrew Kelley <andrew@ziglang.org> 2023-11-11 04:42:33-05:00
committergravatar for noreply@github.comGitHub <noreply@github.com> 2023-11-11 04:42:33-05:00
log78df899b888df1c1b77a7630d94a08675f12f83e
tree893838e6791eca3ca74275d2b6b84078a097740c
parent97e23896a9168132b6d36ca22ae1af10dd53d80d
parentae8992629cc3d03379381ae37ab10d0e03edfd03
signaturebadge-question-mark Signed by PGP key 4AEE18F83AFDEB23

Merge pull request #17967 from jacobly0/x86_64-cases


3 files changed, 8 insertions(+), 7 deletions(-)

src/Module.zig+3-2
......@@ -1250,6 +1250,7 @@ pub const ErrorMsg = struct {
12501250 comptime format: []const u8,
12511251 args: anytype,
12521252 ) !*ErrorMsg {
1253 assert(src_loc.lazy != .unneeded);
12531254 const err_msg = try gpa.create(ErrorMsg);
12541255 errdefer gpa.destroy(err_msg);
12551256 err_msg.* = try ErrorMsg.init(gpa, src_loc, format, args);
......@@ -3542,8 +3543,6 @@ pub fn semaFile(mod: *Module, file: *File) SemaError!void {
35423543 new_decl.ty = Type.type;
35433544 new_decl.alignment = .none;
35443545 new_decl.@"linksection" = .none;
3545 new_decl.has_tv = true;
3546 new_decl.owns_tv = true;
35473546 new_decl.alive = true; // This Decl corresponds to a File and is therefore always alive.
35483547 new_decl.analysis = .in_progress;
35493548 new_decl.generation = mod.generation;
......@@ -3593,6 +3592,8 @@ pub fn semaFile(mod: *Module, file: *File) SemaError!void {
35933592
35943593 new_namespace.ty = struct_ty.toType();
35953594 new_decl.val = struct_ty.toValue();
3595 new_decl.has_tv = true;
3596 new_decl.owns_tv = true;
35963597 new_decl.analysis = .complete;
35973598
35983599 if (mod.comp.whole_cache_manifest) |whole_cache_manifest| {
src/Sema.zig+3-3
......@@ -2438,8 +2438,9 @@ fn errMsg(
24382438 src: LazySrcLoc,
24392439 comptime format: []const u8,
24402440 args: anytype,
2441) error{OutOfMemory}!*Module.ErrorMsg {
2441) error{ NeededSourceLocation, OutOfMemory }!*Module.ErrorMsg {
24422442 const mod = sema.mod;
2443 if (src == .unneeded) return error.NeededSourceLocation;
24432444 const src_decl = mod.declPtr(block.src_decl);
24442445 return Module.ErrorMsg.create(sema.gpa, src.toSrcLoc(src_decl, mod), format, args);
24452446}
......@@ -2455,14 +2456,13 @@ pub fn fail(
24552456 return sema.failWithOwnedErrorMsg(block, err_msg);
24562457}
24572458
2458fn failWithOwnedErrorMsg(sema: *Sema, block: ?*Block, err_msg: *Module.ErrorMsg) CompileError {
2459fn failWithOwnedErrorMsg(sema: *Sema, block: ?*Block, err_msg: *Module.ErrorMsg) error{ AnalysisFail, OutOfMemory } {
24592460 @setCold(true);
24602461 const gpa = sema.gpa;
24612462 const mod = sema.mod;
24622463
24632464 ref: {
24642465 errdefer err_msg.destroy(gpa);
2465 if (err_msg.src_loc.lazy == .unneeded) return error.NeededSourceLocation;
24662466
24672467 if (crash_report.is_enabled and mod.comp.debug_compile_errors) {
24682468 var wip_errors: std.zig.ErrorBundle.Wip = undefined;
src/codegen/llvm/BitcodeReader.zig+2-2
......@@ -51,8 +51,8 @@ pub const Block = struct {
5151pub const Record = struct {
5252 name: []const u8,
5353 id: u32,
54 operands: []u64,
55 blob: []u8,
54 operands: []const u64,
55 blob: []const u8,
5656
5757 fn toOwnedAbbrev(record: Record, allocator: std.mem.Allocator) !Abbrev {
5858 var operands = std.ArrayList(Abbrev.Operand).init(allocator);