/* Symbols resolved, check for a literal */
if (E->Op == EXPR_LITERAL) {
if (Val) {
- *Val = E->V.Val;
+ *Val = E->V.IVal;
}
return 1;
}
/* Return an expression tree that encodes the given literal value */
{
ExprNode* Expr = NewExprNode (EXPR_LITERAL);
- Expr->V.Val = Val;
+ Expr->V.IVal = Val;
return Expr;
}
/* Return an expression for an unnamed label with the given index */
{
ExprNode* Node = NewExprNode (EXPR_ULABEL);
- Node->V.Val = Num;
+ Node->V.IVal = Num;
/* Return the new node */
return Node;
switch (Expr->Op) {
case EXPR_LITERAL:
- Clone = GenLiteralExpr (Expr->V.Val);
+ Clone = GenLiteralExpr (Expr->V.IVal);
break;
case EXPR_ULABEL:
- Clone = GenULabelExpr (Expr->V.Val);
+ Clone = GenULabelExpr (Expr->V.IVal);
break;
case EXPR_SYMBOL:
case EXPR_LITERAL:
ObjWrite8 (EXPR_LITERAL);
- ObjWrite32 (Expr->V.Val);
+ ObjWrite32 (Expr->V.IVal);
break;
case EXPR_SYMBOL:
break;
case EXPR_ULABEL:
- WriteExpr (ULabResolve (Expr->V.Val));
+ WriteExpr (ULabResolve (Expr->V.IVal));
break;
default:
/* */
/* */
/* */
-/* (C) 2003 Ullrich von Bassewitz */
-/* Römerstraße 52 */
+/* (C) 2003-2007 Ullrich von Bassewitz */
+/* Roemerstrasse 52 */
/* D-70794 Filderstadt */
/* EMail: uz@cc65.org */
/* */
/* Study a literal expression node */
{
/* This one is easy */
- D->Val = Expr->V.Val;
+ D->Val = Expr->V.IVal;
D->AddrSize = GetConstAddrSize (D->Val);
}
*/
if (ULabCanResolve ()) {
/* We can resolve the label */
- StudyExprInternal (ULabResolve (Expr->V.Val), D);
+ StudyExprInternal (ULabResolve (Expr->V.IVal), D);
} else {
ED_Invalidate (D);
}
/* */
/* */
/* */
-/* (C) 1998-2006 Ullrich von Bassewitz */
-/* Römerstraße 52 */
+/* (C) 1998-2007 Ullrich von Bassewitz */
+/* Roemerstrasse 52 */
/* D-70794 Filderstadt */
/* EMail: uz@cc65.org */
/* */
* Replace it by a literal node.
*/
E->Op = EXPR_LITERAL;
- E->V.Val = Val;
+ E->V.IVal = Val;
}
/* Remove all symbol references from the symbol */
case EXPR_LITERAL:
case EXPR_ULABEL:
- printf (" $%04lX", Expr->V.Val);
+ printf (" $%04lX", Expr->V.IVal);
break;
case EXPR_SYMBOL:
/* */
/* */
/* */
-/* (C) 1998-2003 Ullrich von Bassewitz */
-/* Römerstraße 52 */
+/* (C) 1998-2007 Ullrich von Bassewitz */
+/* Roemerstrasse 52 */
/* D-70794 Filderstadt */
/* EMail: uz@cc65.org */
/* */
ExprNode* Right; /* Right leaf */
struct ObjData* Obj; /* Object file reference (linker) */
union {
- long Val; /* If this is a value */
+ long IVal; /* If this is a int value */
struct SymEntry* Sym; /* If this is a symbol */
unsigned SegNum; /* If this is a segment */
unsigned ImpNum; /* If this is an import */
/* */
/* */
/* */
-/* (C) 1998-2003 Ullrich von Bassewitz */
-/* Römerstraße 52 */
+/* (C) 1998-2007 Ullrich von Bassewitz */
+/* Roemerstrasse 52 */
/* D-70794 Filderstadt */
/* EMail: uz@cc65.org */
/* */
N->Left = 0;
N->Right = 0;
N->Obj = O;
- N->V.Val = 0;
+ N->V.IVal = 0;
return N;
}
switch (Expr->Op) {
case EXPR_LITERAL:
- return Expr->V.Val;
+ return Expr->V.IVal;
case EXPR_SYMBOL:
/* Get the referenced export */
{
ExprNode* Expr = NewExprNode (O);
Expr->Op = EXPR_LITERAL;
- Expr->V.Val = Val;
+ Expr->V.IVal = Val;
return Expr;
}
switch (Op) {
case EXPR_LITERAL:
- Expr->V.Val = Read32Signed (F);
+ Expr->V.IVal = Read32Signed (F);
break;
case EXPR_SYMBOL:
case EXPR_LITERAL:
/* Value must be identical */
- return (E1->V.Val == E2->V.Val);
+ return (E1->V.IVal == E2->V.IVal);
case EXPR_SYMBOL:
/* Import number must be identical */
/* */
/* */
/* */
-/* (C) 1999-2005 Ullrich von Bassewitz */
-/* Römerstraße 52 */
+/* (C) 1999-2007 Ullrich von Bassewitz */
+/* Roemerstrasse 52 */
/* D-70794 Filderstadt */
/* EMail: uz@cc65.org */
/* */
switch (Expr->Op) {
case EXPR_LITERAL:
- D->Val += (Sign * Expr->V.Val);
+ D->Val += (Sign * Expr->V.IVal);
break;
case EXPR_SYMBOL: