mirror of
https://github.com/ziglang/zig.git
synced 2026-02-15 13:58:27 +00:00
upgrade behavior test to stage2 fn ptr semantics
This commit is contained in:
parent
bac132bc8f
commit
83f300218f
@ -1,14 +1,24 @@
|
||||
const builtin = @import("builtin");
|
||||
const std = @import("std");
|
||||
const Random = std.rand.Random;
|
||||
|
||||
const zeroCaseFn = switch (builtin.zig_backend) {
|
||||
.stage1 => fn (*Random, f64) f64,
|
||||
else => *const fn (*Random, f64) f64,
|
||||
};
|
||||
const pdfFn = switch (builtin.zig_backend) {
|
||||
.stage1 => fn (f64) f64,
|
||||
else => *const fn (f64) f64,
|
||||
};
|
||||
|
||||
const ZigTable = struct {
|
||||
r: f64,
|
||||
x: [257]f64,
|
||||
f: [257]f64,
|
||||
|
||||
pdf: fn (f64) f64,
|
||||
pdf: pdfFn,
|
||||
is_symmetric: bool,
|
||||
zero_case: fn (*Random, f64) f64,
|
||||
zero_case: zeroCaseFn,
|
||||
};
|
||||
|
||||
fn ZigTableGen(comptime is_symmetric: bool, comptime r: f64, comptime v: f64, comptime f: fn (f64) f64, comptime f_inv: fn (f64) f64, comptime zero_case: fn (*Random, f64) f64) ZigTable {
|
||||
@ -56,7 +66,11 @@ const NormalDist = blk: {
|
||||
};
|
||||
|
||||
test "bug 920 fixed" {
|
||||
if (@import("builtin").zig_backend != .stage1) return error.SkipZigTest; // TODO
|
||||
if (builtin.zig_backend == .stage2_wasm) return error.SkipZigTest; // TODO
|
||||
if (builtin.zig_backend == .stage2_c) return error.SkipZigTest; // TODO
|
||||
if (builtin.zig_backend == .stage2_x86_64) return error.SkipZigTest; // TODO
|
||||
if (builtin.zig_backend == .stage2_aarch64) return error.SkipZigTest; // TODO
|
||||
if (builtin.zig_backend == .stage2_arm) return error.SkipZigTest; // TODO
|
||||
|
||||
const NormalDist1 = blk: {
|
||||
break :blk ZigTableGen(true, norm_r, norm_v, norm_f, norm_f_inv, norm_zero_case);
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user