svn commit: samba r18554 - in
branches/SAMBA_4_0/source/pidl/lib/Parse/Pidl: .
jelmer at samba.org
jelmer at samba.org
Fri Sep 15 14:32:31 GMT 2006
Author: jelmer
Date: 2006-09-15 14:32:30 +0000 (Fri, 15 Sep 2006)
New Revision: 18554
WebSVN: http://websvn.samba.org/cgi-bin/viewcvs.cgi?view=rev&root=samba&rev=18554
Log:
Fix warnings about [out] arguments.
Modified:
branches/SAMBA_4_0/source/pidl/lib/Parse/Pidl/NDR.pm
Changeset:
Modified: branches/SAMBA_4_0/source/pidl/lib/Parse/Pidl/NDR.pm
===================================================================
--- branches/SAMBA_4_0/source/pidl/lib/Parse/Pidl/NDR.pm 2006-09-15 14:30:23 UTC (rev 18553)
+++ branches/SAMBA_4_0/source/pidl/lib/Parse/Pidl/NDR.pm 2006-09-15 14:32:30 UTC (rev 18554)
@@ -109,6 +109,15 @@
@bracket_array = @{$e->{ARRAY_LEN}};
}
+ if (has_property($e, "out")) {
+ my $needptrs = 1;
+
+ if (has_property($e, "string")) { $needptrs++; }
+ if ($#bracket_array >= 0) { $needptrs = 0; }
+
+ nonfatal($e, "[out] argument `$e->{NAME}' not a pointer") if ($needptrs > $e->{POINTERS});
+ }
+
# Parse the [][][][] style array stuff
for my $i (0 .. $#bracket_array) {
my $d = $bracket_array[$#bracket_array - $i];
@@ -543,11 +552,6 @@
push (@{$e->{DIRECTION}}, "in") if (has_property($x, "in"));
push (@{$e->{DIRECTION}}, "out") if (has_property($x, "out"));
- nonfatal($x, "`$e->{NAME}' is [out] argument but not a pointer or array")
- if ($e->{LEVELS}[0]->{TYPE} ne "POINTER" and
- $e->{LEVELS}[0]->{TYPE} ne "ARRAY" and
- grep(/out/, @{$e->{DIRECTION}}));
-
push (@elements, $e);
}
More information about the samba-cvs
mailing list