projects
/
fw
/
sdcc
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
removed a useless experiment
[fw/sdcc]
/
src
/
SDCCast.h
diff --git
a/src/SDCCast.h
b/src/SDCCast.h
index dc1b6e65f7c71766558f2ecb5b4f54495f651ad1..1504f69e54eb2ae32562aa02e989d2e4dbf00d75 100644
(file)
--- a/
src/SDCCast.h
+++ b/
src/SDCCast.h
@@
-29,6
+29,7
@@
#include "SDCCsymt.h"
#include "SDCCval.h"
#include "SDCCset.h"
#include "SDCCsymt.h"
#include "SDCCval.h"
#include "SDCCset.h"
+#include "SDCCmem.h"
#define EX_OP 0
#define EX_VALUE 1
#define EX_OP 0
#define EX_VALUE 1
@@
-42,7
+43,6
@@
typedef struct ast
unsigned type:3;
unsigned decorated:1;
unsigned type:3;
unsigned decorated:1;
- unsigned hasVargs:1;
unsigned isError:1;
unsigned funcName:1;
unsigned rvalue:1;
unsigned isError:1;
unsigned funcName:1;
unsigned rvalue:1;
@@
-65,6
+65,7
@@
typedef struct ast
union
{
char *inlineasm; /* pointer to inline assembler code */
union
{
char *inlineasm; /* pointer to inline assembler code */
+ literalList *constlist; /* init list for array initializer. */
symbol *sym; /* if block then -> symbols */
value *args; /* if function then args */
/* if switch then switch values */
symbol *sym; /* if block then -> symbols */
value *args; /* if function then args */
/* if switch then switch values */
@@
-99,8
+100,6
@@
typedef struct ast
sym_link *ftype; /* start of type chain for this subtree */
sym_link *etype; /* end of type chain for this subtree */
sym_link *ftype; /* start of type chain for this subtree */
sym_link *etype; /* end of type chain for this subtree */
- symbol *argSym; /* argument symbols */
- value *args; /* args of a function */
struct ast *left; /* pointer to left tree */
struct ast *right; /* pointer to right tree */
symbol *trueLabel; /* if statement trueLabel */
struct ast *left; /* pointer to left tree */
struct ast *right; /* pointer to right tree */
symbol *trueLabel; /* if statement trueLabel */
@@
-170,7
+169,7
@@
ast;
/* forward declarations for global variables */
extern ast *staticAutos;
extern FILE *codeOutFile;
/* forward declarations for global variables */
extern ast *staticAutos;
extern FILE *codeOutFile;
-extern memmap *GcurMemmap;
+extern
struct
memmap *GcurMemmap;
/* forward definitions for functions */
ast *newAst_VALUE (value * val);
/* forward definitions for functions */
ast *newAst_VALUE (value * val);
@@
-200,6
+199,7
@@
ast *createFor (symbol *, symbol *, symbol *, symbol *, ast *, ast *, ast *, ast
void eval2icode (ast *);
value *constExprValue (ast *, int);
symbol *funcOfType (char *, sym_link *, sym_link *, int, int);
void eval2icode (ast *);
value *constExprValue (ast *, int);
symbol *funcOfType (char *, sym_link *, sym_link *, int, int);
+symbol * funcOfTypeVarg (char *, char * , int , char **);
ast *initAggregates (symbol *, initList *, ast *);
bool hasSEFcalls (ast *);
void addSymToBlock (symbol *, ast *);
ast *initAggregates (symbol *, initList *, ast *);
bool hasSEFcalls (ast *);
void addSymToBlock (symbol *, ast *);
@@
-207,5
+207,6
@@
void addSymToBlock (symbol *, ast *);
// exported variables
extern set *operKeyReset;
extern int noAlloc;
// exported variables
extern set *operKeyReset;
extern int noAlloc;
+extern int inInitMode;
#endif
#endif