projects
/
henge
/
apc.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
fixes
[henge/apc.git]
/
src
/
ir.c
diff --git
a/src/ir.c
b/src/ir.c
index
10c053e
..
27b4d15
100644
(file)
--- a/
src/ir.c
+++ b/
src/ir.c
@@
-619,10
+619,10
@@
union ir_setdata_t* ir_set_link
( struct ir_set_t* set )
\r
{ return (union ir_setdata_t*) set->links; }
\r
\r
( struct ir_set_t* set )
\r
{ return (union ir_setdata_t*) set->links; }
\r
\r
-#define assert_link(linkdata)
do {
\
\r
+#define assert_link(linkdata)
if (DEBUG) {
\
\r
if (linkdata->header.type != LDAT) \
\r
eprintf("Data %s is not a link\n", linkdata->header.data_name); \
\r
if (linkdata->header.type != LDAT) \
\r
eprintf("Data %s is not a link\n", linkdata->header.data_name); \
\r
- }
while (0)
\r
+ }
\r
\r
/* Return the link type */
\r
enum ltype ir_linkdata_type
\r
\r
/* Return the link type */
\r
enum ltype ir_linkdata_type
\r
@@
-724,13
+724,17
@@
void ir_linkdata_resolve_set
\r
/* Assign a linkdatas trg_set */
\r
void ir_linkdata_assign_set
\r
\r
/* Assign a linkdatas trg_set */
\r
void ir_linkdata_assign_set
\r
-( struct ir_link_t* link, struct ir_set_t* set )
\r
-{ link->trg_set = set; }
\r
+( union ir_setdata_t* link, struct ir_set_t* set )
\r
+{ assert_link(link);
\r
+ link->link.trg_set = set;
\r
+}
\r
\r
/* Assign a linkdatas type */
\r
void ir_linkdata_assign_type
\r
\r
/* Assign a linkdatas type */
\r
void ir_linkdata_assign_type
\r
-( struct ir_link_t* link, ltype type; )
\r
-{ link->type = type; }
\r
+( union ir_setdata_t* link, enum ltype type )
\r
+{ assert_link(link);
\r
+ link->link.type = type;
\r
+}
\r
\r
/* Get a setdata's next sibling */
\r
union ir_setdata_t* ir_setdata_nextsib
\r
\r
/* Get a setdata's next sibling */
\r
union ir_setdata_t* ir_setdata_nextsib
\r