Changes in src/SynTree/Expression.h [ea6332d:5809461]
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
src/SynTree/Expression.h
rea6332d r5809461 24 24 #include "Constant.h" // for Constant 25 25 #include "Initializer.h" // for Designation (ptr only), Initializer 26 #include "Label.h" // for Label 26 27 #include "Mutator.h" // for Mutator 27 28 #include "SynTree.h" // for UniqueId … … 173 174 }; 174 175 175 // xxx - this doesn't appear to actually be hooked in anywhere. We should use this instead of the "&&"" UntypedExpr hack 176 // GCC &&label 177 // https://gcc.gnu.org/onlinedocs/gcc-3.4.2/gcc/Labels-as-Values.html 176 178 class LabelAddressExpr : public Expression { 177 179 public: 178 Expression *arg;179 180 LabelAddressExpr( Expression *arg );180 Label arg; 181 182 LabelAddressExpr( const Label &arg ); 181 183 LabelAddressExpr( const LabelAddressExpr & other ); 182 184 virtual ~LabelAddressExpr(); 183 184 Expression * get_arg() const { return arg; }185 void set_arg(Expression * newValue ) { arg = newValue; }186 185 187 186 virtual LabelAddressExpr * clone() const { return new LabelAddressExpr( * this ); } … … 283 282 DeclarationWithType * get_var() const { return var; } 284 283 void set_var( DeclarationWithType * newValue ) { var = newValue; } 284 285 static VariableExpr * functionPointer( FunctionDecl * decl ); 285 286 286 287 virtual VariableExpr * clone() const { return new VariableExpr( * this ); }
Note: See TracChangeset
for help on using the changeset viewer.