From 11a7b29a6170cab08cc6c6187effda7dc075bf97 Mon Sep 17 00:00:00 2001 From: Francois Gouget Date: Thu, 21 Oct 2004 19:58:39 +0000 Subject: [PATCH] Declare DO_DUMP_FUNC() before calling it and call normally so that perl can check its prototype. --- tools/make_requests | 88 ++++++++++++++++++++++----------------------- 1 file changed, 44 insertions(+), 44 deletions(-) diff --git a/tools/make_requests b/tools/make_requests index dd7f359a59..de7c68c806 100755 --- a/tools/make_requests +++ b/tools/make_requests @@ -49,6 +49,48 @@ my @trace_lines = (); +### Generate a dumping function + +sub DO_DUMP_FUNC($$@) +{ + my $name = shift; + my $req = shift; + push @trace_lines, "static void dump_${name}_$req( const struct ${name}_$req *req )\n{\n"; + while ($#_ >= 0) + { + my $type = shift; + my $var = shift; + if (defined($formats{$type})) + { + if ($formats{$type} =~ /^&(.*)/) + { + my $func = $1; + push @trace_lines, " fprintf( stderr, \" $var=\" );\n"; + push @trace_lines, " $func( &req->$var );\n"; + push @trace_lines, " fprintf( stderr, \",\" );\n" if ($#_ > 0); + } + else + { + push @trace_lines, " fprintf( stderr, \" $var=$formats{$type}"; + push @trace_lines, "," if ($#_ > 0); + push @trace_lines, "\", "; + # In the case of time_t we need to cast the parameter to + # long to match the associated "%ld" printf modifier. + push @trace_lines, "(long)" if( $type eq "time_t" ); + push @trace_lines, "req->$var );\n"; + } + } + else # must be some varargs format + { + my $func = $type; + push @trace_lines, " fprintf( stderr, \" $var=\" );\n"; + push @trace_lines, " $func;\n"; + push @trace_lines, " fputc( ',', stderr );\n" if ($#_ > 0); + } + } + push @trace_lines, "}\n\n"; +} + ### Parse the request definitions sub PARSE_REQUESTS() @@ -116,11 +158,11 @@ sub PARSE_REQUESTS() # got a complete request push @requests, $name; - &DO_DUMP_FUNC( $name, "request", @in_struct); + DO_DUMP_FUNC( $name, "request", @in_struct); if ($#out_struct >= 0) { $replies{$name} = 1; - &DO_DUMP_FUNC( $name, "reply", @out_struct); + DO_DUMP_FUNC( $name, "reply", @out_struct); } $state = 1; next; @@ -167,48 +209,6 @@ sub PARSE_REQUESTS() close PROTOCOL; } -### Generate a dumping function - -sub DO_DUMP_FUNC($$@) -{ - my $name = shift; - my $req = shift; - push @trace_lines, "static void dump_${name}_$req( const struct ${name}_$req *req )\n{\n"; - while ($#_ >= 0) - { - my $type = shift; - my $var = shift; - if (defined($formats{$type})) - { - if ($formats{$type} =~ /^&(.*)/) - { - my $func = $1; - push @trace_lines, " fprintf( stderr, \" $var=\" );\n"; - push @trace_lines, " $func( &req->$var );\n"; - push @trace_lines, " fprintf( stderr, \",\" );\n" if ($#_ > 0); - } - else - { - push @trace_lines, " fprintf( stderr, \" $var=$formats{$type}"; - push @trace_lines, "," if ($#_ > 0); - push @trace_lines, "\", "; - # In the case of time_t we need to cast the parameter to - # long to match the associated "%ld" printf modifier. - push @trace_lines, "(long)" if( $type eq "time_t" ); - push @trace_lines, "req->$var );\n"; - } - } - else # must be some varargs format - { - my $func = $type; - push @trace_lines, " fprintf( stderr, \" $var=\" );\n"; - push @trace_lines, " $func;\n"; - push @trace_lines, " fputc( ',', stderr );\n" if ($#_ > 0); - } - } - push @trace_lines, "}\n\n"; -} - ### Retrieve the server protocol version from the existing server_protocol.h file sub GET_PROTOCOL_VERSION()