diff lwlib/lw_expr.h @ 377:67373a053c49

Add ?rts target for branch instructions Add a ?rts target for branch instructions, which brances to the nearest RTS or inverts the branch logic to branch around a generated RTS. Activated by a pragma "qrts". Thanks to Erik G <erik@6809.org> for the patch.
author William Astle <lost@l-w.ca>
date Mon, 13 Jul 2015 20:50:02 -0600
parents 8e25147c2aa8
children 4c5d3b990a3f
line wrap: on
line diff
--- a/lwlib/lw_expr.h	Mon Jul 13 20:47:30 2015 -0600
+++ b/lwlib/lw_expr.h	Mon Jul 13 20:50:02 2015 -0600
@@ -55,8 +55,6 @@
 	lw_expr_oper_none = 0
 };
 
-#ifdef ___lw_expr_c_seen___
-
 typedef struct lw_expr_priv * lw_expr_t;
 
 struct lw_expr_opers
@@ -78,10 +76,6 @@
 typedef lw_expr_t lw_expr_fn3_t(char **p, void *priv);
 typedef int lw_expr_testfn_t(lw_expr_t e, void *priv);
 
-#else /* def ___lw_expr_c_seen___ */
-
-typedef void * lw_expr_t;
-
 lw_expr_t lwexpr_create(void);
 void lw_expr_destroy(lw_expr_t E);
 lw_expr_t lw_expr_copy(lw_expr_t E);
@@ -91,10 +85,6 @@
 int lw_expr_compare(lw_expr_t E1, lw_expr_t E2);
 void lw_expr_simplify(lw_expr_t E, void *priv);
 
-typedef lw_expr_t lw_expr_fn_t(int t, void *ptr, void *priv);
-typedef lw_expr_t lw_expr_fn2_t(char *var, void *priv);
-typedef lw_expr_t lw_expr_fn3_t(char **p, void *priv);
-
 void lw_expr_set_special_handler(lw_expr_fn_t *fn);
 void lw_expr_set_var_handler(lw_expr_fn2_t *fn);
 void lw_expr_set_term_parser(lw_expr_fn3_t *fn);
@@ -121,6 +111,4 @@
 
 void lw_expr_setdivzero(void (*fn)(void *priv));
 
-#endif /* def ___lw_expr_c_seen___ */
-
 #endif /* ___lw_expr_h_seen___ */