authorgravatar for benjamin.feng@glassdoor.comBenjamin Feng <benjamin.feng@glassdoor.com> 2019-12-06 16:03:15-06:00
committergravatar for benjamin.feng@glassdoor.comBenjamin Feng <benjamin.feng@glassdoor.com> 2019-12-06 17:27:11-06:00
loge91522b875b72cc3990fd4086a331ab63ac70dc8
tree6c3fac3674bf4835c336d735a64c6575aaeec218
parent5a004ed834b62a15ebf1649856580baeb68501fa

Add back comptime check for wasm


1 files changed, 7 insertions(+), 1 deletions(-)

lib/std/heap.zig+7-1
......@@ -252,6 +252,12 @@ extern fn @"llvm.wasm.memory.size.i32"(u32) u32;
252252extern fn @"llvm.wasm.memory.grow.i32"(u32, u32) i32;
253253
254254const WasmPageAllocator = struct {
255 comptime {
256 if (!std.Target.current.isWasm()) {
257 @compileError("WasmPageAllocator is only available for wasm32 arch");
258 }
259 }
260
255261 const PageStatus = enum(u1) {
256262 used = 0,
257263 free = 1,
......@@ -797,7 +803,7 @@ test "c_allocator" {
797803}
798804
799805test "WasmPageAllocator internals" {
800 if (std.Target.current.isWasm()) {
806 if (comptime std.Target.current.isWasm()) {
801807 const none_free = WasmPageAllocator.PageStatus.none_free;
802808 std.debug.assert(none_free == WasmPageAllocator.conventional.data[0]); // Passes if this test runs first
803809 std.debug.assert(!WasmPageAllocator.extended.isInitialized()); // Passes if this test runs first