Index: gtkdoc-mkdb.in
===================================================================
--- gtkdoc-mkdb.in	(Revision 429)
+++ gtkdoc-mkdb.in	(Arbeitskopie)
@@ -1299,7 +1299,9 @@
 	    }
 
 	# allow alphanumerics, '_', '[' & ']' in param names
-	} elsif ($declaration =~ s/^\s*((?:G_CONST_RETURN|G_GNUC_UNUSED|unsigned|signed|long|short|volatile|const)\s+)*((?:struct|enum)?\s*\w+)\s*((?:(?:const|restrict)?\s*\*\s*(?:const|restrict)?\s*)*)(\w+)?\s*((?:\[\S*\])*)\s*[,\n]//) {
+	# Try to match a standard parameter (keep in sync with gtkdoc-mktmpl)
+        #                                $1                                                                              $2                         $3                                                       $4       $5
+	} elsif ($declaration =~ s/^\s*((?:G_CONST_RETURN|G_GNUC_UNUSED|unsigned|signed|long|short|volatile|const)\s+)*((?:struct|enum)?\s*\w+)\s*((?:(?:const|restrict)?\s*\*?\s*(?:const|restrict)?\s*)*)(\w+)?\s*((?:\[\S*\])*)\s*[,\n]//) {
 	    my $pre	= defined($1) ? $1 : "";
 	    my $type	= $2;
 	    my $ptr	= defined($3) ? $3 : "";
@@ -1328,8 +1330,10 @@
 		    . " $label";
 	    }
 
-	    # Try to match parameters which are functions.
-	} elsif ($declaration =~ s/^(const\s+|unsigned\s+)*(struct\s+)?(\w+)\s*(\**(?:\s*restrict)?)\s*(const\s+)?\((\s*\*)+\s*(\w+)\s*\)\s*\(([^)]*)\)\s*[,\n]//) {
+	# Try to match parameters which are functions (keep in sync with gtkdoc-mktmpl)
+        #                             $1                                       $2          $3      $4                      $5                    $7             $8
+	} elsif ($declaration =~ s/^(const\s+|G_CONST_RETURN\s+|unsigned\s+)*(struct\s+)?(\w+)\s*(\**)\s*(?:restrict)?\s*(const\s+)?\(\s*\*+\s*(\w+)\s*\)\s*\(([^)]*)\)\s*[,\n]//) {
+	#} elsif ($declaration =~ s/^(const\s+|G_CONST_RETURN\s+|unsigned\s+)*(struct\s+)?(\w+)\s*(\**(?:\s*restrict)?)\s*(const\s+)?\((\s*\*)+\s*(\w+)\s*\)\s*\(([^)]*)\)\s*[,\n]//) {
 	    my $mod1 = defined($1) ? $1 : "";
 	    if (defined($2)) { $mod1 .= $2; }
 	    my $type = $3;
Index: gtkdoc-mktmpl.in
===================================================================
--- gtkdoc-mktmpl.in	(Revision 429)
+++ gtkdoc-mktmpl.in	(Arbeitskopie)
@@ -393,8 +393,9 @@
 		$output .= &OutputParam ($symbol, "Varargs",
 					 $template_exists, 1, "");
 
-		# Try to match a standard parameter.
-	    } elsif ($declaration =~ s/^\s*((?:G_CONST_RETURN|G_GNUC_UNUSED|unsigned|signed|long|short|volatile|const)\s+)*((?:struct|enum)?\s*\w+)\s*((?:(?:const|restrict)?\s*\*\s*(?:const|restrict)?\s*)*)(\w+)?\s*((?:\[\S*\])*)\s*[,\n]//) {
+	    # Try to match a standard parameter (keep in sync with gtkdoc-mkdb)
+            #                                $1                                                                              $2                         $3                                                       $4       $5
+	    } elsif ($declaration =~ s/^\s*((?:G_CONST_RETURN|G_GNUC_UNUSED|unsigned|signed|long|short|volatile|const)\s+)*((?:struct|enum)?\s*\w+)\s*((?:(?:const|restrict)?\s*\*?\s*(?:const|restrict)?\s*)*)(\w+)?\s*((?:\[\S*\])*)\s*[,\n]//) {
 		if (defined ($4)) {
 		    $name = $4;
 		} else {
@@ -403,7 +404,8 @@
 		$output .= &OutputParam ($symbol, $name, $template_exists, 1,
 					 "");
 
-		# Try to match parameters which are functions.
+            # Try to match parameters which are functions (keep in sync with gtkdoc-mkdb)
+            #                             $1                                       $2          $3      $4                      $5                    $7             $8
 	    } elsif ($declaration =~ s/^(const\s+|G_CONST_RETURN\s+|unsigned\s+)*(struct\s+)?(\w+)\s*(\**)\s*(?:restrict)?\s*(const\s+)?\(\s*\*+\s*(\w+)\s*\)\s*\(([^)]*)\)\s*[,\n]//) {
 	        $name = $6;
 		$output .= &OutputParam ($symbol, $name, $template_exists, 1,
