diff options
author | Johnny Willemsen <jwillemsen@remedy.nl> | 2006-03-10 11:43:46 +0000 |
---|---|---|
committer | Johnny Willemsen <jwillemsen@remedy.nl> | 2006-03-10 11:43:46 +0000 |
commit | d7de339c40c2fcfd7b9358b8ddf2007e6491584e (patch) | |
tree | e902658f53fcc5a923644998d7df1e83fd59a420 /TAO | |
parent | 0013f4a6ce32ba325a545c13f98eb8bb5c86c900 (diff) | |
download | ATCD-d7de339c40c2fcfd7b9358b8ddf2007e6491584e.tar.gz |
ChangeLogTag: Fri Mar 10 11:43:12 UTC 2006 Johnny Willemsen <jwillemsen@remedy.nl>
Diffstat (limited to 'TAO')
-rw-r--r-- | TAO/tests/Any/Recursive/Test.idl | 15 | ||||
-rw-r--r-- | TAO/tests/Any/Recursive/client.cpp | 16 |
2 files changed, 31 insertions, 0 deletions
diff --git a/TAO/tests/Any/Recursive/Test.idl b/TAO/tests/Any/Recursive/Test.idl index 8e16b859810..08a33a2346c 100644 --- a/TAO/tests/Any/Recursive/Test.idl +++ b/TAO/tests/Any/Recursive/Test.idl @@ -35,6 +35,21 @@ module Test long i; }; + union RecursiveUnionNoDefault; + typedef sequence<RecursiveUnionNoDefault> RecursiveUnionSeqNoDefault; + + union RecursiveUnionNoDefault switch (short) + { + case 0: + RecursiveUnionSeqNoDefault recursive_unions; + case 1: + short a; + case 2: + RecursiveUnionSeqNoDefault recursive_unions_second; + }; + + // -------------------------- + // -------------------------- enum VSort { diff --git a/TAO/tests/Any/Recursive/client.cpp b/TAO/tests/Any/Recursive/client.cpp index 2a9cfe79fa4..41179ed0456 100644 --- a/TAO/tests/Any/Recursive/client.cpp +++ b/TAO/tests/Any/Recursive/client.cpp @@ -197,6 +197,22 @@ recursive_union_test (CORBA::ORB_ptr /* orb */, ACE_ENV_ARG_PARAMETER); ACE_CHECK; + // Recursive member case with no default member + Test::RecursiveUnionSeqNoDefault seqnodefault; + seqnodefault.length (2); + seqnodefault[0].a (37); + seqnodefault[1].recursive_unions (Test::RecursiveUnionSeqNoDefault ()); + + Test::RecursiveUnionNoDefault foonodefault; + foonodefault.recursive_unions (seqnodefault); + + the_any <<= foonodefault; + + ::perform_invocation<Test::RecursiveUnionNoDefault> (hello, + the_any + ACE_ENV_ARG_PARAMETER); + ACE_CHECK; + // Recursive member case with enum . Test::VSortRecursiveUnionSeq vsortseq; vsortseq.length (2); |