summaryrefslogtreecommitdiff
path: root/cpp/src/Slice/CsUtil.cpp
diff options
context:
space:
mode:
authorBernard Normier <bernard@zeroc.com>2007-11-16 14:55:39 -0500
committerBernard Normier <bernard@zeroc.com>2007-11-16 14:55:39 -0500
commit4a8b144491d9f66a45a0cbdd651a8c785d6fb728 (patch)
treeba1fa5e6a6898627784289c0859461c0c6c0bf0f /cpp/src/Slice/CsUtil.cpp
parentMakefile update (diff)
parentAdded AMI tests (diff)
downloadice-4a8b144491d9f66a45a0cbdd651a8c785d6fb728.tar.bz2
ice-4a8b144491d9f66a45a0cbdd651a8c785d6fb728.tar.xz
ice-4a8b144491d9f66a45a0cbdd651a8c785d6fb728.zip
Merge branch 'master' of ssh://cvs.zeroc.com/home/git/ice
Diffstat (limited to 'cpp/src/Slice/CsUtil.cpp')
-rwxr-xr-xcpp/src/Slice/CsUtil.cpp11
1 files changed, 11 insertions, 0 deletions
diff --git a/cpp/src/Slice/CsUtil.cpp b/cpp/src/Slice/CsUtil.cpp
index 2e392648a50..364f8f3e9aa 100755
--- a/cpp/src/Slice/CsUtil.cpp
+++ b/cpp/src/Slice/CsUtil.cpp
@@ -1540,6 +1540,17 @@ Slice::CsGenerator::MetaDataVisitor::visitStructEnd(const StructPtr&)
void
Slice::CsGenerator::MetaDataVisitor::visitOperation(const OperationPtr& p)
{
+ if(p->hasMetaData("UserException"))
+ {
+ ClassDefPtr cl = ClassDefPtr::dynamicCast(p->container());
+ if(!cl->isLocal())
+ {
+ cout << p->definitionContext()->filename() << ":" << p->line()
+ << ": warning: metdata directive `UserException' applies only to local operations "
+ << "but enclosing " << (cl->isInterface() ? "interface" : "class") << "`" << cl->name()
+ << "' is not local" << endl;
+ }
+ }
validate(p);
}