diff options
Diffstat (limited to 'kalyptus/kalyptus')
-rw-r--r-- | kalyptus/kalyptus | 28 |
1 files changed, 17 insertions, 11 deletions
diff --git a/kalyptus/kalyptus b/kalyptus/kalyptus index ede21d42..596f6c59 100644 --- a/kalyptus/kalyptus +++ b/kalyptus/kalyptus @@ -559,7 +559,7 @@ LOOP: || $p =~ /^\s*Q_DECLARE_SHARED/ ); - push @includes_list, $1 if $p =~ /^#include\s+<?(.*?)>?\s*$/; + push @includes_list, $1 if $p =~ /^#include\s+[<"]?(.*?)[>"]?\s*$/; # remove all preprocessor macros if( $p =~ /^\s*#\s*(\w+)/ ) { @@ -1692,16 +1692,22 @@ sub makeParamList($$$) # Separate arg type from arg name, if the latter is specified if ( $arg =~ /(.*)\s+([\w_]+)\s*$/ || $arg =~ /(.*)\(\s*\*\s([\w_]+)\)\s*\((.*)\)\s*$/ ) { - if ( defined $3 ) { # function pointer - $argType = $1."(*)($3)"; - $argName = $2; - } else { - $argType = $1; - $argName = $2; - } - } else { # unnamed arg - or enum value - $argType = $arg if (!$isEnum); - $argName = $arg if ($isEnum); + if ( $1 eq "const" || $2 eq "long" || $2 eq "short" || $2 eq "int" || $2 eq "char" ) { + # const qualifier or long notation of numeric type + # without argument name + $argType = "$1 $2"; + } else { + $argType = $1; + $argName = $2; + } + if ( defined $3 ) { + # function pointer + $argType .= "(*)($3)"; + } + } else { + # unnamed arg - or enum value + $argType = $arg if (!$isEnum); + $argName = $arg if ($isEnum); } $argId++; |