mirror of
https://github.com/byteworksinc/ORCA-C.git
synced 2024-11-17 20:06:49 +00:00
91d33b586d
The main changes made to most tests are: *Declarations always include explicit types, not relying on implicit int. The declaration of main in most test programs is changed to be "int main (void) {...}", adding an explicit return type and a prototype. (There are still some non-prototyped functions, though.) *Functions are always declared before use, either by including a header or by providing a declaration for the specific function. The latter approach is usually used for printf, to avoid requiring ORCA/C to process stdio.h when compiling every test case (which might make test runs noticeably slower). *Make all return statements in non-void functions (e.g. main) return a value. *Avoid some instances of undefined behavior and type errors in printf and scanf calls. Several miscellaneous bugs are also fixed. There are still a couple test cases that intentionally rely on the C89 behavior, to ensure it still works.
48 lines
1.1 KiB
C++
48 lines
1.1 KiB
C++
/* Conformance Test 2.6.0.4: Ensure reserved words within strings are ignored */
|
|
|
|
int printf(const char *, ...);
|
|
|
|
int main (void)
|
|
{
|
|
char s0 [] = "asm";
|
|
char s1 [] = "auto";
|
|
char s2 [] = "break";
|
|
char s3 [] = "case";
|
|
char s4 [] = "char";
|
|
char s5 [] = "continue";
|
|
char s6 [] = "default";
|
|
char s7 [] = "do";
|
|
char s8 [] = "double";
|
|
char s9 [] = "else";
|
|
char s10[] = "enum";
|
|
char s11[] = "extern";
|
|
char s12[] = "float";
|
|
char s13[] = "for";
|
|
char s14[] = "goto";
|
|
char s15[] = "if";
|
|
char s16[] = "int";
|
|
char s17[] = "long";
|
|
char s18[] = "register";
|
|
char s19[] = "return";
|
|
char s20[] = "short";
|
|
char s21[] = "sizeof";
|
|
char s22[] = "static";
|
|
char s23[] = "struct";
|
|
char s24[] = "switch";
|
|
char s25[] = "typedef";
|
|
char s26[] = "union";
|
|
char s27[] = "unsigned";
|
|
char s28[] = "void";
|
|
char s29[] = "while";
|
|
char s30[] = "const";
|
|
char s31[] = "signed";
|
|
char s32[] = "volatile";
|
|
char s33[] = "comp";
|
|
char s34[] = "extended";
|
|
char s35[] = "inline";
|
|
char s36[] = "pascal";
|
|
char s37[] = "segment";
|
|
|
|
printf ("Passed Conformance Test 2.6.0.4\n");
|
|
}
|