38 lines
817 B
C
38 lines
817 B
C
void do_tests() {
|
|
mixed code;
|
|
|
|
// array constants
|
|
code = __TREE__ ( sizeof( ({ 1, 3, 3 }) ) );
|
|
ASSERT(same(code, ({ "number", 3 })));
|
|
|
|
code = __TREE__ ( ({ 1, 3, 3 })[0] );
|
|
ASSERT(same(code, ({ "number", 1 })));
|
|
|
|
code = __TREE__ ( ({ 1, 4, 9 })[<2] );
|
|
ASSERT(same(code, ({ "number", 4 })));
|
|
|
|
code = __TREE__ { int i; for (; i < 5; i++) ; };
|
|
ASSERT(same(code, ({
|
|
"two values", 0, ({
|
|
"loop", 1, 0, ({
|
|
"opcode_2", "loop_cond_number", 1, 5
|
|
}), ({
|
|
"opcode_1", "loop_incr", 1
|
|
}) }) }) ));
|
|
|
|
code = __TREE__( !code ? 1 : 2 );
|
|
ASSERT(same(code, ({
|
|
"if", ({
|
|
"number", 2
|
|
}), ({
|
|
"number", 1
|
|
}), ({
|
|
"opcode_1", "local", 0
|
|
}) }) ));
|
|
|
|
ASSERT(5/3 == 1);
|
|
ASSERT(1/8.0 == 0.125);
|
|
ASSERT(1.0/2 == 0.5);
|
|
ASSERT(1.0/2.0 == 0.5);
|
|
}
|