diff options
author | Jelmer Vernooij <jelmer@samba.org> | 2005-02-17 11:20:28 +0000 |
---|---|---|
committer | Gerald (Jerry) Carter <jerry@samba.org> | 2007-10-10 13:10:45 -0500 |
commit | a2a7869d060dfeaeac3b104add98bce196e3c577 (patch) | |
tree | 8eaf0449a34cb8455ee655d2412d4d8e18fd8a55 /source4 | |
parent | 308c7d26c1f9f91ff6667430a8a1a7b4cf4a3a7e (diff) | |
download | samba-a2a7869d060dfeaeac3b104add98bce196e3c577.tar.gz samba-a2a7869d060dfeaeac3b104add98bce196e3c577.tar.xz samba-a2a7869d060dfeaeac3b104add98bce196e3c577.zip |
r5426: Warn about embedded ref pointers.
(This used to be commit 40547ed33fea57ee8f68a8f864f8f10c9a6d24dc)
Diffstat (limited to 'source4')
-rw-r--r-- | source4/build/pidl/ndr.pm | 1 | ||||
-rw-r--r-- | source4/build/pidl/validator.pm | 10 |
2 files changed, 10 insertions, 1 deletions
diff --git a/source4/build/pidl/ndr.pm b/source4/build/pidl/ndr.pm index 2025effb405..90bbc9c9a91 100644 --- a/source4/build/pidl/ndr.pm +++ b/source4/build/pidl/ndr.pm @@ -84,6 +84,7 @@ sub pointer_type($) return "ptr" if (util::has_property($e, "ptr")); return "unique" if (util::has_property($e, "unique")); return "relative" if (util::has_property($e, "relative")); + return "ignore" if (util::has_property($e, "ignore")); return undef; } diff --git a/source4/build/pidl/validator.pm b/source4/build/pidl/validator.pm index 73e05ed433e..c61c89392b6 100644 --- a/source4/build/pidl/validator.pm +++ b/source4/build/pidl/validator.pm @@ -68,12 +68,15 @@ sub ValidStruct($) my($struct) = shift; foreach my $e (@{$struct->{ELEMENTS}}) { + if (util::has_property($e, "ref")) { + fatal(el_name($e) . " : embedded ref pointers are not supported yet\n"); + } + $e->{PARENT} = $struct; ValidElement($e); } } - ##################################################################### # parse a union sub ValidUnion($) @@ -92,6 +95,11 @@ sub ValidUnion($) fatal "Union member $e->{NAME} must have default or case property\n"; } + if (util::has_property($e, "ref")) { + fatal(el_name($e) . " : embedded ref pointers are not supported yet\n"); + } + + ValidElement($e); } } |