aboutsummaryrefslogtreecommitdiff
path: root/test
diff options
context:
space:
mode:
authorAndrew Kelley <andrew@ziglang.org>2019-08-13 11:39:32 -0400
committerAndrew Kelley <andrew@ziglang.org>2019-08-13 11:39:32 -0400
commit8a9289996ab8ed7da2f7e0c6df9fe2bd9a3e0b7b (patch)
tree28aa8644ce1ea7c3756c88a9948ad2d11a9b24c8 /test
parent24d5ec078355d68e3f1002220fd284b1ff02a465 (diff)
parent98183e47436699f6e5eab200061c46eec342806e (diff)
downloadzig-8a9289996ab8ed7da2f7e0c6df9fe2bd9a3e0b7b.tar.gz
zig-8a9289996ab8ed7da2f7e0c6df9fe2bd9a3e0b7b.zip
Merge remote-tracking branch 'origin/master' into rewrite-coroutines
Diffstat (limited to 'test')
-rw-r--r--test/compile_errors.zig8
-rw-r--r--test/stage1/behavior/cast.zig7
-rw-r--r--test/stage1/behavior/enum.zig11
3 files changed, 17 insertions, 9 deletions
diff --git a/test/compile_errors.zig b/test/compile_errors.zig
index 835f968e23..d3d2685f1b 100644
--- a/test/compile_errors.zig
+++ b/test/compile_errors.zig
@@ -3293,14 +3293,6 @@ pub fn addCases(cases: *tests.CompileErrorContext) void {
);
cases.add(
- "incompatible number literals",
- \\const x = 2 == 2.0;
- \\export fn entry() usize { return @sizeOf(@typeOf(x)); }
- ,
- "tmp.zig:1:11: error: integer value 2 cannot be implicitly casted to type 'comptime_float'",
- );
-
- cases.add(
"missing function call param",
\\const Foo = struct {
\\ a: i32,
diff --git a/test/stage1/behavior/cast.zig b/test/stage1/behavior/cast.zig
index c243f18088..04c7fa606f 100644
--- a/test/stage1/behavior/cast.zig
+++ b/test/stage1/behavior/cast.zig
@@ -508,7 +508,7 @@ test "peer type resolution: unreachable, null, slice" {
}
test "peer type resolution: unreachable, error set, unreachable" {
- const Error = error {
+ const Error = error{
FileDescriptorAlreadyPresentInSet,
OperationCausesCircularLoop,
FileDescriptorNotRegistered,
@@ -529,3 +529,8 @@ test "peer type resolution: unreachable, error set, unreachable" {
};
expect(transformed_err == error.SystemResources);
}
+
+test "implicit cast comptime_int to comptime_float" {
+ comptime expect(comptime_float(10) == f32(10));
+ expect(2 == 2.0);
+}
diff --git a/test/stage1/behavior/enum.zig b/test/stage1/behavior/enum.zig
index 51f4f0e196..d7d34aec88 100644
--- a/test/stage1/behavior/enum.zig
+++ b/test/stage1/behavior/enum.zig
@@ -982,3 +982,14 @@ test "enum literal casting to tagged union" {
else => @panic("fail"),
}
}
+
+test "enum with one member and custom tag type" {
+ const E = enum(u2) {
+ One,
+ };
+ expect(@enumToInt(E.One) == 0);
+ const E2 = enum(u2) {
+ One = 2,
+ };
+ expect(@enumToInt(E2.One) == 2);
+}