projects
/
fw
/
sdcc
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Adding sdcclib to the build.
[fw/sdcc]
/
src
/
SDCCval.c
diff --git
a/src/SDCCval.c
b/src/SDCCval.c
index 56778663cbaaf18ca2c86b04316f501dd83f5e23..edd9c25b82ee14dc58df776f56013e9341f10713 100644
(file)
--- a/
src/SDCCval.c
+++ b/
src/SDCCval.c
@@
-56,7
+56,7
@@
newiList (int type, void *ilist)
nilist = Safe_alloc (sizeof (initList));
nilist->type = type;
nilist = Safe_alloc (sizeof (initList));
nilist->type = type;
- nilist->lineno =
y
ylineno;
+ nilist->lineno =
m
ylineno;
switch (type)
{
switch (type)
{
@@
-403,8
+403,7
@@
constFloatVal (char *s)
return constVal ("0");
}
return constVal ("0");
}
- val->type = val->etype = newLink ();
- val->type->class = SPECIFIER;
+ val->type = val->etype = newLink (SPECIFIER);
SPEC_NOUN (val->type) = V_FLOAT;
SPEC_SCLS (val->type) = S_LITERAL;
SPEC_CVAL (val->type).v_float = sval;
SPEC_NOUN (val->type) = V_FLOAT;
SPEC_SCLS (val->type) = S_LITERAL;
SPEC_CVAL (val->type).v_float = sval;
@@
-425,8
+424,7
@@
value *constVal (char *s)
val = newValue (); /* alloc space for value */
val = newValue (); /* alloc space for value */
- val->type = val->etype = newLink (); /* create the spcifier */
- val->type->class = SPECIFIER;
+ val->type = val->etype = newLink (SPECIFIER); /* create the spcifier */
SPEC_SCLS (val->type) = S_LITERAL;
// let's start with an unsigned char
SPEC_NOUN (val->type) = V_CHAR;
SPEC_SCLS (val->type) = S_LITERAL;
// let's start with an unsigned char
SPEC_NOUN (val->type) = V_CHAR;
@@
-665,10
+663,9
@@
strVal (char *s)
val = newValue (); /* get a new one */
/* get a declarator */
val = newValue (); /* get a new one */
/* get a declarator */
- val->type = newLink ();
+ val->type = newLink (
DECLARATOR
);
DCL_TYPE (val->type) = ARRAY;
DCL_TYPE (val->type) = ARRAY;
- val->type->next = val->etype = newLink ();
- val->etype->class = SPECIFIER;
+ val->type->next = val->etype = newLink (SPECIFIER);
SPEC_NOUN (val->etype) = V_CHAR;
SPEC_SCLS (val->etype) = S_LITERAL;
SPEC_NOUN (val->etype) = V_CHAR;
SPEC_SCLS (val->etype) = S_LITERAL;
@@
-776,8
+773,7
@@
charVal (char *s)
val = newValue ();
val = newValue ();
- val->type = val->etype = newLink ();
- val->type->class = SPECIFIER;
+ val->type = val->etype = newLink (SPECIFIER);
SPEC_NOUN (val->type) = V_CHAR;
SPEC_USIGN(val->type) = 1;
SPEC_SCLS (val->type) = S_LITERAL;
SPEC_NOUN (val->type) = V_CHAR;
SPEC_USIGN(val->type) = 1;
SPEC_SCLS (val->type) = S_LITERAL;
@@
-790,37
+786,37
@@
charVal (char *s)
switch (*s)
{
case 'n':
switch (*s)
{
case 'n':
- SPEC_CVAL (val->type).v_int = '\n';
+ SPEC_CVAL (val->type).v_
u
int = '\n';
break;
case 't':
break;
case 't':
- SPEC_CVAL (val->type).v_int = '\t';
+ SPEC_CVAL (val->type).v_
u
int = '\t';
break;
case 'v':
break;
case 'v':
- SPEC_CVAL (val->type).v_int = '\v';
+ SPEC_CVAL (val->type).v_
u
int = '\v';
break;
case 'b':
break;
case 'b':
- SPEC_CVAL (val->type).v_int = '\b';
+ SPEC_CVAL (val->type).v_
u
int = '\b';
break;
case 'r':
break;
case 'r':
- SPEC_CVAL (val->type).v_int = '\r';
+ SPEC_CVAL (val->type).v_
u
int = '\r';
break;
case 'f':
break;
case 'f':
- SPEC_CVAL (val->type).v_int = '\f';
+ SPEC_CVAL (val->type).v_
u
int = '\f';
break;
case 'a':
break;
case 'a':
- SPEC_CVAL (val->type).v_int = '\a';
+ SPEC_CVAL (val->type).v_
u
int = '\a';
break;
case '\\':
break;
case '\\':
- SPEC_CVAL (val->type).v_int = '\\';
+ SPEC_CVAL (val->type).v_
u
int = '\\';
break;
case '\?':
break;
case '\?':
- SPEC_CVAL (val->type).v_int = '\?';
+ SPEC_CVAL (val->type).v_
u
int = '\?';
break;
case '\'':
break;
case '\'':
- SPEC_CVAL (val->type).v_int = '\'';
+ SPEC_CVAL (val->type).v_
u
int = '\'';
break;
case '\"':
break;
case '\"':
- SPEC_CVAL (val->type).v_int = '\"';
+ SPEC_CVAL (val->type).v_
u
int = '\"';
break;
case '0' :
break;
case '0' :
@@
-1018,8
+1014,7
@@
valMult (value * lval, value * rval)
/* create a new value */
val = newValue ();
/* create a new value */
val = newValue ();
- val->type = val->etype = newLink ();
- val->type->class = SPECIFIER;
+ val->type = val->etype = newLink (SPECIFIER);
SPEC_NOUN (val->type) = (IS_FLOAT (lval->etype) ||
IS_FLOAT (rval->etype) ? V_FLOAT : V_INT);
SPEC_SCLS (val->type) = S_LITERAL; /* will remain literal */
SPEC_NOUN (val->type) = (IS_FLOAT (lval->etype) ||
IS_FLOAT (rval->etype) ? V_FLOAT : V_INT);
SPEC_SCLS (val->type) = S_LITERAL; /* will remain literal */
@@
-1059,8
+1054,7
@@
valDiv (value * lval, value * rval)
/* create a new value */
val = newValue ();
/* create a new value */
val = newValue ();
- val->type = val->etype = newLink();
- val->type->class = SPECIFIER;
+ val->type = val->etype = newLink(SPECIFIER);
SPEC_NOUN (val->type) = (IS_FLOAT (lval->etype) ||
IS_FLOAT (rval->etype) ? V_FLOAT : V_INT);
SPEC_SCLS (val->etype) = S_LITERAL;
SPEC_NOUN (val->type) = (IS_FLOAT (lval->etype) ||
IS_FLOAT (rval->etype) ? V_FLOAT : V_INT);
SPEC_SCLS (val->etype) = S_LITERAL;
@@
-1105,8
+1099,7
@@
valMod (value * lval, value * rval)
/* create a new value */
val = newValue ();
/* create a new value */
val = newValue ();
- val->type = val->etype = newLink ();
- val->type->class = SPECIFIER;
+ val->type = val->etype = newLink (SPECIFIER);
SPEC_NOUN (val->type) = V_INT; /* type is int */
SPEC_SCLS (val->type) = S_LITERAL; /* will remain literal */
SPEC_USIGN (val->type) = (SPEC_USIGN (lval->etype) & SPEC_USIGN (rval->etype));
SPEC_NOUN (val->type) = V_INT; /* type is int */
SPEC_SCLS (val->type) = S_LITERAL; /* will remain literal */
SPEC_USIGN (val->type) = (SPEC_USIGN (lval->etype) & SPEC_USIGN (rval->etype));
@@
-1145,8
+1138,7
@@
valPlus (value * lval, value * rval)
/* create a new value */
val = newValue ();
/* create a new value */
val = newValue ();
- val->type = val->etype = newLink ();
- val->type->class = SPECIFIER;
+ val->type = val->etype = newLink (SPECIFIER);
SPEC_NOUN (val->type) = (IS_FLOAT (lval->etype) ||
IS_FLOAT (rval->etype) ? V_FLOAT : V_INT);
SPEC_SCLS (val->type) = S_LITERAL; /* will remain literal */
SPEC_NOUN (val->type) = (IS_FLOAT (lval->etype) ||
IS_FLOAT (rval->etype) ? V_FLOAT : V_INT);
SPEC_SCLS (val->type) = S_LITERAL; /* will remain literal */
@@
-1184,8
+1176,7
@@
valMinus (value * lval, value * rval)
/* create a new value */
val = newValue ();
/* create a new value */
val = newValue ();
- val->type = val->etype = newLink ();
- val->type->class = SPECIFIER;
+ val->type = val->etype = newLink (SPECIFIER);
SPEC_NOUN (val->type) = (IS_FLOAT (lval->etype) ||
IS_FLOAT (rval->etype) ? V_FLOAT : V_INT);
SPEC_SCLS (val->type) = S_LITERAL; /* will remain literal */
SPEC_NOUN (val->type) = (IS_FLOAT (lval->etype) ||
IS_FLOAT (rval->etype) ? V_FLOAT : V_INT);
SPEC_SCLS (val->type) = S_LITERAL; /* will remain literal */
@@
-1542,7
+1533,7
@@
valForArray (ast * arrExpr)
SNPRINTF (val->name, sizeof(val->name), "(%s + %d)", buffer,
(int) AST_LIT_VALUE (arrExpr->right) * size);
SNPRINTF (val->name, sizeof(val->name), "(%s + %d)", buffer,
(int) AST_LIT_VALUE (arrExpr->right) * size);
- val->type = newLink ();
+ val->type = newLink (
DECLARATOR
);
if (SPEC_SCLS (arrExpr->left->etype) == S_CODE)
{
DCL_TYPE (val->type) = CPOINTER;
if (SPEC_SCLS (arrExpr->left->etype) == S_CODE)
{
DCL_TYPE (val->type) = CPOINTER;
@@
-1613,7
+1604,7
@@
valForStructElem (ast * structT, ast * elemT)
SNPRINTF (val->name, sizeof(val->name), "(%s + %d)", buffer,
(int) sym->offset);
SNPRINTF (val->name, sizeof(val->name), "(%s + %d)", buffer,
(int) sym->offset);
- val->type = newLink ();
+ val->type = newLink (
DECLARATOR
);
if (SPEC_SCLS (structT->etype) == S_CODE)
{
DCL_TYPE (val->type) = CPOINTER;
if (SPEC_SCLS (structT->etype) == S_CODE)
{
DCL_TYPE (val->type) = CPOINTER;