smarter and error test
This commit is contained in:
parent
bf7f456967
commit
49ed7c5df5
37 changed files with 83 additions and 36 deletions
34
test/misc/escape.c
Normal file
34
test/misc/escape.c
Normal file
|
@ -0,0 +1,34 @@
|
|||
int getchar();
|
||||
int putchar(int ch);
|
||||
int fprintf(void* file, char* format, ...);
|
||||
extern void* stdout;
|
||||
|
||||
|
||||
int main() {
|
||||
char ch = 0["\t\r\""];;
|
||||
while ((ch = getchar()) != -1) {
|
||||
if (ch == '\\') {
|
||||
ch = getchar();
|
||||
if (ch == 'n') {
|
||||
ch = '\n';
|
||||
} else if (ch == 't') {
|
||||
ch = '\t';
|
||||
} else if (ch == 'r') {
|
||||
ch = '\r';
|
||||
} else if (ch == '0') {
|
||||
ch = '\0';
|
||||
} else if (ch == '\\') {
|
||||
ch = '\\';
|
||||
} else if (ch == '\'') {
|
||||
ch = '\'';
|
||||
} else if (ch == '\"') {
|
||||
ch = '\"';
|
||||
} else {
|
||||
fprintf(stdout, "unexpected escaped character: '\\%c'\n", ch);
|
||||
return 1;
|
||||
}
|
||||
}
|
||||
putchar(ch);
|
||||
}
|
||||
return 0;
|
||||
}
|
1
test/misc/escape.in
Normal file
1
test/misc/escape.in
Normal file
|
@ -0,0 +1 @@
|
|||
hello\n\tworld\u
|
3
test/misc/escape.out
Normal file
3
test/misc/escape.out
Normal file
|
@ -0,0 +1,3 @@
|
|||
hello
|
||||
worldunexpected escaped character: '\u'
|
||||
1
|
41
test/misc/overflow.c
Normal file
41
test/misc/overflow.c
Normal file
|
@ -0,0 +1,41 @@
|
|||
int printf(char* format, ...);
|
||||
|
||||
|
||||
enum {
|
||||
a = 1
|
||||
};
|
||||
|
||||
int get_20() {
|
||||
return (a+(a+(a+(a+(a+(a+(a+(a+(a+(a+(a+(a+(a+(a+(a+(a+(a+(a+(a+(a+(- -0)))))))))))))))))))));
|
||||
}
|
||||
|
||||
void dummy(int a0, int a1, int a2, int a3, int a4, int a5, int a6, int a7) {
|
||||
a0 += a1;
|
||||
printf("%d\n", a0);
|
||||
a0 -= a1;
|
||||
printf("%d\n", a0);
|
||||
a0 *= a1;
|
||||
printf("%d\n", a0);
|
||||
a0 /= a1;
|
||||
printf("%d\n", a0);
|
||||
a0 %= a1;
|
||||
printf("%d\n", a0);
|
||||
a0 &= a1;
|
||||
printf("%d\n", a0);
|
||||
a0 |= a1;
|
||||
printf("%d\n", a0);
|
||||
a0 ^= a2;
|
||||
printf("%d\n", a0);
|
||||
a0 <<= a1;
|
||||
printf("%d\n", a0);
|
||||
a0 >>= a1;
|
||||
printf("%d\n", a0);
|
||||
}
|
||||
|
||||
|
||||
int main() {
|
||||
char placeholder[4096];
|
||||
int a = 1;
|
||||
dummy((a+(a+(a+(a+(a+(a+(a+(a+(a+(a+(a+(a+(a+(a+(a+(a+(a+(a+(a+(a+(! !0))))))))))))))))))))), 3, a, a, a, a, a, a);
|
||||
return (a=(a+(a+(a+(a+(a+(a+(a+(a+(a+(a+(a+(a+(a+(a+(a+(a+(a+(a+(a+(a+(~ ~0)))))))))))))))))))))), (a = +a);
|
||||
}
|
0
test/misc/overflow.in
Normal file
0
test/misc/overflow.in
Normal file
11
test/misc/overflow.out
Normal file
11
test/misc/overflow.out
Normal file
|
@ -0,0 +1,11 @@
|
|||
23
|
||||
20
|
||||
60
|
||||
20
|
||||
2
|
||||
2
|
||||
3
|
||||
2
|
||||
16
|
||||
2
|
||||
20
|
Loading…
Add table
Add a link
Reference in a new issue