summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--source4/build/pidl/validator.pm8
1 files changed, 6 insertions, 2 deletions
diff --git a/source4/build/pidl/validator.pm b/source4/build/pidl/validator.pm
index 5e1f1e1660..d3f3cbe1e7 100644
--- a/source4/build/pidl/validator.pm
+++ b/source4/build/pidl/validator.pm
@@ -76,6 +76,10 @@ sub ValidElement($)
fatal(el_name($e) . " : subcontext_size() on non-subcontext element");
}
+ if (defined (util::has_property($e, "compression")) and not defined(util::has_property($e, "subcontext"))) {
+ fatal(el_name($e) . " : compression() on non-subcontext element");
+ }
+
if (!$e->{POINTERS} && (
util::has_property($e, "ptr") or
util::has_property($e, "unique") or
@@ -177,12 +181,12 @@ sub ValidInterface($)
}
if (util::has_property($interface, "object")) {
- if(util::has_property($interface, "version") &&
+ if (util::has_property($interface, "version") &&
$interface->{PROPERTIES}->{version} != 0) {
fatal "Object interfaces must have version 0.0 ($interface->{NAME})\n";
}
- if(!defined($interface->{BASE}) &&
+ if (!defined($interface->{BASE}) &&
not ($interface->{NAME} eq "IUnknown")) {
fatal "Object interfaces must all derive from IUnknown ($interface->{NAME})\n";
}