-
-
Notifications
You must be signed in to change notification settings - Fork 3.1k
Closed
Labels
bugObserved behavior contradicts documented or intended behaviorObserved behavior contradicts documented or intended behaviorfrontendTokenization, parsing, AstGen, Sema, and Liveness.Tokenization, parsing, AstGen, Sema, and Liveness.
Milestone
Description
Zig Version
0.10.0-dev.4443+71f876295
Steps to Reproduce
const std = @import("std");
fn foo(comptime src: struct{}) void {
_ = src;
}
pub fn main() void {
foo(@src());
}Expected Behavior
[meghan@nixos:~/src/zig]$ ./build/zig2 run test.zig
thread 3277 panic: reached unreachable code
/home/meghan/src/zig/src/value.zig:2558:21: 0x15be91e in value.Value.hashPtr (zig2)
else => unreachable,
^
/home/meghan/src/zig/src/value.zig:2328:39: 0x135e411 in value.Value.hash (zig2)
else => return hashPtr(val, hasher, mod.getTarget()),
^
/home/meghan/src/zig/src/value.zig:2347:43: 0x135e5dd in value.Value.hash (zig2)
field_val.hash(field_ty, hasher, mod);
^
/home/meghan/src/zig/src/Sema.zig:6602:29: 0x11ed6a7 in Sema.instantiateGenericCall (zig2)
arg_val.hash(arg_ty, &hasher, mod);
^
/home/meghan/src/zig/src/Sema.zig:5981:40: 0xfe1fdf in Sema.analyzeCall (zig2)
if (sema.instantiateGenericCall(
^
/home/meghan/src/zig/src/Sema.zig:5773:28: 0xd41c2c in Sema.zirCall (zig2)
return sema.analyzeCall(block, func, func_src, call_src, modifier, ensure_result_used, resolved_args, bound_arg_src);
^
/home/meghan/src/zig/src/Sema.zig:745:62: 0xb9b3b5 in Sema.analyzeBodyInner (zig2)
.call => try sema.zirCall(block, inst),
^
/home/meghan/src/zig/src/Sema.zig:629:30: 0xb8ee5a in Sema.analyzeBody (zig2)
_ = sema.analyzeBodyInner(block, body) catch |err| switch (err) {
^
/home/meghan/src/zig/src/Module.zig:5607:21: 0x98fbad in Module.analyzeFnBody (zig2)
sema.analyzeBody(&inner_block, fn_info.body) catch |err| switch (err) {
^
/home/meghan/src/zig/src/Module.zig:4300:40: 0x97037a in Module.ensureFuncBodyAnalyzed (zig2)
var air = mod.analyzeFnBody(func, sema_arena) catch |err| switch (err) {
^
/home/meghan/src/zig/src/Compilation.zig:3047:42: 0x65c0ec in Compilation.processOneJob (zig2)
module.ensureFuncBodyAnalyzed(func) catch |err| switch (err) {
^
/home/meghan/src/zig/src/Compilation.zig:2985:30: 0x649e3f in Compilation.performAllTheWork (zig2)
try processOneJob(comp, work_item);
^
/home/meghan/src/zig/src/Compilation.zig:2325:31: 0x6424ed in Compilation.update (zig2)
try comp.performAllTheWork(main_progress_node);
^
/home/meghan/src/zig/src/main.zig:3319:20: 0x5cda1f in main.updateModule (zig2)
try comp.update();
^
/home/meghan/src/zig/src/main.zig:3004:17: 0x5172cc in main.buildOutputType (zig2)
updateModule(gpa, comp, hook) catch |err| switch (err) {
^
/home/meghan/src/zig/src/main.zig:238:31: 0x4affbf in main.mainArgs (zig2)
return buildOutputType(gpa, arena, args, .run);
^
/home/meghan/src/zig/src/stage1.zig:56:24: 0x4af635 in main (zig2)
stage2.mainArgs(gpa, arena, args) catch unreachable;
^
???:?:?: 0x7f1c2acff236 in ??? (???)
???:?:?: 0x7ffe047cd3d9 in ??? (???)
Aborted (core dumped)
Actual Behavior
[meghan@nixos:~/src/zig]$ ./build/stage3/bin/zig run test.zig
thread 3154 panic: reached unreachable code
???:?:?: 0x1bf63b5 in hashPtr (/home/meghan/src/zig/src/zig_llvm.cpp)
???:?:?: 0x1a4d7e5 in hash (/home/meghan/src/zig/src/zig_llvm.cpp)
???:?:?: 0x1a4ce73 in hash (/home/meghan/src/zig/src/zig_llvm.cpp)
???:?:?: 0x212dd1a in instantiateGenericCall (/home/meghan/src/zig/src/zig_llvm.cpp)
???:?:?: 0x1eeba7a in analyzeCall (/home/meghan/src/zig/src/zig_llvm.cpp)
???:?:?: 0x1c26afc in zirCall (/home/meghan/src/zig/src/zig_llvm.cpp)
???:?:?: 0x1a77f10 in analyzeBodyInner (/home/meghan/src/zig/src/zig_llvm.cpp)
???:?:?: 0x1a76488 in analyzeBody (/home/meghan/src/zig/src/zig_llvm.cpp)
???:?:?: 0x18a2c7a in analyzeFnBody (/home/meghan/src/zig/src/zig_llvm.cpp)
???:?:?: 0x16ae2b8 in ensureFuncBodyAnalyzed (/home/meghan/src/zig/src/zig_llvm.cpp)
???:?:?: 0x16ac733 in processOneJob (/home/meghan/src/zig/src/zig_llvm.cpp)
???:?:?: 0x1579daa in performAllTheWork (/home/meghan/src/zig/src/zig_llvm.cpp)
???:?:?: 0x15765cb in update (/home/meghan/src/zig/src/zig_llvm.cpp)
???:?:?: 0x1583e66 in updateModule (/home/meghan/src/zig/src/zig_llvm.cpp)
???:?:?: 0x1304d33 in buildOutputType (/home/meghan/src/zig/src/zig_llvm.cpp)
???:?:?: 0x12e2efa in mainArgs (/home/meghan/src/zig/src/zig_llvm.cpp)
???:?:?: 0x15d0d67 in main (/home/meghan/src/zig/src/zig_llvm.cpp)
???:?:?: 0x7fea19f79236 in ??? (???)
???:?:?: 0x7fff2cda53c5 in ??? (???)
Aborted (core dumped)
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
bugObserved behavior contradicts documented or intended behaviorObserved behavior contradicts documented or intended behaviorfrontendTokenization, parsing, AstGen, Sema, and Liveness.Tokenization, parsing, AstGen, Sema, and Liveness.