summary refs log tree commit diff
path: root/mach/shortcut.awk
diff options
context:
space:
mode:
Diffstat (limited to 'mach/shortcut.awk')
-rw-r--r--mach/shortcut.awk5
1 files changed, 4 insertions, 1 deletions
diff --git a/mach/shortcut.awk b/mach/shortcut.awk
index d6090d7bf7..987cebe325 100644
--- a/mach/shortcut.awk
+++ b/mach/shortcut.awk
@@ -35,11 +35,14 @@ echo == 1 { print $0; }
     print "{";
     print "  kern_return_t err;";
     print "  extern kern_return_t " syscall " (" proto ");";
+    print "  extern kern_return_t " rpc " (" proto ");";
     print "  err = " syscall " (" arglist ");";
     print "  if (err == MACH_SEND_INTERRUPTED)";
     print "    err = " rpc " (" arglist ");";
     print "  return err;"
     print "}";
-    print "weak_alias (" call ", " alias ")"
+    print "weak_alias (" call ", " alias ")";
+    # Declare RPC so the weak_alias that follows will work.
+    print "extern __typeof (" call ") " rpc ";";
     echo = 1;
   }