summaryrefslogtreecommitdiff
path: root/cpp/test/Ice/slicing/exceptions/Test.ice
diff options
context:
space:
mode:
Diffstat (limited to 'cpp/test/Ice/slicing/exceptions/Test.ice')
-rw-r--r--cpp/test/Ice/slicing/exceptions/Test.ice33
1 files changed, 32 insertions, 1 deletions
diff --git a/cpp/test/Ice/slicing/exceptions/Test.ice b/cpp/test/Ice/slicing/exceptions/Test.ice
index 1c92fe0fbcf..f210b8e2c46 100644
--- a/cpp/test/Ice/slicing/exceptions/Test.ice
+++ b/cpp/test/Ice/slicing/exceptions/Test.ice
@@ -32,7 +32,30 @@ exception KnownMostDerived extends KnownIntermediate
string kmd;
};
-["ami"] interface TestIntf
+["preserve-slice"]
+exception KnownPreserved extends Base
+{
+ string kp;
+};
+
+["preserve-slice"]
+class BaseClass
+{
+ string bc;
+};
+
+["format:sliced"]
+interface Relay
+{
+ void knownPreservedAsBase() throws Base;
+ void knownPreservedAsKnownPreserved() throws KnownPreserved;
+
+ void unknownPreservedAsBase() throws Base;
+ void unknownPreservedAsKnownPreserved() throws KnownPreserved;
+};
+
+["ami", "format:sliced"]
+interface TestIntf
{
void baseAsBase() throws Base;
void unknownDerivedAsBase() throws Base;
@@ -50,6 +73,14 @@ exception KnownMostDerived extends KnownIntermediate
void unknownMostDerived1AsKnownIntermediate() throws KnownIntermediate;
void unknownMostDerived2AsBase() throws Base;
+ ["format:compact"] void unknownMostDerived2AsBaseCompact() throws Base;
+
+ void relayKnownPreservedAsBase(Relay* r) throws Base;
+ void relayKnownPreservedAsKnownPreserved(Relay* r) throws KnownPreserved;
+
+ void relayUnknownPreservedAsBase(Relay* r) throws Base;
+ void relayUnknownPreservedAsKnownPreserved(Relay* r) throws KnownPreserved;
+
void shutdown();
};