diff --git a/test/behavior.zig b/test/behavior.zig index 39662e91cd..b882c6aca3 100644 --- a/test/behavior.zig +++ b/test/behavior.zig @@ -253,7 +253,6 @@ test { builtin.zig_backend != .stage2_c and builtin.zig_backend != .stage2_spirv64) { - _ = @import("behavior/bugs/11227.zig"); _ = @import("behavior/bugs/14198.zig"); _ = @import("behavior/export.zig"); } diff --git a/test/behavior/bugs/11227.zig b/test/behavior/bugs/11227.zig deleted file mode 100644 index b65a64c69c..0000000000 --- a/test/behavior/bugs/11227.zig +++ /dev/null @@ -1,11 +0,0 @@ -const std = @import("std"); -const builtin = @import("builtin"); - -fn foo() u32 { - return 11227; -} -const bar = foo; -test "pointer to alias behaves same as pointer to function" { - var a = &bar; - try std.testing.expect(foo() == a()); -} diff --git a/test/behavior/fn.zig b/test/behavior/fn.zig index 859be1efda..3792087426 100644 --- a/test/behavior/fn.zig +++ b/test/behavior/fn.zig @@ -574,3 +574,20 @@ test "pass and return comptime-only types" { try expectEqual(null, S.returnNull(null)); try expectEqual(@as(u0, 0), S.returnUndefined(undefined)); } + +test "pointer to alias behaves same as pointer to function" { + if (builtin.zig_backend == .stage2_arm) return error.SkipZigTest; + if (builtin.zig_backend == .stage2_x86_64) return error.SkipZigTest; + if (builtin.zig_backend == .stage2_aarch64) return error.SkipZigTest; + if (builtin.zig_backend == .stage2_c) return error.SkipZigTest; + if (builtin.zig_backend == .stage2_spirv64) return error.SkipZigTest; + + const S = struct { + fn foo() u32 { + return 11227; + } + const bar = foo; + }; + var a = &S.bar; + try std.testing.expect(S.foo() == a()); +}