uninitialized { return EXTERNAL; } /* Deprecated, turn into external */
external { return EXTERNAL; }
implementation { return IMPLEMENTATION; }
+zeroinitializer { return ZEROINITIALIZER; }
\.\.\. { return DOTDOTDOT; }
null { return NULL_TOK; }
to { return TO; }
%type <StrVal> OptVAR_ID OptAssign FuncName
-%token IMPLEMENTATION TRUE FALSE BEGINTOK ENDTOK DECLARE GLOBAL CONSTANT
+%token IMPLEMENTATION ZEROINITIALIZER TRUE FALSE BEGINTOK ENDTOK
+%token DECLARE GLOBAL CONSTANT
%token TO EXCEPT DOTDOTDOT NULL_TOK CONST INTERNAL LINKONCE APPENDING
%token OPAQUE NOT EXTERNAL TARGET ENDIAN POINTERSIZE LITTLE BIG
ThrowException("Mismatched types for constant expression!");
$$ = $2;
delete $1;
+ }
+ | Types ZEROINITIALIZER {
+ $$ = Constant::getNullValue($1->get());
+ delete $1;
};
ConstVal : SIntType EINT64VAL { // integral constants