From 0b76311b0750382b845412117abae52b3252f497 Mon Sep 17 00:00:00 2001 From: Rejean Loyer Date: Thu, 29 Aug 2013 11:18:40 -0400 Subject: [PATCH] ecc; added source file name to 'code generated from ec source file' comment at top of generated .c files. --- compiler/bootstrap/ecc/bootstrap/ecc.c | 15 ++++++--------- compiler/ecc/ecc.ec | 16 +++++++--------- 2 files changed, 13 insertions(+), 18 deletions(-) diff --git a/compiler/bootstrap/ecc/bootstrap/ecc.c b/compiler/bootstrap/ecc/bootstrap/ecc.c index 468e754..59cbb21 100644 --- a/compiler/bootstrap/ecc/bootstrap/ecc.c +++ b/compiler/bootstrap/ecc/bootstrap/ecc.c @@ -1094,6 +1094,7 @@ if((cppOutput = __ecereNameSpace__ecere__sys__DualPipeOpen((((unsigned int)(0x1) { char impFile[797]; struct ImportedModule * module; +char sourceFileName[274]; char mainModuleName[274]; int exitCode; struct __ecereNameSpace__ecere__sys__OldList * ast; @@ -1102,7 +1103,8 @@ struct __ecereNameSpace__ecere__com__Instance * fileInput = __ecereNameSpace__ec SetFileInput(fileInput); __ecereMethod___ecereNameSpace__ecere__sys__OldList_Add(&imports, (mainModule = __ecereNameSpace__ecere__com__eInstance_New(__ecereClass_ModuleImport))); SetMainModule(mainModule); -__ecereNameSpace__ecere__sys__GetLastDirectory(GetSourceFile(), mainModuleName); +__ecereNameSpace__ecere__sys__GetLastDirectory(GetSourceFile(), sourceFileName); +strcpy(mainModuleName, sourceFileName); __ecereNameSpace__ecere__sys__StripExtension(mainModuleName); module = __extension__ ({ struct ImportedModule * __ecereInstance1 = __ecereNameSpace__ecere__com__eInstance_New(__ecereClass_ImportedModule); @@ -1126,7 +1128,7 @@ char symFile[274]; char symLocation[797]; struct ImportedModule * module, * next; -__ecereNameSpace__ecere__sys__GetLastDirectory(GetSourceFile(), symFile); +strcpy(symFile, sourceFileName); __ecereNameSpace__ecere__sys__ChangeExtension(symFile, "sym", symFile); strcpy(symLocation, GetSymbolsDir()); __ecereNameSpace__ecere__sys__PathCat(symLocation, symFile); @@ -1165,13 +1167,8 @@ ProcessInstantiations(); ProcessMemberAccess(); ProcessInstanceDeclarations(); strcpy(impFile, GetSymbolsDir()); -{ -char fileName[274]; - -__ecereNameSpace__ecere__sys__GetLastDirectory(GetSourceFile(), fileName); -__ecereNameSpace__ecere__sys__PathCat(impFile, fileName); +__ecereNameSpace__ecere__sys__PathCat(impFile, sourceFileName); __ecereNameSpace__ecere__sys__ChangeExtension(impFile, "imp", impFile); -} if(imports.first) OutputImports(impFile); if(!((struct __ecereNameSpace__ecere__com__Application *)(((char *)this + structSize_Module)))->exitCode) @@ -1180,7 +1177,7 @@ struct __ecereNameSpace__ecere__com__Instance * output = __ecereNameSpace__ecere if(output) { -__ecereMethod___ecereNameSpace__ecere__sys__File_Printf(output, "/* Code generated from eC source file. */\n"); +__ecereMethod___ecereNameSpace__ecere__sys__File_Printf(output, "/* Code generated from eC source file: %s */\n", sourceFileName); __ecereMethod___ecereNameSpace__ecere__sys__File_Printf(output, "#if defined(__GNUC__)\n"); __ecereMethod___ecereNameSpace__ecere__sys__File_Printf(output, "typedef long long int64;\n"); __ecereMethod___ecereNameSpace__ecere__sys__File_Printf(output, "typedef unsigned long long uint64;\n"); diff --git a/compiler/ecc/ecc.ec b/compiler/ecc/ecc.ec index 9e17bd8..63d34d7 100644 --- a/compiler/ecc/ecc.ec +++ b/compiler/ecc/ecc.ec @@ -484,6 +484,7 @@ class CompilerApp : Application { char impFile[MAX_LOCATION]; ImportedModule module; + char sourceFileName[MAX_FILENAME]; char mainModuleName[MAX_FILENAME]; int exitCode; OldList * ast; @@ -494,7 +495,8 @@ class CompilerApp : Application imports.Add((mainModule = ModuleImport { })); SetMainModule(mainModule); - GetLastDirectory(GetSourceFile(), mainModuleName); + GetLastDirectory(GetSourceFile(), sourceFileName); + strcpy(mainModuleName, sourceFileName); #if 0 // TEMP: UNTIL WE CAN HAVE PER SOURCE FILE PREPROCESSOR DEFINITIONS... @@ -543,7 +545,7 @@ class CompilerApp : Application char symLocation[MAX_LOCATION]; ImportedModule module, next; - GetLastDirectory(GetSourceFile(), symFile); + strcpy(symFile, sourceFileName); ChangeExtension(symFile, "sym", symFile); strcpy(symLocation, GetSymbolsDir()); @@ -612,12 +614,8 @@ class CompilerApp : Application ProcessInstanceDeclarations(); strcpy(impFile, GetSymbolsDir()); - { - char fileName[MAX_FILENAME]; - GetLastDirectory(GetSourceFile(), fileName); - PathCat(impFile, fileName); - ChangeExtension(impFile, "imp", impFile); - } + PathCat(impFile, sourceFileName); + ChangeExtension(impFile, "imp", impFile); if(imports.first) OutputImports(impFile); // For now use precomp to generate sym file only... @@ -627,7 +625,7 @@ class CompilerApp : Application File output = FileOpen(GetOutputFile(), write); if(output) { - output.Printf("/* Code generated from eC source file. */\n"); + output.Printf("/* Code generated from eC source file: %s */\n", sourceFileName); output.Printf("#if defined(__GNUC__)\n"); output.Printf("typedef long long int64;\n"); output.Printf("typedef unsigned long long uint64;\n"); -- 1.8.3.1