oldTy == UIntTy || oldTy == ULongTy;
}
+ bool isBool() const {
+ return oldTy == BoolTy;
+ }
+
bool isSignless() const { return !isSigned() && !isUnsigned(); }
bool isInteger() const { return isSigned() || isUnsigned(); }
bool isIntegral() const { return oldTy == BoolTy || isInteger(); }
#define YYERROR_VERBOSE 1
#define YYINCLUDED_STDLIB_H
#define YYDEBUG 1
-#define UPGRADE_SETCOND_OPS 0
+#define UPGRADE_SETCOND_OPS 1
int yylex(); // declaration" of xxx warnings.
int yyparse();
result.erase(5,1);
else if (TI.isSigned())
result[5] = 's';
- else if (TI.isUnsigned() || TI.isPointer())
+ else if (TI.isUnsigned() || TI.isPointer() || TI.isBool())
result[5] = 'u';
else
yyerror("Invalid integral type for setcc");