mirror of
https://github.com/ziglang/zig.git
synced 2024-11-27 15:42:49 +00:00
f26dda2117
Most of this migration was performed automatically with `zig fmt`. There were a few exceptions which I had to manually fix: * `@alignCast` and `@addrSpaceCast` cannot be automatically rewritten * `@truncate`'s fixup is incorrect for vectors * Test cases are not formatted, and their error locations change
19 lines
448 B
Zig
19 lines
448 B
Zig
const builtin = @import("builtin");
|
|
const expect = @import("std").testing.expect;
|
|
|
|
fn get_foo() fn (*u8) usize {
|
|
comptime {
|
|
return struct {
|
|
fn func(ptr: *u8) usize {
|
|
var u = @intFromPtr(ptr);
|
|
return u;
|
|
}
|
|
}.func;
|
|
}
|
|
}
|
|
|
|
test "define a function in an anonymous struct in comptime" {
|
|
const foo = get_foo();
|
|
try expect(foo(@as(*u8, @ptrFromInt(12345))) == 12345);
|
|
}
|