mirror of
https://github.com/SEPPDROID/Digital-Research-Source-Code.git
synced 2025-10-24 17:04:19 +00:00
Upload
Digital Research
This commit is contained in:
@@ -0,0 +1,83 @@
|
||||
/*
|
||||
Copyright 1983
|
||||
Alcyon Corporation
|
||||
8716 Production Ave.
|
||||
San Diego, Ca. 92121
|
||||
*/
|
||||
|
||||
char *version = "@(#)test9.c 1.3 12/12/83";
|
||||
|
||||
/*
|
||||
the following code is a battery of tests directed
|
||||
'against' the C compiler. these tests reflect difficulties
|
||||
dicovered in prior compiler releases.
|
||||
|
||||
cr
|
||||
*/
|
||||
|
||||
char array[33000]; /* test for array size > 32k bytes */
|
||||
|
||||
struct {
|
||||
int a;
|
||||
char b[7];
|
||||
long d;
|
||||
} s[5] = { /* test structure array initialization */
|
||||
1, "one", 10,
|
||||
-32768, "two", 010,
|
||||
0, "three", 0x10,
|
||||
32767, "four h", 1000000000,
|
||||
-1, "five", -99999999
|
||||
};
|
||||
|
||||
main() {
|
||||
int i = 100;
|
||||
register int ri = 1000;
|
||||
long l;
|
||||
register long rl;
|
||||
char *p1, *p2;
|
||||
int *pi;
|
||||
|
||||
if ((array[32999] = 'z') == 'z')
|
||||
printf("array[32999] is accessible\n");
|
||||
else
|
||||
printf("can't access array[32999]\n");
|
||||
pi = &array[0];
|
||||
pi += 0x4000L;
|
||||
if (pi != &array[0x8000L]) error(0x1);
|
||||
printf("1 = %d, ", s[0].a);
|
||||
printf("-32768 = %d, ", s[1].a);
|
||||
printf("0 = %d, ", s[2].a);
|
||||
printf("32767 = %d, ", s[3].a);
|
||||
printf("-1 = %d\n", s[4].a);
|
||||
printf("one = [%s], ", s[0].b);
|
||||
printf("two = [%s], ", s[1].b);
|
||||
printf("three = [%s], ", s[2].b);
|
||||
printf("four h = [%s], ", s[3].b);
|
||||
printf("five = [%s]\n", s[4].b);
|
||||
printf("10 decimal = %ld, ", s[0].d);
|
||||
printf("10 octal = %lo, ", s[1].d);
|
||||
printf("10 hex = %lx\n", s[2].d);
|
||||
printf("100000000 = %ld, ", s[3].d);
|
||||
printf("-99999999 = %ld, ", s[4].d);
|
||||
|
||||
l = i * i; /* test assembler code (long=int*int) */
|
||||
rl = i * i; /* ditto */
|
||||
|
||||
rl = i * ri / i; /* test sign extend of 32-bit product */
|
||||
|
||||
i = 4;
|
||||
printf("-4 / i = %d, ",-4/i);
|
||||
printf("-4 / 4 = %d\n",-4/4);
|
||||
|
||||
p1 = 0;
|
||||
p2 = 4;
|
||||
printf("(0-4)ptr - ptr = (long)%ld, ", p1-p2);
|
||||
printf("(0-4)ptr - ptr = (int)%d\n",(int)(p1-p2));
|
||||
}
|
||||
|
||||
error(enum)
|
||||
int enum;
|
||||
{
|
||||
printf("error - %d\n",enum);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user