test related to issue #1265
This commit is contained in:
51
test/misc/bug1265.c
Normal file
51
test/misc/bug1265.c
Normal file
@@ -0,0 +1,51 @@
|
||||
/* bug #1265 - misadjusted stack from unprototyped function call */
|
||||
|
||||
#include <stdio.h>
|
||||
#include <string.h>
|
||||
|
||||
int failures = 0;
|
||||
|
||||
char str1[10];
|
||||
char str2[10];
|
||||
|
||||
int f2 (int x) { return x == 2345 ? 23 : -1; }
|
||||
|
||||
int main (void) {
|
||||
int x, n;
|
||||
|
||||
sprintf (str1, "%p\n", &x);
|
||||
puts(str1);
|
||||
x = 1234;
|
||||
n = f1 (x);
|
||||
sprintf (str2, "%p\n", &x);
|
||||
puts(str2);
|
||||
|
||||
if (strcmp(str1, str2)) {
|
||||
puts("not equal");
|
||||
failures++;
|
||||
}
|
||||
if (n != 42) {
|
||||
puts("f1 returns wrong value");
|
||||
failures++;
|
||||
}
|
||||
|
||||
sprintf (str1, "%p\n", &x);
|
||||
puts(str1);
|
||||
x = 2345;
|
||||
n = f2 (x);
|
||||
sprintf (str2, "%p\n", &x);
|
||||
puts(str2);
|
||||
|
||||
if (strcmp(str1, str2)) {
|
||||
puts("not equal");
|
||||
failures++;
|
||||
}
|
||||
if (n != 23) {
|
||||
puts("f2 returns wrong value");
|
||||
failures++;
|
||||
}
|
||||
|
||||
return failures;
|
||||
}
|
||||
|
||||
int f1 (int x) { return x == 1234 ? 42 : -1; }
|
||||
Reference in New Issue
Block a user