mirror of
https://github.com/cc65/cc65.git
synced 2025-01-09 11:30:29 +00:00
Fix macro output in the listing
git-svn-id: svn://svn.cc65.org/cc65/trunk@141 b7a2c559-68d2-44c3-8de9-860c34a00d81
This commit is contained in:
parent
c4cf60b521
commit
0e460243fd
@ -136,6 +136,14 @@ int InputFromStack (void)
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
int HavePushedInput (void)
|
||||||
|
/* Return true if we have stacked input available, return false if not */
|
||||||
|
{
|
||||||
|
return (IStack != 0);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
void CheckInputStack (void)
|
void CheckInputStack (void)
|
||||||
/* Called from the scanner before closing an input file. Will check for any
|
/* Called from the scanner before closing an input file. Will check for any
|
||||||
* stuff on the input stack.
|
* stuff on the input stack.
|
||||||
|
@ -55,6 +55,9 @@ int InputFromStack (void);
|
|||||||
* return false otherwise.
|
* return false otherwise.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
int HavePushedInput (void);
|
||||||
|
/* Return true if we have stacked input available, return false if not */
|
||||||
|
|
||||||
void CheckInputStack (void);
|
void CheckInputStack (void);
|
||||||
/* Called from the scanner before closing an input file. Will check for any
|
/* Called from the scanner before closing an input file. Will check for any
|
||||||
* stuff on the input stack.
|
* stuff on the input stack.
|
||||||
|
@ -47,6 +47,7 @@
|
|||||||
#include "global.h"
|
#include "global.h"
|
||||||
#include "incpath.h"
|
#include "incpath.h"
|
||||||
#include "instr.h"
|
#include "instr.h"
|
||||||
|
#include "istack.h"
|
||||||
#include "listing.h"
|
#include "listing.h"
|
||||||
#include "macro.h"
|
#include "macro.h"
|
||||||
#include "nexttok.h"
|
#include "nexttok.h"
|
||||||
@ -299,8 +300,12 @@ static void OneLine (void)
|
|||||||
char Ident [MAX_STR_LEN+1];
|
char Ident [MAX_STR_LEN+1];
|
||||||
int Done = 0;
|
int Done = 0;
|
||||||
|
|
||||||
/* Initialize the listing line */
|
/* Initialize the new listing line if we are actually reading from file
|
||||||
|
* and not from internally pushed input.
|
||||||
|
*/
|
||||||
|
if (!HavePushedInput ()) {
|
||||||
InitListingLine ();
|
InitListingLine ();
|
||||||
|
}
|
||||||
|
|
||||||
if (Tok == TOK_COLON) {
|
if (Tok == TOK_COLON) {
|
||||||
/* An unnamed label */
|
/* An unnamed label */
|
||||||
@ -372,11 +377,6 @@ static void OneLine (void)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Calling InitListingLine again here is part of a hack that introduces
|
|
||||||
* enough magic to make the PC output in the listing work.
|
|
||||||
*/
|
|
||||||
InitListingLine ();
|
|
||||||
|
|
||||||
/* Line separator must come here */
|
/* Line separator must come here */
|
||||||
ConsumeSep ();
|
ConsumeSep ();
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user