-extern char *currFname;
-extern char *fullSrcFileName; /* full name for the source file; */
- /* can be NULL while linking without compiling */
-extern char *fullDstFileName; /* full name for the output file; */
- /* only given by -o, otherwise NULL */
-extern char *dstFileName; /* destination file name without extension */
-extern char *dstPath; /* path for the output files; */
- /* "" is equivalent with cwd */
-extern char *moduleName; /* module name is source file without path and extension */
- /* can be NULL while linking without compiling */
-extern int seqPointNo; /* current sequence point */
-extern int currLineno; /* current line number */
-extern int mylineno; /* line number of the current file SDCC.lex */
-extern FILE *yyin; /* */
-extern FILE *asmFile; /* assembly output file */
-extern FILE *cdbFile; /* debugger symbol file */
-extern int NestLevel; /* NestLevel SDCC.y */
-extern int stackPtr; /* stack pointer SDCC.y */
-extern int xstackPtr; /* external stack pointer SDCC.y */
-extern int reentrant; /* /X flag has been sent SDCC.y */
-extern char buffer[PATH_MAX * 2];/* general buffer SDCCmain.c */
-extern int currRegBank; /* register bank being used SDCCgens.c */
-extern int RegBankUsed[4]; /* JCF: register banks used SDCCmain.c */
-extern struct symbol *currFunc; /* current function SDCCgens.c */
-extern int cNestLevel; /* block nest level SDCCval.c */
-extern int currBlockno; /* sequentail block number */
+extern char *lexFilename; /* lex idea of current file name */
+extern int lexLineno; /* lex idea of line number of the current file */
+extern char *fullSrcFileName; /* full name for the source file; */
+ /* can be NULL while linking without compiling */
+extern char *fullDstFileName; /* full name for the output file; */
+ /* only given by -o, otherwise NULL */
+extern char *dstFileName; /* destination file name without extension */
+extern char *dstPath; /* path for the output files; */
+ /* "" is equivalent with cwd */
+extern char *moduleName; /* module name is source file without path and extension */
+ /* can be NULL while linking without compiling */
+extern int seqPointNo; /* current sequence point */
+extern FILE *yyin; /* */
+extern FILE *asmFile; /* assembly output file */
+extern FILE *cdbFile; /* debugger symbol file */
+extern int NestLevel; /* NestLevel SDCC.y */
+extern int stackPtr; /* stack pointer SDCC.y */
+extern int xstackPtr; /* external stack pointer SDCC.y */
+extern int reentrant; /* /X flag has been sent SDCC.y */
+extern char buffer[PATH_MAX * 2];/* general buffer SDCCmain.c */
+extern int currRegBank; /* register bank being used SDCCgens.c */
+extern int RegBankUsed[4]; /* JCF: register banks used SDCCmain.c */
+extern int BitBankUsed; /* MB: overlayable bit bank SDCCmain.c */
+extern struct symbol *currFunc; /* current function SDCCgens.c */
+extern int cNestLevel; /* block nest level SDCCval.c */
+extern int blockNo; /* maximum sequential block number */
+extern int currBlockno; /* sequential block number */