+ else if (strncmp(buff, "#include ", 9) == 0)
+ {
+ char *pe, *p = buff + 9;
+ FILE *ftmp;
+ if (skip_mode) continue;
+ while (*p && (*p == ' ' || *p == '\"')) p++;
+ for (pe = p + strlen(p) - 1; pe > p; pe--)
+ if (isspace(*pe) || *pe == '\"') *pe = 0;
+ else break;
+ ftmp = fopen(p, "r");
+ if (ftmp == NULL) {
+ printf("%i: error: failed to include \"%s\"\n", line, p);
+ return 1;
+ }
+ while (!feof(ftmp))
+ {
+ fgs = fgets(buff, sizeof(buff), ftmp);
+ if (fgs == NULL) break;
+ fputs(buff, fo);
+ }
+ fclose(ftmp);
+ continue;
+ }