diff options
author | Michi Henning <michi@zeroc.com> | 2006-02-13 07:54:33 +0000 |
---|---|---|
committer | Michi Henning <michi@zeroc.com> | 2006-02-13 07:54:33 +0000 |
commit | a85739f90496efa8449085df0f3b3aa2697fab31 (patch) | |
tree | af462aa19db7068a585b20f51d7c5c5185e7aa79 /cpp/src/Slice/VbUtil.cpp | |
parent | Added test to operations test to check double marshalling (diff) | |
download | ice-a85739f90496efa8449085df0f3b3aa2697fab31.tar.bz2 ice-a85739f90496efa8449085df0f3b3aa2697fab31.tar.xz ice-a85739f90496efa8449085df0f3b3aa2697fab31.zip |
Bug 859
Diffstat (limited to 'cpp/src/Slice/VbUtil.cpp')
-rwxr-xr-x | cpp/src/Slice/VbUtil.cpp | 22 |
1 files changed, 21 insertions, 1 deletions
diff --git a/cpp/src/Slice/VbUtil.cpp b/cpp/src/Slice/VbUtil.cpp index 545aa6f4ef0..4894958b78b 100755 --- a/cpp/src/Slice/VbUtil.cpp +++ b/cpp/src/Slice/VbUtil.cpp @@ -1065,8 +1065,8 @@ Slice::VbGenerator::MetaDataVisitor::visitModuleStart(const ModulePtr& p) } } _globalMetaDataDone = true; - validate(p); } + validate(p); return true; } @@ -1109,6 +1109,15 @@ bool Slice::VbGenerator::MetaDataVisitor::visitStructStart(const StructPtr& p) { validate(p); + if(p->hasMetaData("clr:property")) + { + if(!p->hasMetaData("clr:class")) + { + string file = p->definitionContext()->filename(); + cout << file << ":" << p->line() << ": warning: the property mapping applies to Slice " + << "structures only in conjunction with the `clr:class' metadata directive" << endl; + } + } return true; } @@ -1222,6 +1231,17 @@ Slice::VbGenerator::MetaDataVisitor::validate(const ContainedPtr& cont) { continue; } + if(s.substr(prefix.size()) == "property") + { + continue; + } + } + if(ClassDefPtr::dynamicCast(cont)) + { + if(s.substr(prefix.size()) == "property") + { + continue; + } } cout << file << ":" << cont->line() << ": warning: ignoring invalid metadata `" << s << "'" << endl; } |