Revert "Don't generate automatic include guards"

This reverts commit 05e34102d4949a7992f836db13085a85dea7c82c.

Conflicts:
	source/compiler/sc2.c
This commit is contained in:
Zeex 2014-03-29 17:41:24 +07:00
parent a272a7e43e
commit ed8175dab5

View File

@ -231,6 +231,8 @@ static void check_empty(const unsigned char *lptr)
static void doinclude(int silent)
{
char name[_MAX_PATH];
char symname[sNAMEMAX];
char *ptr;
char c;
int i, result;
@ -260,9 +262,27 @@ static void doinclude(int silent)
if (c!='\0')
check_empty(lptr+1); /* verify that the rest of the line is whitespace */
result=plungefile(name,(c!='>'),TRUE);
if (!result && !silent)
error(100,name); /* cannot read from ... (fatal error) */
/* create a symbol from the name of the include file; this allows the system
* to test for multiple inclusions
*/
strcpy(symname,"_inc_");
if ((ptr=strrchr(name,DIRSEP_CHAR))!=NULL)
strlcat(symname,ptr+1,sizeof symname);
else
strlcat(symname,name,sizeof symname);
if (find_symbol(&glbtab,symname,fcurrent,-1,NULL)==NULL) {
/* constant is not present, so this file has not been included yet */
/* Include files between "..." or without quotes are read from the current
* directory, or from a list of "include directories". Include files
* between <...> are only read from the list of include directories.
*/
result=plungefile(name,(c!='>'),TRUE);
if (result)
add_constant(symname,1,sGLOBAL,0);
else if (!silent)
error(100,name); /* cannot read from ... (fatal error) */
} /* if */
}
/* readline