summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorparsons <parsons@ae88bc3d-4319-0410-8dbf-d08b4c9d3795>2005-02-15 05:08:59 +0000
committerparsons <parsons@ae88bc3d-4319-0410-8dbf-d08b4c9d3795>2005-02-15 05:08:59 +0000
commit21cf39a2813f154be1f7b6eb2ae73faa6ad28806 (patch)
tree8a0a4f9faa3b5efa4cbc7a029928cfca13f84353
parentba1fbe6eb21f5857605c8b514e674d7203661092 (diff)
downloadATCD-21cf39a2813f154be1f7b6eb2ae73faa6ad28806.tar.gz
Mon Feb 14 23:05:55 2005 Jeff Parsons <j.parsons@vanderbilt.edu>
-rw-r--r--TAO/ChangeLog5
-rw-r--r--TAO/tests/IDL_Test/interface.idl42
2 files changed, 38 insertions, 9 deletions
diff --git a/TAO/ChangeLog b/TAO/ChangeLog
index cc83f974f1b..4b4bfdee44a 100644
--- a/TAO/ChangeLog
+++ b/TAO/ChangeLog
@@ -82,6 +82,11 @@ Mon Feb 14 23:05:55 2005 Jeff Parsons <j.parsons@vanderbilt.edu>
- Fixed bug that aborted the IDL compiler when an eventtype
contained a constant declaration. Thanks to Steven Baker
<Steven_D_Baker@raytheon.com> for reporting the bug.
+
+ * tests/IDL_Test/interface.idl:
+
+ Expanded sample IDL file sent in by Steven Baker in the
+ last list item above and added it to the test suite.
* TAO_IDL/be/be_visitor_eventtype.cpp:
* TAO_IDL/be/be_visitor_eventtype_fwd.cpp:
diff --git a/TAO/tests/IDL_Test/interface.idl b/TAO/tests/IDL_Test/interface.idl
index ae897296d0f..28e428251be 100644
--- a/TAO/tests/IDL_Test/interface.idl
+++ b/TAO/tests/IDL_Test/interface.idl
@@ -128,16 +128,40 @@ interface AttributeTester
attribute string<1> a_sb;
};
-/*
- * Illegal recursion.
- * One day I'll add a mechanism to check for illegal IDL
- * files as well as legal ones.
-
-interface Test
+// All of the 'recursion' below is legal.
+module ParamMod
{
- struct TestInfo
+ interface ParameterTester
{
- Test atest;
+ exception object_excep_type
+ {
+ ParameterTester objref;
+ };
+
+ typedef sequence<ParameterTester> object_seq_type;
+
+ typedef ParameterTester object_array_type[5];
+
+ struct object_struct_type
+ {
+ octet o1;
+ ParameterTester p1;
+ long l1;
+ };
+
+ union object_union_type switch (long)
+ {
+ case 0: string str;
+ case 1: ParameterTester pt;
+ };
+
+ object_seq_type parameter_tester_op (
+ in object_struct_type inarg,
+ inout object_array_type inoutarg,
+ out object_union_type outarg
+ )
+ raises (object_excep_type);
};
};
-*/
+
+