-#define GCPRO1(varname) \
- {gcpro1.next = gcprolist; gcpro1.var = &varname; gcpro1.nvars = 1; \
- gcprolist = &gcpro1; }
-
-#define GCPRO2(varname1, varname2) \
- {gcpro1.next = gcprolist; gcpro1.var = &varname1; gcpro1.nvars = 1; \
- gcpro2.next = &gcpro1; gcpro2.var = &varname2; gcpro2.nvars = 1; \
- gcprolist = &gcpro2; }
-
-#define GCPRO3(varname1, varname2, varname3) \
- {gcpro1.next = gcprolist; gcpro1.var = &varname1; gcpro1.nvars = 1; \
- gcpro2.next = &gcpro1; gcpro2.var = &varname2; gcpro2.nvars = 1; \
- gcpro3.next = &gcpro2; gcpro3.var = &varname3; gcpro3.nvars = 1; \
- gcprolist = &gcpro3; }
-
-#define GCPRO4(varname1, varname2, varname3, varname4) \
- {gcpro1.next = gcprolist; gcpro1.var = &varname1; gcpro1.nvars = 1; \
- gcpro2.next = &gcpro1; gcpro2.var = &varname2; gcpro2.nvars = 1; \
- gcpro3.next = &gcpro2; gcpro3.var = &varname3; gcpro3.nvars = 1; \
- gcpro4.next = &gcpro3; gcpro4.var = &varname4; gcpro4.nvars = 1; \
- gcprolist = &gcpro4; }
-
-#define GCPRO5(varname1, varname2, varname3, varname4, varname5) \
- {gcpro1.next = gcprolist; gcpro1.var = &varname1; gcpro1.nvars = 1; \
- gcpro2.next = &gcpro1; gcpro2.var = &varname2; gcpro2.nvars = 1; \
- gcpro3.next = &gcpro2; gcpro3.var = &varname3; gcpro3.nvars = 1; \
- gcpro4.next = &gcpro3; gcpro4.var = &varname4; gcpro4.nvars = 1; \
- gcpro5.next = &gcpro4; gcpro5.var = &varname5; gcpro5.nvars = 1; \
- gcprolist = &gcpro5; }
-
-#define UNGCPRO (gcprolist = gcpro1.next)
-
-#define NGCPRO1(varname) \
- {ngcpro1.next = gcprolist; ngcpro1.var = &varname; ngcpro1.nvars = 1; \
- gcprolist = &ngcpro1; }
-
-#define NGCPRO2(varname1, varname2) \
- {ngcpro1.next = gcprolist; ngcpro1.var = &varname1; ngcpro1.nvars = 1; \
- ngcpro2.next = &ngcpro1; ngcpro2.var = &varname2; ngcpro2.nvars = 1; \
- gcprolist = &ngcpro2; }
-
-#define NGCPRO3(varname1, varname2, varname3) \
- {ngcpro1.next = gcprolist; ngcpro1.var = &varname1; ngcpro1.nvars = 1; \
- ngcpro2.next = &ngcpro1; ngcpro2.var = &varname2; ngcpro2.nvars = 1; \
- ngcpro3.next = &ngcpro2; ngcpro3.var = &varname3; ngcpro3.nvars = 1; \
- gcprolist = &ngcpro3; }
-
-#define NGCPRO4(varname1, varname2, varname3, varname4) \
- {ngcpro1.next = gcprolist; ngcpro1.var = &varname1; ngcpro1.nvars = 1; \
- ngcpro2.next = &ngcpro1; ngcpro2.var = &varname2; ngcpro2.nvars = 1; \
- ngcpro3.next = &ngcpro2; ngcpro3.var = &varname3; ngcpro3.nvars = 1; \
- ngcpro4.next = &ngcpro3; ngcpro4.var = &varname4; ngcpro4.nvars = 1; \
- gcprolist = &ngcpro4; }
-
-#define NGCPRO5(varname1, varname2, varname3, varname4, varname5) \
- {ngcpro1.next = gcprolist; ngcpro1.var = &varname1; ngcpro1.nvars = 1; \
- ngcpro2.next = &ngcpro1; ngcpro2.var = &varname2; ngcpro2.nvars = 1; \
- ngcpro3.next = &ngcpro2; ngcpro3.var = &varname3; ngcpro3.nvars = 1; \
- ngcpro4.next = &ngcpro3; ngcpro4.var = &varname4; ngcpro4.nvars = 1; \
- ngcpro5.next = &ngcpro4; ngcpro5.var = &varname5; ngcpro5.nvars = 1; \
- gcprolist = &ngcpro5; }
-
-#define NUNGCPRO (gcprolist = ngcpro1.next)
-
-#define NNGCPRO1(varname) \
- {nngcpro1.next = gcprolist; nngcpro1.var = &varname; nngcpro1.nvars = 1; \
- gcprolist = &nngcpro1; }
-
-#define NNGCPRO2(varname1, varname2) \
- {nngcpro1.next = gcprolist; nngcpro1.var = &varname1; nngcpro1.nvars = 1; \
- nngcpro2.next = &nngcpro1; nngcpro2.var = &varname2; nngcpro2.nvars = 1; \
- gcprolist = &nngcpro2; }
-
-#define NNGCPRO3(varname1, varname2, varname3) \
- {nngcpro1.next = gcprolist; nngcpro1.var = &varname1; nngcpro1.nvars = 1; \
- nngcpro2.next = &nngcpro1; nngcpro2.var = &varname2; nngcpro2.nvars = 1; \
- nngcpro3.next = &nngcpro2; nngcpro3.var = &varname3; nngcpro3.nvars = 1; \
- gcprolist = &nngcpro3; }
-
-#define NNGCPRO4(varname1, varname2, varname3, varname4) \
- {nngcpro1.next = gcprolist; nngcpro1.var = &varname1; nngcpro1.nvars = 1; \
- nngcpro2.next = &nngcpro1; nngcpro2.var = &varname2; nngcpro2.nvars = 1; \
- nngcpro3.next = &nngcpro2; nngcpro3.var = &varname3; nngcpro3.nvars = 1; \
- nngcpro4.next = &nngcpro3; nngcpro4.var = &varname4; nngcpro4.nvars = 1; \
- gcprolist = &nngcpro4; }
-
-#define NNGCPRO5(varname1, varname2, varname3, varname4, varname5) \
- {nngcpro1.next = gcprolist; nngcpro1.var = &varname1; nngcpro1.nvars = 1; \
- nngcpro2.next = &nngcpro1; nngcpro2.var = &varname2; nngcpro2.nvars = 1; \
- nngcpro3.next = &nngcpro2; nngcpro3.var = &varname3; nngcpro3.nvars = 1; \
- nngcpro4.next = &nngcpro3; nngcpro4.var = &varname4; nngcpro4.nvars = 1; \
- nngcpro5.next = &nngcpro4; nngcpro5.var = &varname5; nngcpro5.nvars = 1; \
- gcprolist = &nngcpro5; }
-
-#define NNUNGCPRO (gcprolist = nngcpro1.next)
+#define GCPRO1(var1) ((void) ( \
+ gcpro1.next = gcprolist, gcpro1.var = &var1, gcpro1.nvars = 1, \
+ gcprolist = &gcpro1 ))
+
+#define GCPRO2(var1, var2) ((void) ( \
+ gcpro1.next = gcprolist, gcpro1.var = &var1, gcpro1.nvars = 1, \
+ gcpro2.next = &gcpro1, gcpro2.var = &var2, gcpro2.nvars = 1, \
+ gcprolist = &gcpro2 ))
+
+#define GCPRO3(var1, var2, var3) ((void) ( \
+ gcpro1.next = gcprolist, gcpro1.var = &var1, gcpro1.nvars = 1, \
+ gcpro2.next = &gcpro1, gcpro2.var = &var2, gcpro2.nvars = 1, \
+ gcpro3.next = &gcpro2, gcpro3.var = &var3, gcpro3.nvars = 1, \
+ gcprolist = &gcpro3 ))
+
+#define GCPRO4(var1, var2, var3, var4) ((void) ( \
+ gcpro1.next = gcprolist, gcpro1.var = &var1, gcpro1.nvars = 1, \
+ gcpro2.next = &gcpro1, gcpro2.var = &var2, gcpro2.nvars = 1, \
+ gcpro3.next = &gcpro2, gcpro3.var = &var3, gcpro3.nvars = 1, \
+ gcpro4.next = &gcpro3, gcpro4.var = &var4, gcpro4.nvars = 1, \
+ gcprolist = &gcpro4 ))
+
+#define GCPRO5(var1, var2, var3, var4, var5) \
+ ((void) ( \
+ gcpro1.next = gcprolist, gcpro1.var = &var1, gcpro1.nvars = 1, \
+ gcpro2.next = &gcpro1, gcpro2.var = &var2, gcpro2.nvars = 1, \
+ gcpro3.next = &gcpro2, gcpro3.var = &var3, gcpro3.nvars = 1, \
+ gcpro4.next = &gcpro3, gcpro4.var = &var4, gcpro4.nvars = 1, \
+ gcpro5.next = &gcpro4, gcpro5.var = &var5, gcpro5.nvars = 1, \
+ gcprolist = &gcpro5 ))
+
+#define UNGCPRO ((void) (gcprolist = gcpro1.next))
+
+#define NGCPRO1(var1) ((void) ( \
+ ngcpro1.next = gcprolist, ngcpro1.var = &var1, ngcpro1.nvars = 1, \
+ gcprolist = &ngcpro1 ))
+
+#define NGCPRO2(var1, var2) ((void) ( \
+ ngcpro1.next = gcprolist, ngcpro1.var = &var1, ngcpro1.nvars = 1, \
+ ngcpro2.next = &ngcpro1, ngcpro2.var = &var2, ngcpro2.nvars = 1, \
+ gcprolist = &ngcpro2 ))
+
+#define NGCPRO3(var1, var2, var3) ((void) ( \
+ ngcpro1.next = gcprolist, ngcpro1.var = &var1, ngcpro1.nvars = 1, \
+ ngcpro2.next = &ngcpro1, ngcpro2.var = &var2, ngcpro2.nvars = 1, \
+ ngcpro3.next = &ngcpro2, ngcpro3.var = &var3, ngcpro3.nvars = 1, \
+ gcprolist = &ngcpro3 ))
+
+#define NGCPRO4(var1, var2, var3, var4) ((void) ( \
+ ngcpro1.next = gcprolist, ngcpro1.var = &var1, ngcpro1.nvars = 1, \
+ ngcpro2.next = &ngcpro1, ngcpro2.var = &var2, ngcpro2.nvars = 1, \
+ ngcpro3.next = &ngcpro2, ngcpro3.var = &var3, ngcpro3.nvars = 1, \
+ ngcpro4.next = &ngcpro3, ngcpro4.var = &var4, ngcpro4.nvars = 1, \
+ gcprolist = &ngcpro4 ))
+
+#define NGCPRO5(var1, var2, var3, var4, var5) \
+ ((void) ( \
+ ngcpro1.next = gcprolist, ngcpro1.var = &var1, ngcpro1.nvars = 1, \
+ ngcpro2.next = &ngcpro1, ngcpro2.var = &var2, ngcpro2.nvars = 1, \
+ ngcpro3.next = &ngcpro2, ngcpro3.var = &var3, ngcpro3.nvars = 1, \
+ ngcpro4.next = &ngcpro3, ngcpro4.var = &var4, ngcpro4.nvars = 1, \
+ ngcpro5.next = &ngcpro4, ngcpro5.var = &var5, ngcpro5.nvars = 1, \
+ gcprolist = &ngcpro5 ))
+
+#define NUNGCPRO ((void) (gcprolist = ngcpro1.next))
+
+#define NNGCPRO1(var1) ((void) ( \
+ nngcpro1.next = gcprolist, nngcpro1.var = &var1, nngcpro1.nvars = 1, \
+ gcprolist = &nngcpro1 ))
+
+#define NNGCPRO2(var1, var2) ((void) ( \
+ nngcpro1.next = gcprolist, nngcpro1.var = &var1, nngcpro1.nvars = 1, \
+ nngcpro2.next = &nngcpro1, nngcpro2.var = &var2, nngcpro2.nvars = 1, \
+ gcprolist = &nngcpro2 ))
+
+#define NNGCPRO3(var1, var2, var3) ((void) ( \
+ nngcpro1.next = gcprolist, nngcpro1.var = &var1, nngcpro1.nvars = 1, \
+ nngcpro2.next = &nngcpro1, nngcpro2.var = &var2, nngcpro2.nvars = 1, \
+ nngcpro3.next = &nngcpro2, nngcpro3.var = &var3, nngcpro3.nvars = 1, \
+ gcprolist = &nngcpro3 ))
+
+#define NNGCPRO4(var1, var2, var3, var4) ((void) ( \
+ nngcpro1.next = gcprolist, nngcpro1.var = &var1, nngcpro1.nvars = 1, \
+ nngcpro2.next = &nngcpro1, nngcpro2.var = &var2, nngcpro2.nvars = 1, \
+ nngcpro3.next = &nngcpro2, nngcpro3.var = &var3, nngcpro3.nvars = 1, \
+ nngcpro4.next = &nngcpro3, nngcpro4.var = &var4, nngcpro4.nvars = 1, \
+ gcprolist = &nngcpro4 ))
+
+#define NNGCPRO5(var1, var2, var3, var4, var5) \
+ ((void) ( \
+ nngcpro1.next = gcprolist, nngcpro1.var = &var1, nngcpro1.nvars = 1, \
+ nngcpro2.next = &nngcpro1, nngcpro2.var = &var2, nngcpro2.nvars = 1, \
+ nngcpro3.next = &nngcpro2, nngcpro3.var = &var3, nngcpro3.nvars = 1, \
+ nngcpro4.next = &nngcpro3, nngcpro4.var = &var4, nngcpro4.nvars = 1, \
+ nngcpro5.next = &nngcpro4, nngcpro5.var = &var5, nngcpro5.nvars = 1, \
+ gcprolist = &nngcpro5 ))
+
+#define NNUNGCPRO ((void) (gcprolist = nngcpro1.next))