aboutsummaryrefslogtreecommitdiff
path: root/test/behavior
diff options
context:
space:
mode:
authorAndrew Kelley <andrew@ziglang.org>2023-05-16 16:09:22 -0700
committerGitHub <noreply@github.com>2023-05-16 16:09:22 -0700
commit958fba0eb715fe9f0b5eddcf53507db03e37ae09 (patch)
tree2505c7bdfd50cebb986201271a42899fce12c21c /test/behavior
parentb754068fbc7492962953068d31386d4c04e37ae5 (diff)
parent6fca3f8b72397d62dd7b2d2e07db843c88428ac3 (diff)
downloadzig-958fba0eb715fe9f0b5eddcf53507db03e37ae09.tar.gz
zig-958fba0eb715fe9f0b5eddcf53507db03e37ae09.zip
Merge pull request #15713 from alichraghi/ali-spirv
spirv: get more behavior tests passing
Diffstat (limited to 'test/behavior')
-rw-r--r--test/behavior/cast.zig10
-rw-r--r--test/behavior/enum.zig5
-rw-r--r--test/behavior/error.zig1
-rw-r--r--test/behavior/maximum_minimum.zig1
-rw-r--r--test/behavior/slice.zig2
-rw-r--r--test/behavior/union.zig1
6 files changed, 4 insertions, 16 deletions
diff --git a/test/behavior/cast.zig b/test/behavior/cast.zig
index d6717032ff..847abc1798 100644
--- a/test/behavior/cast.zig
+++ b/test/behavior/cast.zig
@@ -97,7 +97,6 @@ test "@intToFloat" {
if (builtin.zig_backend == .stage2_aarch64) return error.SkipZigTest; // TODO
if (builtin.zig_backend == .stage2_arm) return error.SkipZigTest; // TODO
if (builtin.zig_backend == .stage2_sparc64) return error.SkipZigTest; // TODO
- if (builtin.zig_backend == .stage2_spirv64) return error.SkipZigTest;
const S = struct {
fn doTheTest() !void {
@@ -155,7 +154,6 @@ test "@floatToInt" {
if (builtin.zig_backend == .stage2_arm) return error.SkipZigTest; // TODO
if (builtin.zig_backend == .stage2_wasm) return error.SkipZigTest; // TODO
if (builtin.zig_backend == .stage2_sparc64) return error.SkipZigTest; // TODO
- if (builtin.zig_backend == .stage2_spirv64) return error.SkipZigTest;
try testFloatToInts();
comptime try testFloatToInts();
@@ -207,16 +205,12 @@ test "implicitly cast indirect pointer to maybe-indirect pointer" {
}
test "@intCast comptime_int" {
- if (builtin.zig_backend == .stage2_spirv64) return error.SkipZigTest;
-
const result = @intCast(i32, 1234);
try expect(@TypeOf(result) == i32);
try expect(result == 1234);
}
test "@floatCast comptime_int and comptime_float" {
- if (builtin.zig_backend == .stage2_spirv64) return error.SkipZigTest;
-
{
const result = @floatCast(f16, 1234);
try expect(@TypeOf(result) == f16);
@@ -1290,14 +1284,10 @@ test "implicit cast *[0]T to E![]const u8" {
var global_array: [4]u8 = undefined;
test "cast from array reference to fn: comptime fn ptr" {
- if (builtin.zig_backend == .stage2_spirv64) return error.SkipZigTest;
-
const f = @ptrCast(*align(1) const fn () callconv(.C) void, &global_array);
try expect(@ptrToInt(f) == @ptrToInt(&global_array));
}
test "cast from array reference to fn: runtime fn ptr" {
- if (builtin.zig_backend == .stage2_spirv64) return error.SkipZigTest;
-
var f = @ptrCast(*align(1) const fn () callconv(.C) void, &global_array);
try expect(@ptrToInt(f) == @ptrToInt(&global_array));
}
diff --git a/test/behavior/enum.zig b/test/behavior/enum.zig
index a9322ec1b2..097caaad19 100644
--- a/test/behavior/enum.zig
+++ b/test/behavior/enum.zig
@@ -27,7 +27,6 @@ const IntToEnumNumber = enum { Zero, One, Two, Three, Four };
test "int to enum" {
if (builtin.zig_backend == .stage2_aarch64) return error.SkipZigTest;
if (builtin.zig_backend == .stage2_sparc64) return error.SkipZigTest; // TODO
- if (builtin.zig_backend == .stage2_spirv64) return error.SkipZigTest;
try testIntToEnumEval(3);
}
@@ -576,8 +575,6 @@ test "enum literal equality" {
}
test "enum literal cast to enum" {
- if (builtin.zig_backend == .stage2_spirv64) return error.SkipZigTest;
-
const Color = enum { Auto, Off, On };
var color1: Color = .Auto;
@@ -874,8 +871,6 @@ test "switch on enum with one member is comptime-known" {
}
test "method call on an enum" {
- if (builtin.zig_backend == .stage2_spirv64) return error.SkipZigTest;
-
const S = struct {
const E = enum {
one,
diff --git a/test/behavior/error.zig b/test/behavior/error.zig
index 7e457c6456..f179739d15 100644
--- a/test/behavior/error.zig
+++ b/test/behavior/error.zig
@@ -916,6 +916,7 @@ test "optional error set return type" {
test "try used in recursive function with inferred error set" {
if (builtin.zig_backend == .stage2_aarch64) return error.SkipZigTest; // TODO
if (builtin.zig_backend == .stage2_arm) return error.SkipZigTest; // TODO
+ if (builtin.zig_backend == .stage2_spirv64) return error.SkipZigTest; // TODO
const Value = union(enum) {
values: []const @This(),
diff --git a/test/behavior/maximum_minimum.zig b/test/behavior/maximum_minimum.zig
index b4d2160713..ecfe596760 100644
--- a/test/behavior/maximum_minimum.zig
+++ b/test/behavior/maximum_minimum.zig
@@ -106,6 +106,7 @@ test "@min/max for floats" {
if (builtin.zig_backend == .stage2_aarch64) return error.SkipZigTest; // TODO
if (builtin.zig_backend == .stage2_arm) return error.SkipZigTest; // TODO
if (builtin.zig_backend == .stage2_sparc64) return error.SkipZigTest; // TODO
+ if (builtin.zig_backend == .stage2_spirv64) return error.SkipZigTest;
const S = struct {
fn doTheTest(comptime T: type) !void {
diff --git a/test/behavior/slice.zig b/test/behavior/slice.zig
index 79fa3b9ce7..3b88636dca 100644
--- a/test/behavior/slice.zig
+++ b/test/behavior/slice.zig
@@ -186,6 +186,8 @@ test "slicing zero length array" {
test "slicing pointer by length" {
if (builtin.zig_backend == .stage2_wasm) return error.SkipZigTest;
+ if (builtin.zig_backend == .stage2_spirv64) return error.SkipZigTest;
+
const array = [_]u8{ 1, 2, 3, 4, 5, 6, 7, 8 };
const ptr: [*]const u8 = @ptrCast([*]const u8, &array);
const slice = ptr[1..][0..5];
diff --git a/test/behavior/union.zig b/test/behavior/union.zig
index c6acfb3f84..26232159b6 100644
--- a/test/behavior/union.zig
+++ b/test/behavior/union.zig
@@ -365,7 +365,6 @@ test "simple union(enum(u32))" {
if (builtin.zig_backend == .stage2_arm) return error.SkipZigTest;
if (builtin.zig_backend == .stage2_aarch64) return error.SkipZigTest;
if (builtin.zig_backend == .stage2_sparc64) return error.SkipZigTest; // TODO
- if (builtin.zig_backend == .stage2_spirv64) return error.SkipZigTest;
var x = MultipleChoice.C;
try expect(x == MultipleChoice.C);