mirror of
https://github.com/c3lang/c3c.git
synced 2026-02-27 12:01:16 +00:00
Update tests to (Foo) { ... } syntax.
This commit is contained in:
@@ -25,7 +25,7 @@ fn void test_bitops() @test
|
||||
|
||||
Foo f4 = (f1 | ~f2) ^ f3;
|
||||
assert(f4.a == false && f4.b == true);
|
||||
Foo f5 = Foo { true, false } | Foo { false, true };
|
||||
Foo f5 = (Foo) { true, false } | (Foo) { false, true };
|
||||
assert(f5.a == true && f5.b == true);
|
||||
|
||||
f5 &= f2;
|
||||
@@ -38,7 +38,7 @@ fn void test_bitops() @test
|
||||
assert(b3.z == true && b3.w == false && b3.gh == false);
|
||||
b3 = ~b3;
|
||||
assert(b3.z == false && b3.w == true && b3.gh == true);
|
||||
b3 ^= Bar { true, true, false };
|
||||
b3 ^= (Bar) { true, true, false };
|
||||
assert(b3.z == true && b3.w == false && b3.gh == true);
|
||||
}
|
||||
|
||||
|
||||
@@ -25,7 +25,7 @@ fn void test_bitops() @test
|
||||
|
||||
Foo f4 = (f1 | ~f2) ^ f3;
|
||||
assert(f4.a == false && f4.b == true);
|
||||
Foo f5 = Foo { true, false } | Foo { false, true };
|
||||
Foo f5 = (Foo) { true, false } | (Foo) { false, true };
|
||||
assert(f5.a == true && f5.b == true);
|
||||
|
||||
f5 &= f2;
|
||||
@@ -38,7 +38,7 @@ fn void test_bitops() @test
|
||||
assert(b3.z == true && b3.w == false && b3.gh == false);
|
||||
b3 = ~b3;
|
||||
assert(b3.z == false && b3.w == true && b3.gh == true);
|
||||
b3 ^= Bar { true, true, false };
|
||||
b3 ^= (Bar) { true, true, false };
|
||||
assert(b3.z == true && b3.w == false && b3.gh == true);
|
||||
}
|
||||
|
||||
@@ -53,7 +53,7 @@ fn void test_bitops_const() @test
|
||||
|
||||
const Foo F4 = (F1 | ~F2) ^ F3;
|
||||
assert(F4.a == false && F4.b == true);
|
||||
const Foo F5 = Foo { true, false } | Foo { false, true };
|
||||
const Foo F5 = (Foo) { true, false } | (Foo) { false, true };
|
||||
assert(F5.a == true && F5.b == true);
|
||||
|
||||
const Bar B1 = { true, true, true };
|
||||
|
||||
@@ -82,7 +82,7 @@ fn void negate()
|
||||
Flags flags;
|
||||
flags = ~flags;
|
||||
assert(~0 == (int)flags);
|
||||
flags = ~Flags {};
|
||||
flags = ~(Flags){};
|
||||
assert(3 == (int)flags);
|
||||
const Flags FLAGS = {.flag1 };
|
||||
flags = ~FLAGS;
|
||||
|
||||
@@ -5,7 +5,7 @@ fn void to_arr()
|
||||
int[] x = { 1, 2, 3, 4, 5 };
|
||||
int z = 2;
|
||||
int[2] y = x[z:2];
|
||||
assert(y == int[2]{ 3, 4 });
|
||||
assert(y == {3, 4});
|
||||
}
|
||||
|
||||
fn void to_vec()
|
||||
|
||||
@@ -5,8 +5,8 @@ fn void slice_bytes()
|
||||
char[4] $a = x'aabbccdd';
|
||||
var $b = $a[1..2];
|
||||
char[2] y = $b;
|
||||
assert($b == char[] { 187, 204 });
|
||||
assert(y == char[2] { 187, 204 });
|
||||
assert($b == (char[]){187, 204});
|
||||
assert(y == {187, 204 });
|
||||
}
|
||||
|
||||
fn void slice_string()
|
||||
@@ -28,11 +28,11 @@ fn void slice_untyped()
|
||||
{
|
||||
var $v = { 1, "hello", 3 };
|
||||
int[1] v = $v[0:1];
|
||||
assert(v == int[1] { 1 });
|
||||
assert(v == { 1 });
|
||||
int[1] v2 = $v[2:1];
|
||||
assert(v2 == int[1] { 3 });
|
||||
assert(v2 == { 3 });
|
||||
String[1] v3 = $v[1:1];
|
||||
assert(v3 == String[1] { "hello" });
|
||||
assert(v3 == { "hello" });
|
||||
int[] v4 = $v[0:1];
|
||||
assert(v4 == int[] { 1 });
|
||||
assert(v4 == { 1 });
|
||||
}
|
||||
|
||||
@@ -12,7 +12,7 @@ fn void ordinals()
|
||||
assert(z.ordinal == 0);
|
||||
$assert Foo.ABC.ordinal == 1;
|
||||
$assert Foo.CDE.ordinal == 2;
|
||||
$assert (Foo{}).ordinal == 0;
|
||||
$assert (Foo){}.ordinal == 0;
|
||||
Foo x = Foo.CDE;
|
||||
assert(x.ordinal == 2);
|
||||
x = Foo.ABC;
|
||||
|
||||
@@ -5,12 +5,12 @@ fn void test_simple() @test
|
||||
int[5] a = { 1, 2, 3, 4, 5 };
|
||||
void*[<2>] x = { &a[0], &a[4] };
|
||||
int*[<2>] y = x;
|
||||
int[<2>] result = mem::@gather_aligned(y, bool[<2>] { true, false }, int[<2>]{ 10, 20 }, 4);
|
||||
int[<2>] result = mem::@gather_aligned(y, (bool[<2>]) { true, false }, (int[<2>]){ 10, 20 }, 4);
|
||||
assert(result == { 1, 20});
|
||||
result = mem::gather(y, bool[<2>] { true, false }, int[<2>]{ 10, 20 });
|
||||
result = mem::gather(y, (bool[<2>]) { true, false }, (int[<2>]){ 10, 20 });
|
||||
assert(result == { 1, 20});
|
||||
mem::@scatter_aligned(y, int[<2>]{ 66, 77 }, bool[<2>] { false, true } , 4);
|
||||
assert(a == int[5]{ 1, 2, 3, 4, 77});
|
||||
mem::scatter(y, int[<2>]{ 88, 99 }, bool[<2>] { true, false });
|
||||
assert(a == int[5]{ 88, 2, 3, 4, 77});
|
||||
mem::@scatter_aligned(y, (int[<2>]){ 66, 77 }, (bool[<2>]) { false, true } , 4);
|
||||
assert(a == (int[5]){ 1, 2, 3, 4, 77});
|
||||
mem::scatter(y, (int[<2>]){ 88, 99 }, (bool[<2>]) { true, false });
|
||||
assert(a == (int[5]){ 88, 2, 3, 4, 77});
|
||||
}
|
||||
|
||||
@@ -2,27 +2,27 @@ import std;
|
||||
fn void masked_load() @test
|
||||
{
|
||||
long[<4>] val = { 1, 3, 5, 8 };
|
||||
long[<4>] res = mem::masked_load(&val, { true, false, true, false }, long[<4>] { 100, 200, 300, 400 });
|
||||
long[<4>] res = mem::masked_load(&val, { true, false, true, false }, (long[<4>]){ 100, 200, 300, 400 });
|
||||
assert(res == { 1, 200, 5, 400 });
|
||||
}
|
||||
|
||||
fn void masked_load_aligned() @test
|
||||
{
|
||||
long[<4>] val = { 1, 3, 5, 8 };
|
||||
long[<4>] res = mem::@masked_load_aligned(&val, { true, false, true, false }, long[<4>] { 100, 200, 300, 400 }, 8);
|
||||
long[<4>] res = mem::@masked_load_aligned(&val, { true, false, true, false }, (long[<4>]) { 100, 200, 300, 400 }, 8);
|
||||
assert(res == { 1, 200, 5, 400 });
|
||||
}
|
||||
|
||||
fn void masked_store() @test
|
||||
{
|
||||
long[<4>] val = { 1, 3, 5, 8 };
|
||||
mem::masked_store(&val, long[<4>] { 11, 22, 33, 44 }, { true, false, false, true });
|
||||
mem::masked_store(&val, (long[<4>]){11, 22, 33, 44}, { true, false, false, true });
|
||||
assert(val == { 11, 3, 5, 44 });
|
||||
}
|
||||
|
||||
fn void masked_store_aligned() @test
|
||||
{
|
||||
long[<4>] val = { 1, 3, 5, 8 };
|
||||
mem::@masked_store_aligned(&val, long[<4>] { 11, 22, 33, 44 }, { true, false, false, true }, 8);
|
||||
mem::@masked_store_aligned(&val, (long[<4>]){11, 22, 33, 44}, { true, false, false, true }, 8);
|
||||
assert(val == { 11, 3, 5, 44 });
|
||||
}
|
||||
|
||||
@@ -5,5 +5,5 @@ fn void assign_slice()
|
||||
int[8] a;
|
||||
a[2..3] = { 1, 2 };
|
||||
a[5..7] = 5;
|
||||
assert(a == int[8]{ 0, 0, 1, 2, 0, 5, 5, 5});
|
||||
assert(a == (int[8]){ 0, 0, 1, 2, 0, 5, 5, 5});
|
||||
}
|
||||
@@ -4,8 +4,8 @@ fn void test_swizzle()
|
||||
{
|
||||
int[<4>] a = { 1, 2, 3, 4 };
|
||||
int[<4>] b = { 100, 1000, 10000, 100000 };
|
||||
assert($$swizzle(a, 0, 1, 1, 3) == int[<4>] { 1, 2, 2, 4 });
|
||||
assert($$swizzle2(a, b, 0, 1, 4, 6, 2) == int[<5>] { 1, 2, 100, 10000, 3 });
|
||||
assert($$swizzle(a, 0, 1, 1, 3) == (int[<4>]) { 1, 2, 2, 4 });
|
||||
assert($$swizzle2(a, b, 0, 1, 4, 6, 2) == (int[<5>]) { 1, 2, 100, 10000, 3 });
|
||||
}
|
||||
|
||||
fn void swizzle_builtin()
|
||||
|
||||
@@ -30,6 +30,6 @@ fn void pointer_add_sub_diff()
|
||||
assert(w == { -1, 2 });
|
||||
int*[<2>] zz = y - (y - yy);
|
||||
assert(zz[0] == &a[1] && zz[1] == &a[2]);
|
||||
int[?]*[<2>] g = int[2]*[<2>] { null, null };
|
||||
int[?]*[<?>] g2 = int[2]*[<2>] { null, null };
|
||||
int[?]*[<2>] g = (int[2]*[<2>]) { null, null };
|
||||
int[?]*[<?>] g2 = (int[2]*[<2>]) { null, null };
|
||||
}
|
||||
@@ -9,11 +9,11 @@ fn void vector_array_inferred()
|
||||
int[<?>] z = x;
|
||||
int[<?>] w = y;
|
||||
double[<2>] ww = x;
|
||||
assert((int[<2>])y == int[<2>]{ 4, 7});
|
||||
assert((int[<2>])y1 == int[<2>] { 4, 7 });
|
||||
assert((int[<2>])y2 == int[<2>] { 4, 7 });
|
||||
assert(z == int[<2>] { 4, 7 });
|
||||
assert(w == int[<2>] { 4, 7 });
|
||||
assert((int[<2>])y == { 4, 7});
|
||||
assert((int[<2>])y1 == { 4, 7 });
|
||||
assert((int[<2>])y2 == { 4, 7 });
|
||||
assert(z == { 4, 7 });
|
||||
assert(w == { 4, 7 });
|
||||
}
|
||||
|
||||
fn void vector_convert_slice()
|
||||
@@ -26,6 +26,6 @@ fn void vector_convert_slice()
|
||||
fn void vector_convert_bool()
|
||||
{
|
||||
bool[<2>] a = { true, false };
|
||||
assert(int[<2>] { -1, 0 } == (int[<2>])a);
|
||||
assert(float[<2>] { 1.0, 0 } == (float[<2>])a);
|
||||
assert({ -1, 0 } == (int[<2>])a);
|
||||
assert({ 1.0, 0 } == (float[<2>])a);
|
||||
}
|
||||
@@ -6,8 +6,8 @@ fn void test_int_mod() @test
|
||||
int[<2>] z = { 3, 5 };
|
||||
assert(y % z == { 1, 4 });
|
||||
assert(y / z == { 3, 19 });
|
||||
assert(int[<2>]{ 10, 99 } % int[<2>]{ 3, 5 } == { 1, 4 });
|
||||
assert(int[<2>]{ 10, 99 } / int[<2>]{ 3, 5 } == { 3, 19 });
|
||||
assert((int[<2>]){ 10, 99 } % { 3, 5 } == { 1, 4 });
|
||||
assert((int[<2>]){ 10, 99 } / { 3, 5 } == { 3, 19 });
|
||||
}
|
||||
|
||||
fn void test_conv() @test
|
||||
@@ -26,7 +26,7 @@ fn void test_conv() @test
|
||||
bool[<2>] b = { true, false };
|
||||
int[<2>] gh = b;
|
||||
assert(gh == { -1, 0 });
|
||||
var $k = bool[<2>] { true, false };
|
||||
var $k = (bool[<2>]){ true, false };
|
||||
var $gh = (int[<2>])$k;
|
||||
$assert $gh[0] == -1;
|
||||
var $gh2 = (char[<2>])$gh;
|
||||
|
||||
Reference in New Issue
Block a user