[svn:parrot] r44005 - trunk/compilers/pirc/src

bacek at svn.parrot.org bacek at svn.parrot.org
Tue Feb 16 10:39:31 UTC 2010


Author: bacek
Date: Tue Feb 16 10:39:31 2010
New Revision: 44005
URL: https://trac.parrot.org/parrot/changeset/44005

Log:
PIRC: Really use headerizer

Modified:
   trunk/compilers/pirc/src/pircompunit.c
   trunk/compilers/pirc/src/pircompunit.h

Modified: trunk/compilers/pirc/src/pircompunit.c
==============================================================================
--- trunk/compilers/pirc/src/pircompunit.c	Tue Feb 16 10:39:03 2010	(r44004)
+++ trunk/compilers/pirc/src/pircompunit.c	Tue Feb 16 10:39:31 2010	(r44005)
@@ -172,7 +172,7 @@
 
 */
 void
-set_namespace(ARGIN(lexer_state * const lexer), key * const ns)
+set_namespace(ARGIN(lexer_state * const lexer), ARGIN(key * const ns))
 {
     lexer->current_ns = ns;
 }
@@ -189,7 +189,8 @@
 
 */
 void
-set_sub_outer(ARGIN(lexer_state * const lexer), char const * const outersub)
+set_sub_outer(ARGIN(lexer_state * const lexer),
+        ARGIN(char const * const outersub))
 {
     CURRENT_SUB(lexer)->info.outersub = outersub;
     SET_FLAG(lexer->subs->flags, PIRC_SUB_FLAG_HAS_OUTER);
@@ -208,7 +209,8 @@
 
 */
 void
-set_sub_multi_types(ARGIN(lexer_state * const lexer), expression * const multitype)
+set_sub_multi_types(ARGIN(lexer_state * const lexer),
+        ARGIN(expression * const multitype))
 {
     /* info.num_types is 1 higher than the actual number of types;
      * n=1 means :multi() without any types; therefore, subtract 1 for actual number.
@@ -280,7 +282,8 @@
 
 */
 void
-set_sub_vtable(ARGIN(lexer_state * const lexer), char const * vtablename)
+set_sub_vtable(ARGIN(lexer_state * const lexer),
+        ARGIN(char const * vtablename))
 {
     int vtable_index;
 
@@ -323,7 +326,8 @@
 
 */
 void
-set_sub_subid(ARGIN(lexer_state * const lexer), char const * const subid)
+set_sub_subid(ARGIN(lexer_state * const lexer),
+        ARGIN(char const * const subid))
 {
     CURRENT_SUB(lexer)->info.subid = subid;
     SET_FLAG(lexer->subs->flags, PIRC_SUB_FLAG_SUBID);
@@ -341,7 +345,8 @@
 
 */
 void
-set_sub_methodname(ARGIN(lexer_state * const lexer), char const * const methodname)
+set_sub_methodname(ARGIN(lexer_state * const lexer),
+        ARGIN(char const * const methodname))
 {
     if (methodname) /* :method("foo") */
         CURRENT_SUB(lexer)->methodname = methodname;
@@ -368,7 +373,8 @@
 
 */
 void
-set_sub_instanceof(ARGIN(lexer_state * const lexer), char const * const classname)
+set_sub_instanceof(ARGIN(lexer_state * const lexer),
+        ARGIN(char const * const classname))
 {
     CURRENT_SUB(lexer)->info.instanceof = classname;
 }
@@ -385,7 +391,8 @@
 
 */
 void
-set_sub_nsentry(ARGIN(lexer_state * const lexer), char const * const nsentry)
+set_sub_nsentry(ARGIN(lexer_state * const lexer),
+        ARGIN(char const * const nsentry))
 {
     CURRENT_SUB(lexer)->info.nsentry = nsentry;
 }
@@ -420,7 +427,7 @@
 
 */
 void
-new_subr(ARGIN(lexer_state * const lexer), STRING *subname)
+new_subr(ARGIN(lexer_state * const lexer), ARGIN(STRING *subname))
 {
     subroutine *newsub       = pir_mem_allocate_zeroed_typed(lexer, subroutine);
     int         index;
@@ -481,7 +488,8 @@
 
 */
 void
-set_sub_name(ARGIN(lexer_state * const lexer), char const * const subname)
+set_sub_name(ARGIN(lexer_state * const lexer),
+        ARGIN(char const * const subname))
 {
     CURRENT_SUB(lexer)->info.subname = subname;
 }
@@ -568,7 +576,7 @@
 PARROT_IGNORABLE_RESULT
 PARROT_CANNOT_RETURN_NULL
 target *
-set_curtarget(ARGIN(lexer_state * const lexer), target * const t)
+set_curtarget(ARGIN(lexer_state * const lexer), ARGIN(target * const t))
 {
     lexer->curtarget = t;
     return t;
@@ -587,7 +595,8 @@
 PARROT_IGNORABLE_RESULT
 PARROT_CANNOT_RETURN_NULL
 argument *
-set_curarg(ARGIN(lexer_state * const lexer), argument * const arg)
+set_curarg(ARGIN(lexer_state * const lexer),
+        ARGIN(argument * const arg))
 {
     lexer->curarg = arg;
     return arg;
@@ -618,7 +627,8 @@
 PARROT_PURE_FUNCTION
 PARROT_WARN_UNUSED_RESULT
 int
-targets_equal(target const * const left, target const * const right)
+targets_equal(ARGIN(target const * const left),
+        ARGIN(target const * const right))
 {
 
 
@@ -681,7 +691,7 @@
 
 */
 void
-set_target_key(target * const t, key * const k)
+set_target_key(ARGIN(target * const t), ARGIN(key * const k))
 {
     t->key = k;
 }
@@ -700,7 +710,8 @@
 PARROT_WARN_UNUSED_RESULT
 PARROT_CANNOT_RETURN_NULL
 target *
-target_from_symbol(ARGIN(lexer_state * const lexer), symbol * const sym)
+target_from_symbol(ARGIN(lexer_state * const lexer),
+        ARGIN(symbol * const sym))
 {
     target *t  = new_target(lexer);
 
@@ -727,7 +738,8 @@
 PARROT_IGNORABLE_RESULT
 PARROT_CANNOT_RETURN_NULL
 target *
-add_target(ARGIN(lexer_state * const lexer), target *last, target * const t)
+add_target(ARGIN(lexer_state * const lexer),
+        ARGMOD(target *last), ARGIN(target * const t))
 {
     PARROT_ASSERT(last);
     PARROT_ASSERT(t);
@@ -755,7 +767,8 @@
 PARROT_IGNORABLE_RESULT
 PARROT_CANNOT_RETURN_NULL
 target *
-add_param(ARGIN(lexer_state * const lexer), pir_type type, char const * const name)
+add_param(ARGIN(lexer_state * const lexer), pir_type type,
+        ARGIN(char const * const name))
 {
     target *targ = new_target(lexer);
     symbol *sym  = new_symbol(lexer, name, type);
@@ -805,7 +818,8 @@
 PARROT_IGNORABLE_RESULT
 PARROT_CANNOT_RETURN_NULL
 target *
-set_param_alias(ARGIN(lexer_state * const lexer), char const * const alias)
+set_param_alias(ARGIN(lexer_state * const lexer),
+        ARGIN(char const * const alias))
 {
     PARROT_ASSERT(lexer->curtarget != NULL);
 
@@ -838,7 +852,8 @@
 PARROT_IGNORABLE_RESULT
 PARROT_CANNOT_RETURN_NULL
 target *
-set_param_flag(ARGIN(lexer_state * const lexer), target * const param, target_flag flag)
+set_param_flag(ARGIN(lexer_state * const lexer),
+        ARGIN(target * const param), target_flag flag)
 {
     SET_FLAG(param->flags, flag);
 
@@ -874,7 +889,8 @@
 PARROT_WARN_UNUSED_RESULT
 PARROT_CANNOT_RETURN_NULL
 argument *
-new_argument(ARGIN(lexer_state * const lexer), expression * const expr)
+new_argument(ARGIN(lexer_state * const lexer),
+        ARGIN(expression * const expr))
 {
     argument *arg = pir_mem_allocate_zeroed_typed(lexer, argument);
     arg->value    = expr;
@@ -901,7 +917,7 @@
 PARROT_IGNORABLE_RESULT
 PARROT_CANNOT_RETURN_NULL
 argument *
-add_arg(ARGMOD(argument *last), argument * const newarg)
+add_arg(ARGMOD(argument *last), ARGIN(argument * const newarg))
 {
     PARROT_ASSERT(last);
     PARROT_ASSERT(newarg);
@@ -944,7 +960,7 @@
 PARROT_IGNORABLE_RESULT
 PARROT_CANNOT_RETURN_NULL
 argument *
-unshift_arg(invocation * const inv, argument * const newarg)
+unshift_arg(ARGIN(invocation * const inv), ARGIN(argument * const newarg))
 {
     ++inv->num_arguments;
 
@@ -971,7 +987,7 @@
 PARROT_IGNORABLE_RESULT
 PARROT_CANNOT_RETURN_NULL
 argument *
-set_arg_flag(argument * const arg, arg_flag flag)
+set_arg_flag(ARGIN(argument * const arg), arg_flag flag)
 {
     SET_FLAG(arg->flags, flag);
     return arg;
@@ -993,7 +1009,8 @@
 PARROT_IGNORABLE_RESULT
 PARROT_CANNOT_RETURN_NULL
 argument *
-set_arg_alias(ARGIN(lexer_state * const lexer), char const * const alias)
+set_arg_alias(ARGIN(lexer_state * const lexer),
+        ARGIN(char const * const alias))
 {
     PARROT_ASSERT(lexer->curarg != NULL);
     lexer->curarg->alias = alias;
@@ -1012,7 +1029,8 @@
 
 */
 void
-load_library(ARGIN(lexer_state * const lexer), char const * const library)
+load_library(ARGIN(lexer_state * const lexer),
+        ARGIN(char const * const library))
 {
     /* see imcc.y:600 */
     STRING *libname       = Parrot_str_new(lexer->interp, library, strlen(library));
@@ -1032,7 +1050,8 @@
 
 */
 void
-set_label(ARGIN(lexer_state * const lexer), char const * const labelname)
+set_label(ARGIN(lexer_state * const lexer),
+        ARGIN(char const * const labelname))
 {
     instruction *instr = CURRENT_INSTRUCTION(lexer);
 
@@ -1072,7 +1091,8 @@
 
 */
 void
-set_instr(ARGIN(lexer_state * const lexer), char const * const opname)
+set_instr(ARGIN(lexer_state * const lexer),
+        ARGIN(char const * const opname))
 {
     set_instrf(lexer, opname, "");
 }
@@ -1087,7 +1107,8 @@
 
 */
 void
-update_instr(ARGIN(lexer_state * const lexer), char const * const newop)
+update_instr(ARGIN(lexer_state * const lexer),
+        ARGIN(char const * const newop))
 {
     PARROT_ASSERT(CURRENT_INSTRUCTION(lexer));
     CURRENT_INSTRUCTION(lexer)->opname = newop;
@@ -1169,7 +1190,10 @@
 
 */
 void
-set_instrf(ARGIN(lexer_state * const lexer), char const * const opname, char const * const format, ...)
+set_instrf(ARGIN(lexer_state * const lexer),
+        ARGIN(char const * const opname),
+        ARGIN(char const * const format),
+        ...)
 {
     va_list  arg_ptr;       /* for the var. args */
     unsigned i;             /* loop iterator */
@@ -1213,7 +1237,9 @@
 
 */
 void
-add_operands(ARGIN(lexer_state * const lexer), char const * const format, ...)
+add_operands(ARGIN(lexer_state * const lexer),
+        ARGIN(char const * const format),
+        ...)
 {
     va_list  arg_ptr;       /* for the var. args */
     unsigned i;             /* loop iterator */
@@ -1270,7 +1296,7 @@
 PARROT_CONST_FUNCTION
 PARROT_CANNOT_RETURN_NULL
 char const *
-get_inverse(char const * const instr)
+get_inverse(ARGIN(char const * const instr))
 {
          if (STREQ(instr, "if")) return "unless";
     else if (STREQ(instr, "gt")) return "le";
@@ -1517,7 +1543,9 @@
 PARROT_WARN_UNUSED_RESULT
 PARROT_CANNOT_RETURN_NULL
 constdecl *
-new_named_const(ARGIN(lexer_state * const lexer), value_type type, char const * const name, ...)
+new_named_const(ARGIN(lexer_state * const lexer), value_type type,
+        ARGIN(char const * const name),
+        ...)
 {
     constdecl *c = (constdecl *)pir_mem_allocate(lexer, sizeof (constdecl));
     va_list arg_ptr;
@@ -1566,8 +1594,10 @@
 PARROT_CANNOT_RETURN_NULL
 PARROT_WARN_UNUSED_RESULT
 constdecl *
-new_pmc_const(ARGIN(lexer_state * const lexer), char const * const type,
-              char const * const name, constant * const value)
+new_pmc_const(ARGIN(lexer_state * const lexer),
+        ARGIN(char const * const type),
+        ARGIN(char const * const name),
+        ARGIN(constant * const value))
 {
     /* get a STRING representation of the c-string type */
     STRING *classname    = Parrot_str_new(lexer->interp, type, strlen(type));
@@ -1814,7 +1844,8 @@
 PARROT_WARN_UNUSED_RESULT
 PARROT_CANNOT_RETURN_NULL
 expression *
-expr_from_target(ARGIN(lexer_state * const lexer), target * const t)
+expr_from_target(ARGIN(lexer_state * const lexer),
+        ARGIN(target * const t))
 {
     expression *e = new_expr(lexer, EXPR_TARGET);
     e->expr.t     = t;
@@ -1835,7 +1866,8 @@
 PARROT_WARN_UNUSED_RESULT
 PARROT_CANNOT_RETURN_NULL
 expression *
-expr_from_const(ARGIN(lexer_state * const lexer), constant * const c)
+expr_from_const(ARGIN(lexer_state * const lexer),
+        ARGIN(constant * const c))
 {
     expression *e = new_expr(lexer, EXPR_CONSTANT);
     e->expr.c     = c;
@@ -1893,7 +1925,8 @@
 PARROT_WARN_UNUSED_RESULT
 PARROT_CANNOT_RETURN_NULL
 expression *
-expr_from_string(ARGIN(lexer_state * const lexer), char const * const sval)
+expr_from_string(ARGIN(lexer_state * const lexer),
+        ARGIN(char const * const sval))
 {
     return expr_from_const(lexer, new_const(lexer, STRING_VAL, sval));
 }
@@ -1912,7 +1945,8 @@
 PARROT_WARN_UNUSED_RESULT
 PARROT_CANNOT_RETURN_NULL
 expression *
-expr_from_ident(ARGIN(lexer_state * const lexer), char const * const id)
+expr_from_ident(ARGIN(lexer_state * const lexer),
+        ARGIN(char const * const id))
 {
     expression *e = new_expr(lexer, EXPR_IDENT);
     e->expr.id    = id;
@@ -1934,7 +1968,9 @@
 PARROT_CANNOT_RETURN_NULL
 PARROT_WARN_UNUSED_RESULT
 invocation *
-set_invocation_args(ARGIN(lexer_state * const lexer), invocation * const inv, argument * const args)
+set_invocation_args(ARGIN(lexer_state * const lexer),
+        ARGIN(invocation * const inv),
+        ARGIN(argument * const args))
 {
     argument *arg_iter;
     unsigned  arg_count = 0;
@@ -1987,7 +2023,9 @@
 PARROT_CANNOT_RETURN_NULL
 PARROT_WARN_UNUSED_RESULT
 invocation *
-set_invocation_results(ARGIN(lexer_state * const lexer), invocation * const inv, target * const results)
+set_invocation_results(ARGIN(lexer_state * const lexer),
+        ARGIN(invocation * const inv),
+        ARGIN(target * const results))
 {
     target  *result_iter;
     unsigned result_count = 0;
@@ -2033,7 +2071,7 @@
 PARROT_CANNOT_RETURN_NULL
 PARROT_WARN_UNUSED_RESULT
 invocation *
-set_invocation_type(invocation * const inv, invoke_type type)
+set_invocation_type(ARGIN(invocation * const inv), invoke_type type)
 {
     inv->type = type;
     return inv;
@@ -2108,7 +2146,9 @@
 
 */
 void
-set_lex_flag(ARGIN(lexer_state * const lexer), target * const t, char const * const name)
+set_lex_flag(ARGIN(lexer_state * const lexer),
+        ARGIN(target * const t),
+        ARGIN(char const * const name))
 {
     lexical *lex = CURRENT_SUB(lexer)->info.lexicals;
 
@@ -2147,7 +2187,8 @@
 
 */
 void
-set_hll(ARGIN(lexer_state * const lexer), char const * const hll)
+set_hll(ARGIN(lexer_state * const lexer),
+        ARGIN(char const * const hll))
 {
     STRING * const hll_name             = Parrot_str_new(lexer->interp, hll, strlen(hll));
     CONTEXT(lexer->interp)->current_HLL = Parrot_register_HLL(lexer->interp, hll_name);
@@ -2167,7 +2208,8 @@
 
 */
 void
-unshift_operand(ARGIN(lexer_state * const lexer), expression * const operand)
+unshift_operand(ARGIN(lexer_state * const lexer),
+        ARGIN(expression * const operand))
 {
     expression *last = CURRENT_INSTRUCTION(lexer)->operands;
     if (last) {
@@ -2193,7 +2235,8 @@
 
 */
 void
-push_operand(ARGIN(lexer_state * const lexer), ARGIN(expression * const operand))
+push_operand(ARGIN(lexer_state * const lexer),
+        ARGIN(expression * const operand))
 {
     PARROT_ASSERT(CURRENT_INSTRUCTION(lexer));
 
@@ -2334,7 +2377,7 @@
 PARROT_WARN_UNUSED_RESULT
 PARROT_CANNOT_RETURN_NULL
 symbol *
-add_local(symbol * const list, symbol * const local)
+add_local(ARGIN(symbol * const list), ARGIN(symbol * const local))
 {
     local->next = list->next;
     list->next  = local;
@@ -2344,8 +2387,8 @@
 
 /*
 
-=item C<symbol *
-new_local(char * const name, int has_unique_reg)>
+=item C<symbol * new_local(lexer_state * const lexer, char const * const name,
+int has_unique_reg)>
 
 Create a new symbol node to represent the local C<name>.
 If C<has_unique_reg> is true, the C<:unique_reg> flag is set.
@@ -2357,7 +2400,9 @@
 PARROT_WARN_UNUSED_RESULT
 PARROT_CANNOT_RETURN_NULL
 symbol *
-new_local(ARGIN(lexer_state * const lexer), char const * const name, int has_unique_reg){
+new_local(ARGIN(lexer_state * const lexer),
+        ARGIN(char const * const name), int has_unique_reg)
+{
     symbol *s = new_symbol(lexer, name, UNKNOWN_TYPE);
 
     if (has_unique_reg)
@@ -2380,7 +2425,8 @@
 
 */
 int
-is_parrot_op(ARGIN(lexer_state * const lexer), char const * const name)
+is_parrot_op(ARGIN(lexer_state * const lexer),
+        ARGIN(char const * const name))
 {
     int opcode = lexer->interp->op_lib->op_code(name, 0); /* check short name, e.g. "set" */
 
@@ -2411,9 +2457,8 @@
 
 */
 void
-new_sub_instr(ARGIN(lexer_state * const lexer), int opcode, char const * const opname,
-              unsigned num_var_args)
-
+new_sub_instr(ARGIN(lexer_state * const lexer), int opcode,
+        ARGIN(char const * const opname), unsigned num_var_args)
 {
     new_statement(lexer, opname);
     CURRENT_INSTRUCTION(lexer)->opinfo = &lexer->interp->op_info_table[opcode];
@@ -2444,7 +2489,8 @@
 
 */
 void
-update_op(ARGIN(lexer_state * const lexer), ARGIN(instruction * const instr), int newop)
+update_op(ARGIN(lexer_state * const lexer), ARGIN(instruction * const instr),
+        int newop)
 {
     /* Deduct number of ints needed for the old instruction, if there is one.
      * This is necessary during strength reduction and other optimizations, once
@@ -2702,7 +2748,8 @@
 
 */
 void
-update_sub_register_usage(ARGIN(lexer_state * const lexer), unsigned reg_usage[NUM_PARROT_TYPES])
+update_sub_register_usage(ARGIN(lexer_state * const lexer),
+        unsigned reg_usage[NUM_PARROT_TYPES])
 {
     int i;
     for (i = 0; i < NUM_PARROT_TYPES; ++i)
@@ -2721,7 +2768,9 @@
 
 */
 void
-annotate(ARGIN(lexer_state * const lexer), char const * const key, constant * const value)
+annotate(ARGIN(lexer_state * const lexer),
+        ARGIN(char const * const key),
+        ARGIN(constant * const value))
 {
     annotation *ann     = (annotation *)pir_mem_allocate(lexer, sizeof (annotation));
     ann->key            = key;

Modified: trunk/compilers/pirc/src/pircompunit.h
==============================================================================
--- trunk/compilers/pirc/src/pircompunit.h	Tue Feb 16 10:39:03 2010	(r44004)
+++ trunk/compilers/pirc/src/pircompunit.h	Tue Feb 16 10:39:31 2010	(r44005)
@@ -399,8 +399,9 @@
 
 PARROT_IGNORABLE_RESULT
 PARROT_CANNOT_RETURN_NULL
-argument * add_arg(ARGMOD(argument *last), argument * const newarg)
+argument * add_arg(ARGMOD(argument *last), ARGIN(argument * const newarg))
         __attribute__nonnull__(1)
+        __attribute__nonnull__(2)
         FUNC_MODIFIES(*last);
 
 PARROT_WARN_UNUSED_RESULT
@@ -415,35 +416,44 @@
 
 PARROT_WARN_UNUSED_RESULT
 PARROT_CANNOT_RETURN_NULL
-symbol * add_local(symbol * const list, symbol * const local);
+symbol * add_local(ARGIN(symbol * const list), ARGIN(symbol * const local))
+        __attribute__nonnull__(1)
+        __attribute__nonnull__(2);
 
 void add_operands(
     ARGIN(lexer_state * const lexer),
-    char const * const format,
+    ARGIN(char const * const format),
     ...)
-        __attribute__nonnull__(1);
+        __attribute__nonnull__(1)
+        __attribute__nonnull__(2);
 
 PARROT_IGNORABLE_RESULT
 PARROT_CANNOT_RETURN_NULL
 target * add_param(
     ARGIN(lexer_state * const lexer),
     pir_type type,
-    char const * const name)
-        __attribute__nonnull__(1);
+    ARGIN(char const * const name))
+        __attribute__nonnull__(1)
+        __attribute__nonnull__(3);
 
 PARROT_IGNORABLE_RESULT
 PARROT_CANNOT_RETURN_NULL
 target * add_target(
     ARGIN(lexer_state * const lexer),
-    target *last,
-    target * const t)
-        __attribute__nonnull__(1);
+    ARGMOD(target *last),
+    ARGIN(target * const t))
+        __attribute__nonnull__(1)
+        __attribute__nonnull__(2)
+        __attribute__nonnull__(3)
+        FUNC_MODIFIES(*last);
 
 void annotate(
     ARGIN(lexer_state * const lexer),
-    char const * const key,
-    constant * const value)
-        __attribute__nonnull__(1);
+    ARGIN(char const * const key),
+    ARGIN(constant * const value))
+        __attribute__nonnull__(1)
+        __attribute__nonnull__(2)
+        __attribute__nonnull__(3);
 
 void close_sub(ARGIN(lexer_state * const lexer))
         __attribute__nonnull__(1);
@@ -452,15 +462,17 @@
 PARROT_CANNOT_RETURN_NULL
 expression * expr_from_const(
     ARGIN(lexer_state * const lexer),
-    constant * const c)
-        __attribute__nonnull__(1);
+    ARGIN(constant * const c))
+        __attribute__nonnull__(1)
+        __attribute__nonnull__(2);
 
 PARROT_WARN_UNUSED_RESULT
 PARROT_CANNOT_RETURN_NULL
 expression * expr_from_ident(
     ARGIN(lexer_state * const lexer),
-    char const * const id)
-        __attribute__nonnull__(1);
+    ARGIN(char const * const id))
+        __attribute__nonnull__(1)
+        __attribute__nonnull__(2);
 
 PARROT_WARN_UNUSED_RESULT
 PARROT_CANNOT_RETURN_NULL
@@ -484,22 +496,25 @@
 PARROT_CANNOT_RETURN_NULL
 expression * expr_from_string(
     ARGIN(lexer_state * const lexer),
-    char const * const sval)
-        __attribute__nonnull__(1);
+    ARGIN(char const * const sval))
+        __attribute__nonnull__(1)
+        __attribute__nonnull__(2);
 
 PARROT_WARN_UNUSED_RESULT
 PARROT_CANNOT_RETURN_NULL
 expression * expr_from_target(
     ARGIN(lexer_state * const lexer),
-    target * const t)
-        __attribute__nonnull__(1);
+    ARGIN(target * const t))
+        __attribute__nonnull__(1)
+        __attribute__nonnull__(2);
 
 void fixup_global_labels(ARGIN(lexer_state * const lexer))
         __attribute__nonnull__(1);
 
 PARROT_CONST_FUNCTION
 PARROT_CANNOT_RETURN_NULL
-char const * get_inverse(char const * const instr);
+char const * get_inverse(ARGIN(char const * const instr))
+        __attribute__nonnull__(1);
 
 PARROT_WARN_UNUSED_RESULT
 PARROT_CANNOT_RETURN_NULL
@@ -521,20 +536,25 @@
 invocation * invoke(ARGIN(lexer_state * const lexer), invoke_type type, ...)
         __attribute__nonnull__(1);
 
-int is_parrot_op(ARGIN(lexer_state * const lexer), char const * const name)
-        __attribute__nonnull__(1);
+int is_parrot_op(
+    ARGIN(lexer_state * const lexer),
+    ARGIN(char const * const name))
+        __attribute__nonnull__(1)
+        __attribute__nonnull__(2);
 
 void load_library(
     ARGIN(lexer_state * const lexer),
-    char const * const library)
-        __attribute__nonnull__(1);
+    ARGIN(char const * const library))
+        __attribute__nonnull__(1)
+        __attribute__nonnull__(2);
 
 PARROT_WARN_UNUSED_RESULT
 PARROT_CANNOT_RETURN_NULL
 argument * new_argument(
     ARGIN(lexer_state * const lexer),
-    expression * const expr)
-        __attribute__nonnull__(1);
+    ARGIN(expression * const expr))
+        __attribute__nonnull__(1)
+        __attribute__nonnull__(2);
 
 PARROT_WARN_UNUSED_RESULT
 PARROT_CANNOT_RETURN_NULL
@@ -551,21 +571,34 @@
 
 PARROT_WARN_UNUSED_RESULT
 PARROT_CANNOT_RETURN_NULL
+symbol * new_local(
+    ARGIN(lexer_state * const lexer),
+    ARGIN(char const * const name),
+    int has_unique_reg)
+        __attribute__nonnull__(1)
+        __attribute__nonnull__(2);
+
+PARROT_WARN_UNUSED_RESULT
+PARROT_CANNOT_RETURN_NULL
 constdecl * new_named_const(
     ARGIN(lexer_state * const lexer),
     value_type type,
-    char const * const name,
+    ARGIN(char const * const name),
     ...)
-        __attribute__nonnull__(1);
+        __attribute__nonnull__(1)
+        __attribute__nonnull__(3);
 
 PARROT_CANNOT_RETURN_NULL
 PARROT_WARN_UNUSED_RESULT
 constdecl * new_pmc_const(
     ARGIN(lexer_state * const lexer),
-    char const * const type,
-    char const * const name,
-    constant * const value)
-        __attribute__nonnull__(1);
+    ARGIN(char const * const type),
+    ARGIN(char const * const name),
+    ARGIN(constant * const value))
+        __attribute__nonnull__(1)
+        __attribute__nonnull__(2)
+        __attribute__nonnull__(3)
+        __attribute__nonnull__(4);
 
 PARROT_WARN_UNUSED_RESULT
 PARROT_CANNOT_RETURN_NULL
@@ -575,12 +608,14 @@
 void new_sub_instr(
     ARGIN(lexer_state * const lexer),
     int opcode,
-    char const * const opname,
+    ARGIN(char const * const opname),
     unsigned num_var_args)
-        __attribute__nonnull__(1);
+        __attribute__nonnull__(1)
+        __attribute__nonnull__(3);
 
-void new_subr(ARGIN(lexer_state * const lexer), STRING *subname)
-        __attribute__nonnull__(1);
+void new_subr(ARGIN(lexer_state * const lexer), ARGIN(STRING *subname))
+        __attribute__nonnull__(1)
+        __attribute__nonnull__(2);
 
 PARROT_WARN_UNUSED_RESULT
 PARROT_CANNOT_RETURN_NULL
@@ -603,71 +638,96 @@
 PARROT_CANNOT_RETURN_NULL
 argument * set_arg_alias(
     ARGIN(lexer_state * const lexer),
-    char const * const alias)
-        __attribute__nonnull__(1);
+    ARGIN(char const * const alias))
+        __attribute__nonnull__(1)
+        __attribute__nonnull__(2);
 
 PARROT_IGNORABLE_RESULT
 PARROT_CANNOT_RETURN_NULL
-argument * set_arg_flag(argument * const arg, arg_flag flag);
+argument * set_arg_flag(ARGIN(argument * const arg), arg_flag flag)
+        __attribute__nonnull__(1);
 
 PARROT_IGNORABLE_RESULT
 PARROT_CANNOT_RETURN_NULL
 argument * set_curarg(
     ARGIN(lexer_state * const lexer),
-    argument * const arg)
-        __attribute__nonnull__(1);
+    ARGIN(argument * const arg))
+        __attribute__nonnull__(1)
+        __attribute__nonnull__(2);
 
 PARROT_IGNORABLE_RESULT
 PARROT_CANNOT_RETURN_NULL
-target * set_curtarget(ARGIN(lexer_state * const lexer), target * const t)
-        __attribute__nonnull__(1);
+target * set_curtarget(
+    ARGIN(lexer_state * const lexer),
+    ARGIN(target * const t))
+        __attribute__nonnull__(1)
+        __attribute__nonnull__(2);
 
-void set_hll(ARGIN(lexer_state * const lexer), char const * const hll)
-        __attribute__nonnull__(1);
+void set_hll(
+    ARGIN(lexer_state * const lexer),
+    ARGIN(char const * const hll))
+        __attribute__nonnull__(1)
+        __attribute__nonnull__(2);
 
-void set_instr(ARGIN(lexer_state * const lexer), char const * const opname)
-        __attribute__nonnull__(1);
+void set_instr(
+    ARGIN(lexer_state * const lexer),
+    ARGIN(char const * const opname))
+        __attribute__nonnull__(1)
+        __attribute__nonnull__(2);
 
 void set_instrf(
     ARGIN(lexer_state * const lexer),
-    char const * const opname,
-    char const * const format,
+    ARGIN(char const * const opname),
+    ARGIN(char const * const format),
     ...)
-        __attribute__nonnull__(1);
+        __attribute__nonnull__(1)
+        __attribute__nonnull__(2)
+        __attribute__nonnull__(3);
 
 PARROT_CANNOT_RETURN_NULL
 PARROT_WARN_UNUSED_RESULT
 invocation * set_invocation_args(
     ARGIN(lexer_state * const lexer),
-    invocation * const inv,
-    argument * const args)
-        __attribute__nonnull__(1);
+    ARGIN(invocation * const inv),
+    ARGIN(argument * const args))
+        __attribute__nonnull__(1)
+        __attribute__nonnull__(2)
+        __attribute__nonnull__(3);
 
 PARROT_CANNOT_RETURN_NULL
 PARROT_WARN_UNUSED_RESULT
 invocation * set_invocation_results(
     ARGIN(lexer_state * const lexer),
-    invocation * const inv,
-    target * const results)
-        __attribute__nonnull__(1);
+    ARGIN(invocation * const inv),
+    ARGIN(target * const results))
+        __attribute__nonnull__(1)
+        __attribute__nonnull__(2)
+        __attribute__nonnull__(3);
 
 PARROT_CANNOT_RETURN_NULL
 PARROT_WARN_UNUSED_RESULT
-invocation * set_invocation_type(invocation * const inv, invoke_type type);
+invocation * set_invocation_type(
+    ARGIN(invocation * const inv),
+    invoke_type type)
+        __attribute__nonnull__(1);
 
 void set_label(
     ARGIN(lexer_state * const lexer),
-    char const * const labelname)
-        __attribute__nonnull__(1);
+    ARGIN(char const * const labelname))
+        __attribute__nonnull__(1)
+        __attribute__nonnull__(2);
 
 void set_lex_flag(
     ARGIN(lexer_state * const lexer),
-    target * const t,
-    char const * const name)
-        __attribute__nonnull__(1);
+    ARGIN(target * const t),
+    ARGIN(char const * const name))
+        __attribute__nonnull__(1)
+        __attribute__nonnull__(2)
+        __attribute__nonnull__(3);
 
-void set_namespace(ARGIN(lexer_state * const lexer), key * const ns)
-        __attribute__nonnull__(1);
+void set_namespace(ARGIN(lexer_state * const lexer), ARGIN(key * const ns))
+        __attribute__nonnull__(1)
+        __attribute__nonnull__(2);
 
 void set_op_labelflag(ARGIN(lexer_state * const lexer), int flag)
         __attribute__nonnull__(1);
@@ -676,85 +736,109 @@
 PARROT_CANNOT_RETURN_NULL
 target * set_param_alias(
     ARGIN(lexer_state * const lexer),
-    char const * const alias)
-        __attribute__nonnull__(1);
+    ARGIN(char const * const alias))
+        __attribute__nonnull__(1)
+        __attribute__nonnull__(2);
 
 PARROT_IGNORABLE_RESULT
 PARROT_CANNOT_RETURN_NULL
 target * set_param_flag(
     ARGIN(lexer_state * const lexer),
-    target * const param,
+    ARGIN(target * const param),
     target_flag flag)
-        __attribute__nonnull__(1);
+        __attribute__nonnull__(1)
+        __attribute__nonnull__(2);
 
 void set_sub_flag(ARGIN(lexer_state * const lexer), sub_flag flag)
         __attribute__nonnull__(1);
 
 void set_sub_instanceof(
     ARGIN(lexer_state * const lexer),
-    char const * const classname)
-        __attribute__nonnull__(1);
+    ARGIN(char const * const classname))
+        __attribute__nonnull__(1)
+        __attribute__nonnull__(2);
 
 void set_sub_methodname(
     ARGIN(lexer_state * const lexer),
-    char const * const methodname)
-        __attribute__nonnull__(1);
+    ARGIN(char const * const methodname))
+        __attribute__nonnull__(1)
+        __attribute__nonnull__(2);
 
 void set_sub_multi_types(
     ARGIN(lexer_state * const lexer),
-    expression * const multitype)
-        __attribute__nonnull__(1);
+    ARGIN(expression * const multitype))
+        __attribute__nonnull__(1)
+        __attribute__nonnull__(2);
 
 void set_sub_name(
     ARGIN(lexer_state * const lexer),
-    char const * const subname)
-        __attribute__nonnull__(1);
+    ARGIN(char const * const subname))
+        __attribute__nonnull__(1)
+        __attribute__nonnull__(2);
 
 void set_sub_nsentry(
     ARGIN(lexer_state * const lexer),
-    char const * const nsentry)
-        __attribute__nonnull__(1);
+    ARGIN(char const * const nsentry))
+        __attribute__nonnull__(1)
+        __attribute__nonnull__(2);
 
 void set_sub_outer(
     ARGIN(lexer_state * const lexer),
-    char const * const outersub)
-        __attribute__nonnull__(1);
+    ARGIN(char const * const outersub))
+        __attribute__nonnull__(1)
+        __attribute__nonnull__(2);
 
 void set_sub_subid(
     ARGIN(lexer_state * const lexer),
-    char const * const subid)
-        __attribute__nonnull__(1);
+    ARGIN(char const * const subid))
+        __attribute__nonnull__(1)
+        __attribute__nonnull__(2);
 
 void set_sub_vtable(
     ARGIN(lexer_state * const lexer),
-    char const * vtablename)
-        __attribute__nonnull__(1);
+    ARGIN(char const * vtablename))
+        __attribute__nonnull__(1)
+        __attribute__nonnull__(2);
+
+void set_target_key(ARGIN(target * const t), ARGIN(key * const k))
+        __attribute__nonnull__(1)
+        __attribute__nonnull__(2);
 
-void set_target_key(target * const t, key * const k);
 PARROT_WARN_UNUSED_RESULT
 PARROT_CANNOT_RETURN_NULL
 target * target_from_symbol(
     ARGIN(lexer_state * const lexer),
-    symbol * const sym)
-        __attribute__nonnull__(1);
+    ARGIN(symbol * const sym))
+        __attribute__nonnull__(1)
+        __attribute__nonnull__(2);
 
 PARROT_PURE_FUNCTION
 PARROT_WARN_UNUSED_RESULT
-int targets_equal(target const * const left, target const * const right);
+int targets_equal(
+    ARGIN(target const * const left),
+    ARGIN(target const * const right))
+        __attribute__nonnull__(1)
+        __attribute__nonnull__(2);
 
 PARROT_IGNORABLE_RESULT
 PARROT_CANNOT_RETURN_NULL
-argument * unshift_arg(invocation * const inv, argument * const newarg);
+argument * unshift_arg(
+    ARGIN(invocation * const inv),
+    ARGIN(argument * const newarg))
+        __attribute__nonnull__(1)
+        __attribute__nonnull__(2);
 
 void unshift_operand(
     ARGIN(lexer_state * const lexer),
-    expression * const operand)
-        __attribute__nonnull__(1);
+    ARGIN(expression * const operand))
+        __attribute__nonnull__(1)
+        __attribute__nonnull__(2);
 
 void update_instr(
     ARGIN(lexer_state * const lexer),
-    char const * const newop)
-        __attribute__nonnull__(1);
+    ARGIN(char const * const newop))
+        __attribute__nonnull__(1)
+        __attribute__nonnull__(2);
 
 void update_op(
     ARGIN(lexer_state * const lexer),
@@ -769,26 +853,37 @@
         __attribute__nonnull__(1);
 
 #define ASSERT_ARGS_add_arg __attribute__unused__ int _ASSERT_ARGS_CHECK = (\
-       PARROT_ASSERT_ARG(last))
+       PARROT_ASSERT_ARG(last) \
+    , PARROT_ASSERT_ARG(newarg))
 #define ASSERT_ARGS_add_key __attribute__unused__ int _ASSERT_ARGS_CHECK = (\
        PARROT_ASSERT_ARG(lexer) \
     , PARROT_ASSERT_ARG(keylist) \
     , PARROT_ASSERT_ARG(exprkey))
-#define ASSERT_ARGS_add_local __attribute__unused__ int _ASSERT_ARGS_CHECK = (0)
+#define ASSERT_ARGS_add_local __attribute__unused__ int _ASSERT_ARGS_CHECK = (\
+       PARROT_ASSERT_ARG(list) \
+    , PARROT_ASSERT_ARG(local))
 #define ASSERT_ARGS_add_operands __attribute__unused__ int _ASSERT_ARGS_CHECK = (\
-       PARROT_ASSERT_ARG(lexer))
+       PARROT_ASSERT_ARG(lexer) \
+    , PARROT_ASSERT_ARG(format))
 #define ASSERT_ARGS_add_param __attribute__unused__ int _ASSERT_ARGS_CHECK = (\
-       PARROT_ASSERT_ARG(lexer))
+       PARROT_ASSERT_ARG(lexer) \
+    , PARROT_ASSERT_ARG(name))
 #define ASSERT_ARGS_add_target __attribute__unused__ int _ASSERT_ARGS_CHECK = (\
-       PARROT_ASSERT_ARG(lexer))
+       PARROT_ASSERT_ARG(lexer) \
+    , PARROT_ASSERT_ARG(last) \
+    , PARROT_ASSERT_ARG(t))
 #define ASSERT_ARGS_annotate __attribute__unused__ int _ASSERT_ARGS_CHECK = (\
-       PARROT_ASSERT_ARG(lexer))
+       PARROT_ASSERT_ARG(lexer) \
+    , PARROT_ASSERT_ARG(key) \
+    , PARROT_ASSERT_ARG(value))
 #define ASSERT_ARGS_close_sub __attribute__unused__ int _ASSERT_ARGS_CHECK = (\
        PARROT_ASSERT_ARG(lexer))
 #define ASSERT_ARGS_expr_from_const __attribute__unused__ int _ASSERT_ARGS_CHECK = (\
-       PARROT_ASSERT_ARG(lexer))
+       PARROT_ASSERT_ARG(lexer) \
+    , PARROT_ASSERT_ARG(c))
 #define ASSERT_ARGS_expr_from_ident __attribute__unused__ int _ASSERT_ARGS_CHECK = (\
-       PARROT_ASSERT_ARG(lexer))
+       PARROT_ASSERT_ARG(lexer) \
+    , PARROT_ASSERT_ARG(id))
 #define ASSERT_ARGS_expr_from_int __attribute__unused__ int _ASSERT_ARGS_CHECK = (\
        PARROT_ASSERT_ARG(lexer))
 #define ASSERT_ARGS_expr_from_key __attribute__unused__ int _ASSERT_ARGS_CHECK = (\
@@ -797,12 +892,15 @@
 #define ASSERT_ARGS_expr_from_num __attribute__unused__ int _ASSERT_ARGS_CHECK = (\
        PARROT_ASSERT_ARG(lexer))
 #define ASSERT_ARGS_expr_from_string __attribute__unused__ int _ASSERT_ARGS_CHECK = (\
-       PARROT_ASSERT_ARG(lexer))
+       PARROT_ASSERT_ARG(lexer) \
+    , PARROT_ASSERT_ARG(sval))
 #define ASSERT_ARGS_expr_from_target __attribute__unused__ int _ASSERT_ARGS_CHECK = (\
-       PARROT_ASSERT_ARG(lexer))
+       PARROT_ASSERT_ARG(lexer) \
+    , PARROT_ASSERT_ARG(t))
 #define ASSERT_ARGS_fixup_global_labels __attribute__unused__ int _ASSERT_ARGS_CHECK = (\
        PARROT_ASSERT_ARG(lexer))
-#define ASSERT_ARGS_get_inverse __attribute__unused__ int _ASSERT_ARGS_CHECK = (0)
+#define ASSERT_ARGS_get_inverse __attribute__unused__ int _ASSERT_ARGS_CHECK = (\
+       PARROT_ASSERT_ARG(instr))
 #define ASSERT_ARGS_get_operand __attribute__unused__ int _ASSERT_ARGS_CHECK = (\
        PARROT_ASSERT_ARG(lexer))
 #define ASSERT_ARGS_get_operand_count __attribute__unused__ int _ASSERT_ARGS_CHECK = (\
@@ -814,26 +912,38 @@
 #define ASSERT_ARGS_invoke __attribute__unused__ int _ASSERT_ARGS_CHECK = (\
        PARROT_ASSERT_ARG(lexer))
 #define ASSERT_ARGS_is_parrot_op __attribute__unused__ int _ASSERT_ARGS_CHECK = (\
-       PARROT_ASSERT_ARG(lexer))
+       PARROT_ASSERT_ARG(lexer) \
+    , PARROT_ASSERT_ARG(name))
 #define ASSERT_ARGS_load_library __attribute__unused__ int _ASSERT_ARGS_CHECK = (\
-       PARROT_ASSERT_ARG(lexer))
+       PARROT_ASSERT_ARG(lexer) \
+    , PARROT_ASSERT_ARG(library))
 #define ASSERT_ARGS_new_argument __attribute__unused__ int _ASSERT_ARGS_CHECK = (\
-       PARROT_ASSERT_ARG(lexer))
+       PARROT_ASSERT_ARG(lexer) \
+    , PARROT_ASSERT_ARG(expr))
 #define ASSERT_ARGS_new_const __attribute__unused__ int _ASSERT_ARGS_CHECK = (\
        PARROT_ASSERT_ARG(lexer))
 #define ASSERT_ARGS_new_key __attribute__unused__ int _ASSERT_ARGS_CHECK = (\
        PARROT_ASSERT_ARG(lexer) \
     , PARROT_ASSERT_ARG(expr))
+#define ASSERT_ARGS_new_local __attribute__unused__ int _ASSERT_ARGS_CHECK = (\
+       PARROT_ASSERT_ARG(lexer) \
+    , PARROT_ASSERT_ARG(name))
 #define ASSERT_ARGS_new_named_const __attribute__unused__ int _ASSERT_ARGS_CHECK = (\
-       PARROT_ASSERT_ARG(lexer))
+       PARROT_ASSERT_ARG(lexer) \
+    , PARROT_ASSERT_ARG(name))
 #define ASSERT_ARGS_new_pmc_const __attribute__unused__ int _ASSERT_ARGS_CHECK = (\
-       PARROT_ASSERT_ARG(lexer))
+       PARROT_ASSERT_ARG(lexer) \
+    , PARROT_ASSERT_ARG(type) \
+    , PARROT_ASSERT_ARG(name) \
+    , PARROT_ASSERT_ARG(value))
 #define ASSERT_ARGS_new_reg __attribute__unused__ int _ASSERT_ARGS_CHECK = (\
        PARROT_ASSERT_ARG(lexer))
 #define ASSERT_ARGS_new_sub_instr __attribute__unused__ int _ASSERT_ARGS_CHECK = (\
-       PARROT_ASSERT_ARG(lexer))
+       PARROT_ASSERT_ARG(lexer) \
+    , PARROT_ASSERT_ARG(opname))
 #define ASSERT_ARGS_new_subr __attribute__unused__ int _ASSERT_ARGS_CHECK = (\
-       PARROT_ASSERT_ARG(lexer))
+       PARROT_ASSERT_ARG(lexer) \
+    , PARROT_ASSERT_ARG(subname))
 #define ASSERT_ARGS_new_target __attribute__unused__ int _ASSERT_ARGS_CHECK = (\
        PARROT_ASSERT_ARG(lexer))
 #define ASSERT_ARGS_push_operand __attribute__unused__ int _ASSERT_ARGS_CHECK = (\
@@ -844,62 +954,98 @@
 #define ASSERT_ARGS_reset_register_allocator __attribute__unused__ int _ASSERT_ARGS_CHECK = (\
        PARROT_ASSERT_ARG(lexer))
 #define ASSERT_ARGS_set_arg_alias __attribute__unused__ int _ASSERT_ARGS_CHECK = (\
-       PARROT_ASSERT_ARG(lexer))
-#define ASSERT_ARGS_set_arg_flag __attribute__unused__ int _ASSERT_ARGS_CHECK = (0)
+       PARROT_ASSERT_ARG(lexer) \
+    , PARROT_ASSERT_ARG(alias))
+#define ASSERT_ARGS_set_arg_flag __attribute__unused__ int _ASSERT_ARGS_CHECK = (\
+       PARROT_ASSERT_ARG(arg))
 #define ASSERT_ARGS_set_curarg __attribute__unused__ int _ASSERT_ARGS_CHECK = (\
-       PARROT_ASSERT_ARG(lexer))
+       PARROT_ASSERT_ARG(lexer) \
+    , PARROT_ASSERT_ARG(arg))
 #define ASSERT_ARGS_set_curtarget __attribute__unused__ int _ASSERT_ARGS_CHECK = (\
-       PARROT_ASSERT_ARG(lexer))
+       PARROT_ASSERT_ARG(lexer) \
+    , PARROT_ASSERT_ARG(t))
 #define ASSERT_ARGS_set_hll __attribute__unused__ int _ASSERT_ARGS_CHECK = (\
-       PARROT_ASSERT_ARG(lexer))
+       PARROT_ASSERT_ARG(lexer) \
+    , PARROT_ASSERT_ARG(hll))
 #define ASSERT_ARGS_set_instr __attribute__unused__ int _ASSERT_ARGS_CHECK = (\
-       PARROT_ASSERT_ARG(lexer))
+       PARROT_ASSERT_ARG(lexer) \
+    , PARROT_ASSERT_ARG(opname))
 #define ASSERT_ARGS_set_instrf __attribute__unused__ int _ASSERT_ARGS_CHECK = (\
-       PARROT_ASSERT_ARG(lexer))
+       PARROT_ASSERT_ARG(lexer) \
+    , PARROT_ASSERT_ARG(opname) \
+    , PARROT_ASSERT_ARG(format))
 #define ASSERT_ARGS_set_invocation_args __attribute__unused__ int _ASSERT_ARGS_CHECK = (\
-       PARROT_ASSERT_ARG(lexer))
+       PARROT_ASSERT_ARG(lexer) \
+    , PARROT_ASSERT_ARG(inv) \
+    , PARROT_ASSERT_ARG(args))
 #define ASSERT_ARGS_set_invocation_results __attribute__unused__ int _ASSERT_ARGS_CHECK = (\
-       PARROT_ASSERT_ARG(lexer))
-#define ASSERT_ARGS_set_invocation_type __attribute__unused__ int _ASSERT_ARGS_CHECK = (0)
+       PARROT_ASSERT_ARG(lexer) \
+    , PARROT_ASSERT_ARG(inv) \
+    , PARROT_ASSERT_ARG(results))
+#define ASSERT_ARGS_set_invocation_type __attribute__unused__ int _ASSERT_ARGS_CHECK = (\
+       PARROT_ASSERT_ARG(inv))
 #define ASSERT_ARGS_set_label __attribute__unused__ int _ASSERT_ARGS_CHECK = (\
-       PARROT_ASSERT_ARG(lexer))
+       PARROT_ASSERT_ARG(lexer) \
+    , PARROT_ASSERT_ARG(labelname))
 #define ASSERT_ARGS_set_lex_flag __attribute__unused__ int _ASSERT_ARGS_CHECK = (\
-       PARROT_ASSERT_ARG(lexer))
+       PARROT_ASSERT_ARG(lexer) \
+    , PARROT_ASSERT_ARG(t) \
+    , PARROT_ASSERT_ARG(name))
 #define ASSERT_ARGS_set_namespace __attribute__unused__ int _ASSERT_ARGS_CHECK = (\
-       PARROT_ASSERT_ARG(lexer))
+       PARROT_ASSERT_ARG(lexer) \
+    , PARROT_ASSERT_ARG(ns))
 #define ASSERT_ARGS_set_op_labelflag __attribute__unused__ int _ASSERT_ARGS_CHECK = (\
        PARROT_ASSERT_ARG(lexer))
 #define ASSERT_ARGS_set_param_alias __attribute__unused__ int _ASSERT_ARGS_CHECK = (\
-       PARROT_ASSERT_ARG(lexer))
+       PARROT_ASSERT_ARG(lexer) \
+    , PARROT_ASSERT_ARG(alias))
 #define ASSERT_ARGS_set_param_flag __attribute__unused__ int _ASSERT_ARGS_CHECK = (\
-       PARROT_ASSERT_ARG(lexer))
+       PARROT_ASSERT_ARG(lexer) \
+    , PARROT_ASSERT_ARG(param))
 #define ASSERT_ARGS_set_sub_flag __attribute__unused__ int _ASSERT_ARGS_CHECK = (\
        PARROT_ASSERT_ARG(lexer))
 #define ASSERT_ARGS_set_sub_instanceof __attribute__unused__ int _ASSERT_ARGS_CHECK = (\
-       PARROT_ASSERT_ARG(lexer))
+       PARROT_ASSERT_ARG(lexer) \
+    , PARROT_ASSERT_ARG(classname))
 #define ASSERT_ARGS_set_sub_methodname __attribute__unused__ int _ASSERT_ARGS_CHECK = (\
-       PARROT_ASSERT_ARG(lexer))
+       PARROT_ASSERT_ARG(lexer) \
+    , PARROT_ASSERT_ARG(methodname))
 #define ASSERT_ARGS_set_sub_multi_types __attribute__unused__ int _ASSERT_ARGS_CHECK = (\
-       PARROT_ASSERT_ARG(lexer))
+       PARROT_ASSERT_ARG(lexer) \
+    , PARROT_ASSERT_ARG(multitype))
 #define ASSERT_ARGS_set_sub_name __attribute__unused__ int _ASSERT_ARGS_CHECK = (\
-       PARROT_ASSERT_ARG(lexer))
+       PARROT_ASSERT_ARG(lexer) \
+    , PARROT_ASSERT_ARG(subname))
 #define ASSERT_ARGS_set_sub_nsentry __attribute__unused__ int _ASSERT_ARGS_CHECK = (\
-       PARROT_ASSERT_ARG(lexer))
+       PARROT_ASSERT_ARG(lexer) \
+    , PARROT_ASSERT_ARG(nsentry))
 #define ASSERT_ARGS_set_sub_outer __attribute__unused__ int _ASSERT_ARGS_CHECK = (\
-       PARROT_ASSERT_ARG(lexer))
+       PARROT_ASSERT_ARG(lexer) \
+    , PARROT_ASSERT_ARG(outersub))
 #define ASSERT_ARGS_set_sub_subid __attribute__unused__ int _ASSERT_ARGS_CHECK = (\
-       PARROT_ASSERT_ARG(lexer))
+       PARROT_ASSERT_ARG(lexer) \
+    , PARROT_ASSERT_ARG(subid))
 #define ASSERT_ARGS_set_sub_vtable __attribute__unused__ int _ASSERT_ARGS_CHECK = (\
-       PARROT_ASSERT_ARG(lexer))
-#define ASSERT_ARGS_set_target_key __attribute__unused__ int _ASSERT_ARGS_CHECK = (0)
+       PARROT_ASSERT_ARG(lexer) \
+    , PARROT_ASSERT_ARG(vtablename))
+#define ASSERT_ARGS_set_target_key __attribute__unused__ int _ASSERT_ARGS_CHECK = (\
+       PARROT_ASSERT_ARG(t) \
+    , PARROT_ASSERT_ARG(k))
 #define ASSERT_ARGS_target_from_symbol __attribute__unused__ int _ASSERT_ARGS_CHECK = (\
-       PARROT_ASSERT_ARG(lexer))
-#define ASSERT_ARGS_targets_equal __attribute__unused__ int _ASSERT_ARGS_CHECK = (0)
-#define ASSERT_ARGS_unshift_arg __attribute__unused__ int _ASSERT_ARGS_CHECK = (0)
+       PARROT_ASSERT_ARG(lexer) \
+    , PARROT_ASSERT_ARG(sym))
+#define ASSERT_ARGS_targets_equal __attribute__unused__ int _ASSERT_ARGS_CHECK = (\
+       PARROT_ASSERT_ARG(left) \
+    , PARROT_ASSERT_ARG(right))
+#define ASSERT_ARGS_unshift_arg __attribute__unused__ int _ASSERT_ARGS_CHECK = (\
+       PARROT_ASSERT_ARG(inv) \
+    , PARROT_ASSERT_ARG(newarg))
 #define ASSERT_ARGS_unshift_operand __attribute__unused__ int _ASSERT_ARGS_CHECK = (\
-       PARROT_ASSERT_ARG(lexer))
+       PARROT_ASSERT_ARG(lexer) \
+    , PARROT_ASSERT_ARG(operand))
 #define ASSERT_ARGS_update_instr __attribute__unused__ int _ASSERT_ARGS_CHECK = (\
-       PARROT_ASSERT_ARG(lexer))
+       PARROT_ASSERT_ARG(lexer) \
+    , PARROT_ASSERT_ARG(newop))
 #define ASSERT_ARGS_update_op __attribute__unused__ int _ASSERT_ARGS_CHECK = (\
        PARROT_ASSERT_ARG(lexer) \
     , PARROT_ASSERT_ARG(instr))


More information about the parrot-commits mailing list