diff -r a880b911554e libgo/go/syscall/mksyscall.awk
--- a/libgo/go/syscall/mksyscall.awk	Fri Oct 28 15:05:12 2011 -0700
+++ b/libgo/go/syscall/mksyscall.awk	Mon Oct 31 14:41:12 2011 -0700
@@ -170,7 +170,7 @@
 	    printf("\t}\n")
 
 	    ++carg
-	    if (match(cargs[carg], "^([^ ]*) ([^ ]*)$", cparam) == 0) {
+	    if (split(cargs[carg], cparam) != 2) {
 		print loc, "bad C parameter:", cargs[carg] | "cat 1>&2"
 		status = 1
 		next
@@ -207,7 +207,7 @@
 	}
 	usedr = 0
 	for (goresult = 1; goresults[goresult] != ""; goresult++) {
-	    if (match(goresults[goresult], "^([^ ]*) ([^ ]*)$", goparam) == 0) {
+	    if (split(goresults[goresult], goparam) != 2) {
 		print loc, "bad result:", goresults[goresult] | "cat 1>&2"
 		status = 1
 		next
