2 !!DESCRIPTION!! C-Manual Chapter 2.2: identifiers (names)
3 !!ORIGIN!! LCC 4.1 Testsuite
4 !!LICENCE!! own, freely distributeable for non-profit. read CPYRIGHT.LCC
10 int cbits; /* No. of bits per char */
12 int sbits; /* short */
14 int ubits; /* unsigned */
15 int fbits; /* float */
16 int dbits; /* double */
18 float fprec; /* Smallest number that can be */
19 float dprec; /* significantly added to 1. */
21 int flgs; /* Print return codes, by section */
22 int flgm; /* Announce machine dependencies */
23 int flgd; /* give explicit diagnostics */
24 int flgl; /* Report local return codes. */
25 int rrc; /* recent return code */
26 int crc; /* Cumulative return code */
27 char rfs[8]; /* Return from section */
31 int ubits; /* unsigned */
32 int fbits; /* float */
33 int dbits; /* double */
35 float fprec; /* Smallest number that can be */
36 float dprec; /* significantly added to 1. */
38 int flgs; /* Print return codes, by section */
39 int flgm; /* Announce machine dependencies */
40 int flgd; /* give explicit diagnostics */
41 int flgl; /* Report local return codes. */
42 int rrc; /* recent return code */
43 int crc; /* Cumulative return code */
44 char rfs[8]; /* Return from section */
47 2.2 Identifiers (Names)
50 #ifndef NO_OLD_FUNC_DECL
55 int s22(struct defs *pd0)
62 static char s22er[] = "s22,er%d\n";
63 static char qs22[8] = "s22 ";
71 while (*pt++ = *ps++);
73 /* An identifier is a sequence of letters and digits;
74 the first character must be a letter. The under-
75 score _ counts as a letter. */
81 if(a+_+_234+a234 != 10) {
83 if(pd0->flgd != 0) printf(s22er,1);
86 /* Upper and lower case letters are different. */
91 if (pd0->flgd != 0) printf(s22er,4);
97 /*********************************************************************************************
98 the main loop that launches the sections
99 *********************************************************************************************/
101 #define cq_sections 1
103 #ifndef NO_TYPELESS_STRUCT_PTR
104 int section(int j,struct* pd0){
106 int section(int j,void* pd0){
109 case 0: return s22(pd0);
114 C REFERENCE MANUAL (main)
117 #ifndef NO_OLD_FUNC_DECL
123 int main(int n,char **args) {
127 static struct defs d0, *pd0;
129 d0.flgs = 1; /* These flags dictate */
130 d0.flgm = 1; /* the verbosity of */
131 d0.flgd = 1; /* the program. */
136 for (j=0; j<cq_sections; j++) {
137 d0.rrc=section(j,pd0);
138 d0.crc=d0.crc+d0.rrc;
139 if(d0.flgs != 0) printf("Section %s returned %d.\n",d0.rfs,d0.rrc);
142 if(d0.crc == 0) printf("\nNo errors detected.\n");
143 else printf("\nFailed.\n");