]> git.sur5r.net Git - cc65/blobdiff - src/cc65/expr.h
New/changed optimizations
[cc65] / src / cc65 / expr.h
index 00f18f3b3174198c9cc5b5642e9813757a40ef36..fabd91b40e5c2754504a99edf3d3f37b4f3f6049 100644 (file)
@@ -60,10 +60,11 @@ struct ExprDesc {
 
 
 
-void doasm (void);
-/* This function parses ASM statements. The syntax of the ASM directive
- * looks like the one defined for C++ (C has no ASM directive), that is,
- * a string literal in parenthesis.
+void ConstSubExpr (int (*F) (ExprDesc*), ExprDesc* Expr);
+/* Will evaluate an expression via the given function. If the result is not
+ * a constant, a diagnostic will be printed, and the value is replaced by
+ * a constant one to make sure there are no internal errors that result
+ * from this input error.
  */
 
 unsigned assignadjust (type* lhst, ExprDesc* rhs);
@@ -91,9 +92,12 @@ int evalexpr (unsigned flags, int (*f) (ExprDesc*), ExprDesc* lval);
  * primary register and 1 is returned.
  */
 
-void constexpr (ExprDesc* lval);
+void ConstExpr (ExprDesc* lval);
 /* Get a constant value */
 
+void ConstIntExpr (ExprDesc* Val);
+/* Get a constant int value */
+
 void intexpr (ExprDesc* lval);
 /* Get an integer expression */