-sub make_decl_init ($$$$) {
- my ($n, $t, $a, $initcode) = @_;
+sub split_type_args ($) {
+ my ($type) = @_;
+ my ($xtypeargs);
+ if ($type =~ m/^\w+$/) {
+ $xtypeargs='';
+ } elsif ($type =~ m/^(\w+)\((.+)\)$/) {
+ $type= $1;
+ $xtypeargs= $2;
+ } else {
+ badsyntax($wh,$.,"bad type name/args \`$type'\n");
+ }
+ return ($type,$xtypeargs);
+}
+
+sub make_decl_init ($$$$$) {
+ my ($n, $t, $a, $initcode, $why) = @_;