diff options
author | parsons <parsons@ae88bc3d-4319-0410-8dbf-d08b4c9d3795> | 2000-07-11 16:50:33 +0000 |
---|---|---|
committer | parsons <parsons@ae88bc3d-4319-0410-8dbf-d08b4c9d3795> | 2000-07-11 16:50:33 +0000 |
commit | 7c9eb1c48bfa7fa74d6df59e0dba615445e5d0c4 (patch) | |
tree | 12ee13a74a228dd71a584986b688fefcf0c75c6b | |
parent | abad303e6389f67a86e325900b85dc86bad188c1 (diff) | |
download | ATCD-7c9eb1c48bfa7fa74d6df59e0dba615445e5d0c4.tar.gz |
Added two new examples.
-rw-r--r-- | TAO/tests/IDL_Test/reopened_modules.idl | 82 |
1 files changed, 82 insertions, 0 deletions
diff --git a/TAO/tests/IDL_Test/reopened_modules.idl b/TAO/tests/IDL_Test/reopened_modules.idl index b0a27db9c42..aff703bd2b5 100644 --- a/TAO/tests/IDL_Test/reopened_modules.idl +++ b/TAO/tests/IDL_Test/reopened_modules.idl @@ -22,6 +22,10 @@ // These examples test the lookup abilities of the // TAO IDL compiler, with reopened modules. +// Tests lookup function when modules are reopened by +// a chain of inclusions +#include "reopen_include2.idl" + module A { module B @@ -118,3 +122,81 @@ module com }; }; +// Modules X and Y are also included from reopene_include2.idl. +// There were problems with the lookup of Y::Z and X::Ex. +module Y +{ + interface Z {}; +}; + +module X +{ + exception Ex {}; + + interface BI : Y::Z + { + void method () raises (X::Ex); + }; +}; + +// Reopened from reopen_include2.idl inclusion. There +// was a problem with the inheritance lookup. +module XX +{ + interface blah_intfc; + + interface blah_intfc + { + void op1(); + }; + + interface blah0 : blah_intfc + { + void op0(); + }; +}; + +// Had lookup problems with the operation args and +// return type. +module frag +{ + interface frag_iface {}; +}; + +module frag +{ + typedef long ret_long; +}; + +interface gather +{ + frag::ret_long op (in frag::dub_seq inarg, + inout frag::pug inoutarg, + out frag::frag_iface outarg); +}; + +// Had problems with second opening of module using +// types declared between the openings. +module foo +{ + typedef long longdef; +}; + +typedef long longdef2; + +struct bar {short s;}; + +module foo +{ + struct foo_struct + { + longdef longval; + longdef2 longval2; + }; + + interface obj + { + void op (in bar inarg); + }; +}; + |