diff options
author | coryan <coryan@ae88bc3d-4319-0410-8dbf-d08b4c9d3795> | 1998-01-11 16:56:04 +0000 |
---|---|---|
committer | coryan <coryan@ae88bc3d-4319-0410-8dbf-d08b4c9d3795> | 1998-01-11 16:56:04 +0000 |
commit | c7dda1d1fba745c731b9f174e6dbbf00a5eb9101 (patch) | |
tree | c694b0f619a770ebbed9d91dff77781f22d12514 | |
parent | 2b178c43435569b98e71f8ddd35a56f8db301232 (diff) | |
download | ATCD-c7dda1d1fba745c731b9f174e6dbbf00a5eb9101.tar.gz |
ChangeLogTag:Sun Jan 11 10:55:04 CST 1998 Carlos O'Ryan <coryan@cs.wustl.edu>
27 files changed, 644 insertions, 800 deletions
diff --git a/TAO/ChangeLog-98c b/TAO/ChangeLog-98c index 08bbf6dc316..81b195e69f5 100644 --- a/TAO/ChangeLog-98c +++ b/TAO/ChangeLog-98c @@ -1,17 +1,23 @@ +Sun Jan 11 10:55:04 CST 1998 Carlos O'Ryan <coryan@cs.wustl.edu> + + * Merged changes from tag main_to_poa_merge_5 and + main_to_poa_merge_6. This late merge is risky, needs complete + validation before public release. + Sat Jan 10 22:11:47 1998 <coryan@MILONGA> - * TAO_IDL/be_include/be_interface.h: - * TAO_IDL/be/be_interface.cpp: - * TAO_IDL/be/be_visitor_interface.cpp: + * TAO_IDL/be_include/be_interface.h: + * TAO_IDL/be/be_interface.cpp: + * TAO_IDL/be/be_visitor_interface.cpp: Work around bug in MSVC++ 5.0 wrt inheritance from nested classes and the constructor invocation. Sat Jan 10 19:21:18 1998 <coryan@MILONGA> - * TAO_IDL/tao_idl.dsp: - * TAO_IDL/be/be_interface.cpp: - * TAO_IDL/be_include/be_interface.h: - * tao/orb_core.cpp: + * TAO_IDL/tao_idl.dsp: + * TAO_IDL/be/be_interface.cpp: + * TAO_IDL/be_include/be_interface.h: + * tao/orb_core.cpp: Fixed some problems in the latest merges. Sat Jan 10 18:06:24 1998 <coryan@MILONGA> @@ -28,51 +34,51 @@ Sat Jan 10 16:57:42 1998 <coryan@MILONGA> Fri Jan 9 17:58:43 1998 Carlos O'Ryan <coryan@cs.wustl.edu> - * TAO_IDL/be/be_array.cpp: - * TAO_IDL/be/be_decl.cpp: - * TAO_IDL/be/be_enum.cpp: - * TAO_IDL/be/be_enum_val.cpp: - * TAO_IDL/be/be_exception.cpp: - * TAO_IDL/be/be_expression.cpp: - * TAO_IDL/be/be_interface.cpp: - * TAO_IDL/be/be_interface_fwd.cpp: - * TAO_IDL/be/be_module.cpp: - * TAO_IDL/be/be_predefined_type.cpp: - * TAO_IDL/be/be_root.cpp: - * TAO_IDL/be/be_scope.cpp: - * TAO_IDL/be/be_sequence.cpp: - * TAO_IDL/be/be_string.cpp: - * TAO_IDL/be/be_structure.cpp: - * TAO_IDL/be/be_type.cpp: - * TAO_IDL/be/be_typedef.cpp: + * TAO_IDL/be/be_array.cpp: + * TAO_IDL/be/be_decl.cpp: + * TAO_IDL/be/be_enum.cpp: + * TAO_IDL/be/be_enum_val.cpp: + * TAO_IDL/be/be_exception.cpp: + * TAO_IDL/be/be_expression.cpp: + * TAO_IDL/be/be_interface.cpp: + * TAO_IDL/be/be_interface_fwd.cpp: + * TAO_IDL/be/be_module.cpp: + * TAO_IDL/be/be_predefined_type.cpp: + * TAO_IDL/be/be_root.cpp: + * TAO_IDL/be/be_scope.cpp: + * TAO_IDL/be/be_sequence.cpp: + * TAO_IDL/be/be_string.cpp: + * TAO_IDL/be/be_structure.cpp: + * TAO_IDL/be/be_type.cpp: + * TAO_IDL/be/be_typedef.cpp: Minor cosmetic changes to make the main trunk changes identic to the ones on this branch. Thu Jan 8 15:50:59 1998 Carlos O'Ryan <coryan@cs.wustl.edu> - * TAO_IDL/be/be_state_operation.cpp: + * TAO_IDL/be/be_state_operation.cpp: Added support for native as return type. Thu Jan 8 13:20:11 1998 Carlos O'Ryan <coryan@cs.wustl.edu> - * TAO_IDL/ast/Makefile: - * TAO_IDL/be/Makefile: + * TAO_IDL/ast/Makefile: + * TAO_IDL/be/Makefile: Added ast_native and be_native to the list of files. - * TAO_IDL/be_include/be_native.h: - * TAO_IDL/be/be_native.cpp: - * TAO_IDL/be_include/be_visitor.h: - * TAO_IDL/be/be_visitor.cpp: + * TAO_IDL/be_include/be_native.h: + * TAO_IDL/be/be_native.cpp: + * TAO_IDL/be_include/be_visitor.h: + * TAO_IDL/be/be_visitor.cpp: Added support for visiting be_native. - * TAO_IDL/be_include/be_visitor_args.h: - * TAO_IDL/be/be_visitor_args.cpp: + * TAO_IDL/be_include/be_visitor_args.h: + * TAO_IDL/be/be_visitor_args.cpp: Added support for native and improved the implementation. - * TAO_IDL/fe/y.tab.cpp: + * TAO_IDL/fe/y.tab.cpp: Removed some includes and pragmas that cause trouble on NT. - * TAO_IDL/be/be_type.cpp: + * TAO_IDL/be/be_type.cpp: Print an error if the default implementation for write_as_return is called. @@ -85,7 +91,7 @@ Thu Jan 8 12:53:28 1998 Chris Cleeland <cleeland@cs.wustl.edu> Wed Jan 7 15:09:47 1998 Carlos O'Ryan <coryan@cs.wustl.edu> - * TAO_IDL/fe/y.tab.cpp: + * TAO_IDL/fe/y.tab.cpp: This is the actual file generated from idl.yy, thanks to the "clone" scheme for building ACE it was lost in the previous commits. @@ -104,69 +110,69 @@ Wed Jan 7 14:08:41 1998 Carlos O'Ryan <coryan@cs.wustl.edu> Tue Jan 6 17:35:44 1998 Carlos O'Ryan <coryan@cs.wustl.edu> - * TAO_IDL/be/be_visitor_interface.cpp: + * TAO_IDL/be/be_visitor_interface.cpp: Added several fixes for mutiple inheritance, but still needs some work. Tue Jan 6 15:20:13 1998 Carlos O'Ryan <coryan@cs.wustl.edu> - * tao/object.h: - * tao/object.cpp: + * tao/object.h: + * tao/object.cpp: Removed obsolete methods, they were there to support upcalls on the server side, but now this is done on PortableServer::ServantBase. Tue Jan 6 14:46:27 1998 Carlos O'Ryan <coryan@cs.wustl.edu> - * tao/poa.h: - * TAO_IDL/be/be_interface.cpp: - * TAO_IDL/be/be_visitor_interface.cpp: + * tao/poa.h: + * TAO_IDL/be/be_interface.cpp: + * TAO_IDL/be/be_visitor_interface.cpp: Added a _get_servant () method to the collocated classes, to obtain access to the underlying skeleton. Tue Jan 6 13:31:20 1998 Carlos O'Ryan <coryan@cs.wustl.edu> - * tao/objtable.h: - * tao/objtable.cpp: + * tao/objtable.h: + * tao/objtable.cpp: Fixed some problems with the PortableServer::ObjectId and PortableServer::Servant changes. - * tao/poa.h: - * TAO_IDL/be/be_interface.cpp: + * tao/poa.h: + * TAO_IDL/be/be_interface.cpp: Added a method to get the interface repository name for a skeleton. - * tao/encode.cpp: + * tao/encode.cpp: Fixed problem on object reference enconding. Mon Jan 05 23:41:59 1998 <coryan@MILONGA> - * tao/objkeyC.cpp: + * tao/objkeyC.cpp: The code for memory reallocation was missing, I added it back. - * tao/iiopobj.cpp: + * tao/iiopobj.cpp: Fixed bug in object key generation. - * tao/poa.cpp: + * tao/poa.cpp: More debug messages when an object is missing. Mon Jan 05 17:46:00 1998 <coryan@MILONGA> - * tao/connect.cpp: - * tao/corba.h: - * tao/corbacom.h: - * tao/default_server.cpp: - * tao/default_server.h: - * tao/iiopobj.cpp: - * tao/iiopobj.i: - * tao/iioporb.cpp: - * tao/orbobj.cpp: - * tao/params.h: - * tao/params.i: - * tao/poa.cpp: - * tao/poa.h: - * tao/server_factory.cpp: - * tao/server_factory.h: + * tao/connect.cpp: + * tao/corba.h: + * tao/corbacom.h: + * tao/default_server.cpp: + * tao/default_server.h: + * tao/iiopobj.cpp: + * tao/iiopobj.i: + * tao/iioporb.cpp: + * tao/orbobj.cpp: + * tao/params.h: + * tao/params.i: + * tao/poa.cpp: + * tao/poa.h: + * tao/server_factory.cpp: + * tao/server_factory.h: The ObjectId changes were "accepted for revision" by the POA committe, hence I'll commit them, they check them and then I'll have to make the changes they require ;-) @@ -183,22 +189,22 @@ Mon Jan 5 13:06:19 1998 Carlos O'Ryan <coryan@macarena.cs.wustl.edu> Mon Jan 05 00:11:45 1998 <coryan@MILONGA> - * tao/objtable.h: - * tao/objtable.cpp: + * tao/objtable.h: + * tao/objtable.cpp: New Object Table interface, in preparation for the POA needs. Sat Jan 03 11:37:21 1998 <coryan@MILONGA> - * TAO_IDL/be/be_visitor_args.cpp: + * TAO_IDL/be/be_visitor_args.cpp: Typedefs and predefined types where unproperly handled. Fri Jan 2 14:09:49 1998 Carlos O'Ryan <coryan@macarena.cs.wustl.edu> - * tests/Cubit/TAO/IDL_Cubit/clnt.cpp: + * tests/Cubit/TAO/IDL_Cubit/clnt.cpp: Sequences work on Solaris, even Purify gives its "Houston it's a go", so I'm reinstating them. - * tests/Cubit/TAO/IDL_Cubit/svr.cpp: + * tests/Cubit/TAO/IDL_Cubit/svr.cpp: Minor cosmetic changes. Fri Jan 02 08:31:32 1998 <coryan@MILONGA> @@ -209,28 +215,28 @@ Fri Jan 02 08:31:32 1998 <coryan@MILONGA> Thu Jan 01 15:43:43 1998 <coryan@MILONGA> - * TAO_IDL/be/be_interface.cpp: - * TAO_IDL/be/be_visitor_interface.cpp: + * TAO_IDL/be/be_interface.cpp: + * TAO_IDL/be/be_visitor_interface.cpp: Generated code for collocations setup the "parent_" field properly. - * tao/objkeyC.h: - * tao/corbacom.h: + * tao/objkeyC.h: + * tao/corbacom.h: Added export macros. - * tao/objtable.cpp: - * tao/objtable.h: - * tao/poa.cpp: - * tao/poa.h: + * tao/objtable.cpp: + * tao/objtable.h: + * tao/poa.cpp: + * tao/poa.h: Object table is based on servants now. - * tests/Cubit/TAO/IDL_Cubit/cubit_i.cpp: - * tests/Cubit/TAO/IDL_Cubit/server.dsp: - * tests/Cubit/TAO/IDL_Cubit/svr.cpp: + * tests/Cubit/TAO/IDL_Cubit/cubit_i.cpp: + * tests/Cubit/TAO/IDL_Cubit/server.dsp: + * tests/Cubit/TAO/IDL_Cubit/svr.cpp: Fixed to use the new POA mapping. - - * TAO_IDL/tao_idl.dsp: - * tao/TAO.dsp: + + * TAO_IDL/tao_idl.dsp: + * tao/TAO.dsp: Added the new files to the MSVC++ project. Tue Dec 30 16:38:42 1997 Carlos O'Ryan <coryan@macarena.cs.wustl.edu> @@ -238,52 +244,52 @@ Tue Dec 30 16:38:42 1997 Carlos O'Ryan <coryan@macarena.cs.wustl.edu> * More advances in code generation, it compiles and links now, but won't run. - * TAO_IDL/be/be_array.cpp: - * TAO_IDL/be/be_enum.cpp: - * TAO_IDL/be/be_exception.cpp: - * TAO_IDL/be/be_interface.cpp: - * TAO_IDL/be/be_interface_fwd.cpp: - * TAO_IDL/be/be_predefined_type.cpp: - * TAO_IDL/be/be_sequence.cpp: - * TAO_IDL/be/be_string.cpp: - * TAO_IDL/be/be_structure.cpp: - * TAO_IDL/be/be_type.cpp: - * TAO_IDL/be/be_typedef.cpp: - * TAO_IDL/be/be_union.cpp: - * TAO_IDL/be/be_visitor_args.cpp: - * TAO_IDL/be_include/be_array.h: - * TAO_IDL/be_include/be_enum.h: - * TAO_IDL/be_include/be_exception.h: - * TAO_IDL/be_include/be_interface.h: - * TAO_IDL/be_include/be_interface_fwd.h: - * TAO_IDL/be_include/be_predefined_type.h: - * TAO_IDL/be_include/be_sequence.h: - * TAO_IDL/be_include/be_string.h: - * TAO_IDL/be_include/be_structure.h: - * TAO_IDL/be_include/be_type.h: - * TAO_IDL/be_include/be_typedef.h: - * TAO_IDL/be_include/be_union.h: + * TAO_IDL/be/be_array.cpp: + * TAO_IDL/be/be_enum.cpp: + * TAO_IDL/be/be_exception.cpp: + * TAO_IDL/be/be_interface.cpp: + * TAO_IDL/be/be_interface_fwd.cpp: + * TAO_IDL/be/be_predefined_type.cpp: + * TAO_IDL/be/be_sequence.cpp: + * TAO_IDL/be/be_string.cpp: + * TAO_IDL/be/be_structure.cpp: + * TAO_IDL/be/be_type.cpp: + * TAO_IDL/be/be_typedef.cpp: + * TAO_IDL/be/be_union.cpp: + * TAO_IDL/be/be_visitor_args.cpp: + * TAO_IDL/be_include/be_array.h: + * TAO_IDL/be_include/be_enum.h: + * TAO_IDL/be_include/be_exception.h: + * TAO_IDL/be_include/be_interface.h: + * TAO_IDL/be_include/be_interface_fwd.h: + * TAO_IDL/be_include/be_predefined_type.h: + * TAO_IDL/be_include/be_sequence.h: + * TAO_IDL/be_include/be_string.h: + * TAO_IDL/be_include/be_structure.h: + * TAO_IDL/be_include/be_type.h: + * TAO_IDL/be_include/be_typedef.h: + * TAO_IDL/be_include/be_union.h: Added methods to be_type to generate the return types; this time without any switches, just visitors and virtual dispatching. - * tao/poa.cpp: - * tao/poa.h: + * tao/poa.cpp: + * tao/poa.h: Added the methods to lookup operations, this are TAO specific and should have complaint names, but currently I just kept the old names to avoid a major breakdown. - * TAO_IDL/ast/Makefile: - * TAO_IDL/be/Makefile: - * TAO_IDL/driver/Makefile: - * TAO_IDL/fe/Makefile: - * TAO_IDL/narrow/Makefile: - * TAO_IDL/util/Makefile: + * TAO_IDL/ast/Makefile: + * TAO_IDL/be/Makefile: + * TAO_IDL/driver/Makefile: + * TAO_IDL/fe/Makefile: + * TAO_IDL/narrow/Makefile: + * TAO_IDL/util/Makefile: Updated dependencies. - * TAO_IDL/be/be_visitor_interface.cpp: - * TAO_IDL/be_include/be_visitor_interface.h: - * TAO_IDL/be/be_interface.cpp: + * TAO_IDL/be/be_visitor_interface.cpp: + * TAO_IDL/be_include/be_visitor_interface.h: + * TAO_IDL/be/be_interface.cpp: Reverted some changes (code moved from be_interface.cpp into visitors) to avoid massive conflicts with Andy's changes. @@ -299,84 +305,84 @@ Mon Dec 29 16:26:24 1997 Chris Cleeland <cleeland@tango.cs.wustl.edu> Mon Dec 29 13:18:49 1997 Carlos O'Ryan <coryan@macarena.cs.wustl.edu> - * TAO_IDL/be/Makefile: - * TAO_IDL/be/be_visitor.cpp: - * TAO_IDL/be/be_visitor_args.cpp: - * TAO_IDL/be/be_visitor_interface.cpp: - * TAO_IDL/be_include/be_visitor.h: - * TAO_IDL/be_include/be_visitor_args.h: - * TAO_IDL/be_include/be_visitor_interface.h: + * TAO_IDL/be/Makefile: + * TAO_IDL/be/be_visitor.cpp: + * TAO_IDL/be/be_visitor_args.cpp: + * TAO_IDL/be/be_visitor_interface.cpp: + * TAO_IDL/be_include/be_visitor.h: + * TAO_IDL/be_include/be_visitor_args.h: + * TAO_IDL/be_include/be_visitor_interface.h: Started implementation of the collocated class code generation, using the visitor pattern; hence the new be_visitor class and some examples of its use. - * TAO_IDL/be_include/be_type.h: - * TAO_IDL/be_include/be_typedef.h: - * TAO_IDL/be/be_type.cpp: - * TAO_IDL/be/be_typedef.cpp: + * TAO_IDL/be_include/be_type.h: + * TAO_IDL/be_include/be_typedef.h: + * TAO_IDL/be/be_type.cpp: + * TAO_IDL/be/be_typedef.cpp: Added method to obtain the node type for the most "unaliased" type though a typedef chain. This is needed in several points for code generation. - * TAO_IDL/be/be_interface.cpp: + * TAO_IDL/be/be_interface.cpp: Implemented the collocated class generation using visitors, ditto for (part of) the main class. - * TAO_IDL/util/utl_identifier.cpp: + * TAO_IDL/util/utl_identifier.cpp: Fixed memory deallocation problem. The string was copied using ACE_OS::strdup(), but deleted using operator delete[]. - * TAO_IDL/be/be_argument.cpp: - * TAO_IDL/be/be_array.cpp: - * TAO_IDL/be/be_attribute.cpp: - * TAO_IDL/be/be_constant.cpp: - * TAO_IDL/be/be_decl.cpp: - * TAO_IDL/be/be_enum.cpp: - * TAO_IDL/be/be_enum_val.cpp: - * TAO_IDL/be/be_exception.cpp: - * TAO_IDL/be/be_expression.cpp: - * TAO_IDL/be/be_field.cpp: - * TAO_IDL/be/be_interface.cpp: - * TAO_IDL/be/be_interface_fwd.cpp: - * TAO_IDL/be/be_module.cpp: - * TAO_IDL/be/be_operation.cpp: - * TAO_IDL/be/be_predefined_type.cpp: - * TAO_IDL/be/be_root.cpp: - * TAO_IDL/be/be_scope.cpp: - * TAO_IDL/be/be_sequence.cpp: - * TAO_IDL/be/be_string.cpp: - * TAO_IDL/be/be_structure.cpp: - * TAO_IDL/be/be_type.cpp: - * TAO_IDL/be/be_typedef.cpp: - * TAO_IDL/be/be_union.cpp: - * TAO_IDL/be/be_union_branch.cpp: - * TAO_IDL/be/be_union_label.cpp: - * TAO_IDL/be_include/be.h: - * TAO_IDL/be_include/be_argument.h: - * TAO_IDL/be_include/be_array.h: - * TAO_IDL/be_include/be_attribute.h: - * TAO_IDL/be_include/be_constant.h: - * TAO_IDL/be_include/be_decl.h: - * TAO_IDL/be_include/be_enum.h: - * TAO_IDL/be_include/be_enum_val.h: - * TAO_IDL/be_include/be_exception.h: - * TAO_IDL/be_include/be_expression.h: - * TAO_IDL/be_include/be_field.h: - * TAO_IDL/be_include/be_interface.h: - * TAO_IDL/be_include/be_interface_fwd.h: - * TAO_IDL/be_include/be_module.h: - * TAO_IDL/be_include/be_operation.h: - * TAO_IDL/be_include/be_predefined_type.h: - * TAO_IDL/be_include/be_root.h: - * TAO_IDL/be_include/be_scope.h: - * TAO_IDL/be_include/be_sequence.h: - * TAO_IDL/be_include/be_string.h: - * TAO_IDL/be_include/be_structure.h: - * TAO_IDL/be_include/be_type.h: - * TAO_IDL/be_include/be_typedef.h: - * TAO_IDL/be_include/be_union.h: - * TAO_IDL/be_include/be_union_branch.h: - * TAO_IDL/be_include/be_union_label.h: + * TAO_IDL/be/be_argument.cpp: + * TAO_IDL/be/be_array.cpp: + * TAO_IDL/be/be_attribute.cpp: + * TAO_IDL/be/be_constant.cpp: + * TAO_IDL/be/be_decl.cpp: + * TAO_IDL/be/be_enum.cpp: + * TAO_IDL/be/be_enum_val.cpp: + * TAO_IDL/be/be_exception.cpp: + * TAO_IDL/be/be_expression.cpp: + * TAO_IDL/be/be_field.cpp: + * TAO_IDL/be/be_interface.cpp: + * TAO_IDL/be/be_interface_fwd.cpp: + * TAO_IDL/be/be_module.cpp: + * TAO_IDL/be/be_operation.cpp: + * TAO_IDL/be/be_predefined_type.cpp: + * TAO_IDL/be/be_root.cpp: + * TAO_IDL/be/be_scope.cpp: + * TAO_IDL/be/be_sequence.cpp: + * TAO_IDL/be/be_string.cpp: + * TAO_IDL/be/be_structure.cpp: + * TAO_IDL/be/be_type.cpp: + * TAO_IDL/be/be_typedef.cpp: + * TAO_IDL/be/be_union.cpp: + * TAO_IDL/be/be_union_branch.cpp: + * TAO_IDL/be/be_union_label.cpp: + * TAO_IDL/be_include/be.h: + * TAO_IDL/be_include/be_argument.h: + * TAO_IDL/be_include/be_array.h: + * TAO_IDL/be_include/be_attribute.h: + * TAO_IDL/be_include/be_constant.h: + * TAO_IDL/be_include/be_decl.h: + * TAO_IDL/be_include/be_enum.h: + * TAO_IDL/be_include/be_enum_val.h: + * TAO_IDL/be_include/be_exception.h: + * TAO_IDL/be_include/be_expression.h: + * TAO_IDL/be_include/be_field.h: + * TAO_IDL/be_include/be_interface.h: + * TAO_IDL/be_include/be_interface_fwd.h: + * TAO_IDL/be_include/be_module.h: + * TAO_IDL/be_include/be_operation.h: + * TAO_IDL/be_include/be_predefined_type.h: + * TAO_IDL/be_include/be_root.h: + * TAO_IDL/be_include/be_scope.h: + * TAO_IDL/be_include/be_sequence.h: + * TAO_IDL/be_include/be_string.h: + * TAO_IDL/be_include/be_structure.h: + * TAO_IDL/be_include/be_type.h: + * TAO_IDL/be_include/be_typedef.h: + * TAO_IDL/be_include/be_union.h: + * TAO_IDL/be_include/be_union_branch.h: + * TAO_IDL/be_include/be_union_label.h: Added the accept() method for the vistor pattern implementation. @@ -428,105 +434,105 @@ Wed Dec 24 15:50:38 1997 Chris Cleeland <cleeland@tango.cs.wustl.edu> Tue Dec 23 12:00:38 1997 Carlos O'Ryan <coryan@macarena.cs.wustl.edu> - * TAO-INSTALL.html: - * VERSION: - * Benchmark/benchmark/Makefile: - * TAO_IDL/be/be_array.cpp: - * TAO_IDL/be/be_attribute.cpp: - * TAO_IDL/be/be_codegen.cpp: - * TAO_IDL/be/be_decl.cpp: - * TAO_IDL/be/be_exception.cpp: - * TAO_IDL/be/be_operation.cpp: - * TAO_IDL/be/be_scope.cpp: - * TAO_IDL/be/be_sequence.cpp: - * TAO_IDL/be/be_state.cpp: - * TAO_IDL/be/be_state_argument.cpp: - * TAO_IDL/be/be_state_exception.cpp: - * TAO_IDL/be/be_state_operation.cpp: - * TAO_IDL/be/be_state_sequence.cpp: - * TAO_IDL/be/be_state_structure.cpp: - * TAO_IDL/be/be_state_typedef.cpp: - * TAO_IDL/be/be_state_union.cpp: - * TAO_IDL/be/be_type.cpp: - * TAO_IDL/be/be_union.cpp: - * TAO_IDL/be/be_union_branch.cpp: - * TAO_IDL/be_include/be_array.h: - * TAO_IDL/be_include/be_codegen.h: - * TAO_IDL/be_include/be_decl.h: - * TAO_IDL/be_include/be_scope.h: - * TAO_IDL/be_include/be_sequence.h: - * TAO_IDL/be_include/be_state.h: - * TAO_IDL/narrow/narrow.cpp: - * docs/Options.html: - * docs/components.html: - * docs/configurations.html: - * docs/index.html: - * docs/orbsvcs.html: - * docs/releasenotes/index.html: - * orbsvcs/README: - * orbsvcs/Dump_Schedule/Dump_Schedule.cpp: - * orbsvcs/Dump_Schedule/Makefile: - * orbsvcs/Event_Service/Dispatching_Modules.cpp: - * orbsvcs/Event_Service/Dispatching_Modules.i: - * orbsvcs/Event_Service/Event_Channel.cpp: - * orbsvcs/Event_Service/Event_Channel.i: - * orbsvcs/Event_Service/Event_Service.cpp: - * orbsvcs/Event_Service/Makefile: - * orbsvcs/Event_Service/RT_Task.cpp: - * orbsvcs/Event_Service/ReactorTask.cpp: - * orbsvcs/Naming_Service/CosNaming_i.cpp: - * orbsvcs/Naming_Service/Makefile: - * orbsvcs/Scheduling_Service/Config_Scheduler.cpp: - * orbsvcs/Scheduling_Service/Config_Scheduler.h: - * orbsvcs/Scheduling_Service/Makefile: - * orbsvcs/Scheduling_Service/Scheduling_Service.cpp: - * orbsvcs/orbsvcs/Makefile: - * orbsvcs/orbsvcs/RtecEventChannelAdmin.idl: - * orbsvcs/orbsvcs/Runtime_Scheduler.cpp: - * orbsvcs/orbsvcs/Runtime_Scheduler.h: - * orbsvcs/orbsvcs/Scheduler_Factory.cpp: - * orbsvcs/tests/Event_Latency/Event_Latency.cpp: - * orbsvcs/tests/Event_Latency/Makefile: - * orbsvcs/tests/Logger/Makefile: - * orbsvcs/tests/Logger/clnt.cpp: - * orbsvcs/tests/Simple_Naming/Makefile: - * tao/Makefile: - * tao/Timeprobe.cpp: - * tao/corba.h: - * tao/corbacom.cpp: - * tao/deep_free.cpp: - * tao/encode.cpp: - * tao/except.cpp: - * tao/except.h: - * tao/giop.cpp: - * tao/invoke.cpp: - * tao/managed_types.cpp: - * tao/managed_types.h: - * tao/managed_types.i: - * tao/object.i: - * tao/orb_core.cpp: - * tao/request.cpp: - * tao/tao_internals.cpp: - * tests/Cubit/TAO/IDL_Cubit/clnt.cpp: - * tests/Cubit/TAO/IDL_Cubit/clnt.h: - * tests/Cubit/TAO/MT_Cubit/client/Task_Client.cpp: - * tests/Cubit/TAO/MT_Cubit/client/Task_Client.h: - * tests/Cubit/TAO/MT_Cubit/client/client.cpp: - * tests/Cubit/TAO/MT_Cubit/client/cubit.idl: - * tests/Cubit/TAO/MT_Cubit/server/cubit.h: - * tests/Cubit/TAO/MT_Cubit/server/cubit.idl: - * tests/Cubit/TAO/MT_Cubit/server/cubit_i.cpp: - * tests/Cubit/TAO/MT_Cubit/server/cubit_i.h: - * tests/Cubit/TAO/MT_Cubit/server/method_db.i: - * tests/Cubit/TAO/MT_Cubit/server/svr.cpp: + * TAO-INSTALL.html: + * VERSION: + * Benchmark/benchmark/Makefile: + * TAO_IDL/be/be_array.cpp: + * TAO_IDL/be/be_attribute.cpp: + * TAO_IDL/be/be_codegen.cpp: + * TAO_IDL/be/be_decl.cpp: + * TAO_IDL/be/be_exception.cpp: + * TAO_IDL/be/be_operation.cpp: + * TAO_IDL/be/be_scope.cpp: + * TAO_IDL/be/be_sequence.cpp: + * TAO_IDL/be/be_state.cpp: + * TAO_IDL/be/be_state_argument.cpp: + * TAO_IDL/be/be_state_exception.cpp: + * TAO_IDL/be/be_state_operation.cpp: + * TAO_IDL/be/be_state_sequence.cpp: + * TAO_IDL/be/be_state_structure.cpp: + * TAO_IDL/be/be_state_typedef.cpp: + * TAO_IDL/be/be_state_union.cpp: + * TAO_IDL/be/be_type.cpp: + * TAO_IDL/be/be_union.cpp: + * TAO_IDL/be/be_union_branch.cpp: + * TAO_IDL/be_include/be_array.h: + * TAO_IDL/be_include/be_codegen.h: + * TAO_IDL/be_include/be_decl.h: + * TAO_IDL/be_include/be_scope.h: + * TAO_IDL/be_include/be_sequence.h: + * TAO_IDL/be_include/be_state.h: + * TAO_IDL/narrow/narrow.cpp: + * docs/Options.html: + * docs/components.html: + * docs/configurations.html: + * docs/index.html: + * docs/orbsvcs.html: + * docs/releasenotes/index.html: + * orbsvcs/README: + * orbsvcs/Dump_Schedule/Dump_Schedule.cpp: + * orbsvcs/Dump_Schedule/Makefile: + * orbsvcs/Event_Service/Dispatching_Modules.cpp: + * orbsvcs/Event_Service/Dispatching_Modules.i: + * orbsvcs/Event_Service/Event_Channel.cpp: + * orbsvcs/Event_Service/Event_Channel.i: + * orbsvcs/Event_Service/Event_Service.cpp: + * orbsvcs/Event_Service/Makefile: + * orbsvcs/Event_Service/RT_Task.cpp: + * orbsvcs/Event_Service/ReactorTask.cpp: + * orbsvcs/Naming_Service/CosNaming_i.cpp: + * orbsvcs/Naming_Service/Makefile: + * orbsvcs/Scheduling_Service/Config_Scheduler.cpp: + * orbsvcs/Scheduling_Service/Config_Scheduler.h: + * orbsvcs/Scheduling_Service/Makefile: + * orbsvcs/Scheduling_Service/Scheduling_Service.cpp: + * orbsvcs/orbsvcs/Makefile: + * orbsvcs/orbsvcs/RtecEventChannelAdmin.idl: + * orbsvcs/orbsvcs/Runtime_Scheduler.cpp: + * orbsvcs/orbsvcs/Runtime_Scheduler.h: + * orbsvcs/orbsvcs/Scheduler_Factory.cpp: + * orbsvcs/tests/Event_Latency/Event_Latency.cpp: + * orbsvcs/tests/Event_Latency/Makefile: + * orbsvcs/tests/Logger/Makefile: + * orbsvcs/tests/Logger/clnt.cpp: + * orbsvcs/tests/Simple_Naming/Makefile: + * tao/Makefile: + * tao/Timeprobe.cpp: + * tao/corba.h: + * tao/corbacom.cpp: + * tao/deep_free.cpp: + * tao/encode.cpp: + * tao/except.cpp: + * tao/except.h: + * tao/giop.cpp: + * tao/invoke.cpp: + * tao/managed_types.cpp: + * tao/managed_types.h: + * tao/managed_types.i: + * tao/object.i: + * tao/orb_core.cpp: + * tao/request.cpp: + * tao/tao_internals.cpp: + * tests/Cubit/TAO/IDL_Cubit/clnt.cpp: + * tests/Cubit/TAO/IDL_Cubit/clnt.h: + * tests/Cubit/TAO/MT_Cubit/client/Task_Client.cpp: + * tests/Cubit/TAO/MT_Cubit/client/Task_Client.h: + * tests/Cubit/TAO/MT_Cubit/client/client.cpp: + * tests/Cubit/TAO/MT_Cubit/client/cubit.idl: + * tests/Cubit/TAO/MT_Cubit/server/cubit.h: + * tests/Cubit/TAO/MT_Cubit/server/cubit.idl: + * tests/Cubit/TAO/MT_Cubit/server/cubit_i.cpp: + * tests/Cubit/TAO/MT_Cubit/server/cubit_i.h: + * tests/Cubit/TAO/MT_Cubit/server/method_db.i: + * tests/Cubit/TAO/MT_Cubit/server/svr.cpp: Merged in the changes between revisions main_to_poa_merge_1 and main_to_poa_merge_2. The only conflicts were: - + ChangeLog: + + ChangeLog: removed all the main truck comments and added the one you are reading just now. - + tests/Cubit/TAO/MT_Cubit/client/Makefile: - + tests/Cubit/TAO/MT_Cubit/client/Makefile: + + tests/Cubit/TAO/MT_Cubit/client/Makefile: + + tests/Cubit/TAO/MT_Cubit/client/Makefile: Left the branch revision, it included the dependencies and had correct syntax. + tao/poa.cpp: @@ -535,19 +541,19 @@ Tue Dec 23 12:00:38 1997 Carlos O'Ryan <coryan@macarena.cs.wustl.edu> Wed Dec 17 02:11:11 1997 Chris Cleeland <cleeland@tango.cs.wustl.edu> - * tao/poa.h: - * tao/poa.cpp: - * tao/orbobj.h: - * tao/orbobj.cpp: - * tao/objkeyC.i: - * tao/objkeyC.h: - * tao/object.h: - * tao/iiopobj.h: - * tao/iiopobj.cpp: - * tao/decode.cpp: - * tao/corbacom.h: - * tao/corba.h: - * tao/any.cpp: + * tao/poa.h: + * tao/poa.cpp: + * tao/orbobj.h: + * tao/orbobj.cpp: + * tao/objkeyC.i: + * tao/objkeyC.h: + * tao/object.h: + * tao/iiopobj.h: + * tao/iiopobj.cpp: + * tao/decode.cpp: + * tao/corbacom.h: + * tao/corba.h: + * tao/any.cpp: All affected by changes to support interfaces required by the new POA, specifically CORBA::Object::key() and CORBA::ORB::key_to_object(). It does not compile now, and seems @@ -555,20 +561,20 @@ Wed Dec 17 02:11:11 1997 Chris Cleeland <cleeland@tango.cs.wustl.edu> Mon Dec 15 19:39:20 1997 Chris Cleeland <cleeland@cs.wustl.edu> - * TAO_IDL/be/Makefile: - * TAO_IDL/be/be_codegen.cpp: - * TAO_IDL/be/be_exception.cpp: - * TAO_IDL/be/be_interface.cpp: - * TAO_IDL/be/be_state.cpp: - * TAO_IDL/be/be_state_attribute.cpp: - * TAO_IDL/be/be_state_exception.cpp: - * TAO_IDL/be/be_union_branch.cpp: - * TAO_IDL/be_include/be_state.h: - * docs/releasenotes/orbcore.html: - * docs/releasenotes/index.html: + * TAO_IDL/be/Makefile: + * TAO_IDL/be/be_codegen.cpp: + * TAO_IDL/be/be_exception.cpp: + * TAO_IDL/be/be_interface.cpp: + * TAO_IDL/be/be_state.cpp: + * TAO_IDL/be/be_state_attribute.cpp: + * TAO_IDL/be/be_state_exception.cpp: + * TAO_IDL/be/be_union_branch.cpp: + * TAO_IDL/be_include/be_state.h: + * docs/releasenotes/orbcore.html: + * docs/releasenotes/index.html: * orbsvcs/Naming_Service.cpp: - * tao/iiopobj.h: - * tao/except.h: + * tao/iiopobj.h: + * tao/except.h: * tao/except.cpp: Merged in changes from the main trunk. * tests/Thruput_test/Makefile: Updated to use taoconfig.mk. diff --git a/TAO/TAO-INSTALL.html b/TAO/TAO-INSTALL.html index 296b5c38c92..6c92bda8c29 100644 --- a/TAO/TAO-INSTALL.html +++ b/TAO/TAO-INSTALL.html @@ -35,7 +35,7 @@ undefined and most likely unpredictable and erroneous results. <P> in the <a href="../ACE-INSTALL.html">ACE installation notes</a>.</li> <P> - <li>Build and install ACE under $ACE_ROOT.</li> <P> + <li>Build and install ACE under <CODE>$ACE_ROOT</CODE>.</li> <P> <UL> <li>Change directory to <code>$ACE_ROOT/ace</code> and execute @@ -43,9 +43,9 @@ undefined and most likely unpredictable and erroneous results. <P> </UL> <li>Set <code>TAO_ROOT</code> environment variable to - $ACE_ROOT/TAO. <P> + <CODE>$ACE_ROOT/TAO</CODE>. <P> - <li>Build and install the TAO release under $TAO_ROOT.</li> <P> + <li>Build and install the TAO release under <CODE>$TAO_ROOT</CODE>.</li> <P> <UL> <li>Change directory to <code>$TAO_ROOT/tao</code> and diff --git a/TAO/TAO_IDL/Makefile b/TAO/TAO_IDL/Makefile index 8f8e2dc7b0c..78ad82cc569 100644 --- a/TAO/TAO_IDL/Makefile +++ b/TAO/TAO_IDL/Makefile @@ -8,6 +8,13 @@ # Local macros #---------------------------------------------------------------------------- +BIN = tao_idl +LSRC = $(addsuffix .cpp,$(BIN)) +LDLIBS = -ldrv -lfe -last -ltao_idl_util -lnarrow -lbe -lACE +BUILD = $(BIN) + +DIRS = driver fe ast util narrow be + #---------------------------------------------------------------------------- # Include macros and targets #---------------------------------------------------------------------------- @@ -15,36 +22,31 @@ include $(ACE_ROOT)/include/makeinclude/wrapper_macros.GNU ifndef VXWORKS include $(ACE_ROOT)/include/makeinclude/macros.GNU - include $(ACE_ROOT)/include/makeinclude/rules.lib.GNU include $(ACE_ROOT)/include/makeinclude/rules.common.GNU include $(ACE_ROOT)/include/makeinclude/rules.nested.GNU - include $(ACE_ROOT)/include/makeinclude/rules.nolocal.GNU + include $(ACE_ROOT)/include/makeinclude/rules.local.GNU + include $(ACE_ROOT)/include/makeinclude/rules.bin.GNU endif # VXWORKS -INFO = -# LIBS = -lACE -DIRS = driver fe ast util narrow be -BIN = tao_idl -TAOLIBS = -L$(ACE_ROOT)/ace -ldrv -lfe -last -ltao_idl_util -lnarrow -lbe -lACE -CLONE = -BUILD = $(VBIN) #---------------------------------------------------------------------------- # Local targets #---------------------------------------------------------------------------- ifdef VXWORKS -all clean realclean: @echo The IDL compiler won\'t run or build for VxWorks. else -all: - $(PRELINK) $(CXX) $(CFLAGS) -o $(BIN) $(TAOLIBS) $(LIBS) + +IDL_CFE_VERSION = \"1.3.0\" +CPPFLAGS += -Iinclude -Ibe_include -DCPP_LOCATION=\"$(CXX)\" \ + -DIDL_CFE_VERSION=$(IDL_CFE_VERSION) clean: rm -f tao_idl realclean: rm -f tao_idl TAGS + endif # VXWORKS tags: @@ -52,3 +54,46 @@ tags: etags -C include/*.h be_include/*.h etags -a ast/*.cpp util/*.cpp narrow/*.cpp \ driver/*.cpp fe/*.cpp be/*.cpp + +# DO NOT DELETE THIS LINE -- g++dep uses it. +# DO NOT PUT ANYTHING AFTER THIS LINE, IT WILL GO AWAY. + +.obj/tao_idl.o .shobj/tao_idl.: tao_idl.cpp include/idl.h \ + $(ACE_ROOT)/ace/ACE.h \ + $(ACE_ROOT)/ace/OS.h \ + $(ACE_ROOT)/ace/inc_user_config.h \ + $(ACE_ROOT)/ace/config.h \ + $(ACE_ROOT)/ace/streams.h \ + $(ACE_ROOT)/ace/Basic_Types.h \ + $(ACE_ROOT)/ace/Basic_Types.i \ + $(ACE_ROOT)/ace/OS.i \ + $(ACE_ROOT)/ace/Trace.h \ + $(ACE_ROOT)/ace/Log_Msg.h \ + $(ACE_ROOT)/ace/Log_Record.h \ + $(ACE_ROOT)/ace/Log_Priority.h \ + $(ACE_ROOT)/ace/Log_Record.i \ + $(ACE_ROOT)/ace/Version.h \ + $(ACE_ROOT)/ace/ACE.i \ + include/intlmacros.h include/idl_narrow.h include/idl_defines.h \ + include/idl_fwd.h include/idl_bool.h include/utl_string.h \ + include/utl_identifier.h include/ast.h include/utl_scoped_name.h \ + include/ast_decl.h include/ast_expression.h include/utl_scope.h \ + include/ast_type.h include/ast_concrete_type.h \ + include/ast_predefined_type.h include/ast_module.h include/ast_root.h \ + include/ast_interface.h include/ast_interface_fwd.h \ + include/ast_structure.h include/ast_exception.h include/ast_enum.h \ + include/ast_operation.h include/utl_list.h include/ast_field.h \ + include/ast_argument.h include/ast_attribute.h include/ast_union.h \ + include/ast_union_branch.h include/ast_union_label.h \ + include/ast_constant.h include/ast_enum_val.h include/ast_array.h \ + include/ast_sequence.h include/ast_string.h include/ast_typedef.h \ + include/ast_native.h include/utl_strlist.h include/utl_exprlist.h \ + include/ast_generator.h include/util.h include/utl_stack.h \ + include/utl_idlist.h include/utl_exceptlist.h include/utl_namelist.h \ + include/utl_labellist.h include/utl_decllist.h include/idl_global.h \ + include/utl_error.h include/utl_indenter.h include/idl_extern.h \ + include/fe_extern.h include/be_extern.h include/drv_extern.h \ + include/ast_extern.h include/nr_extern.h include/global_extern.h \ + include/drv_private.h include/drv_link.h + +# IF YOU PUT ANYTHING HERE IT WILL GO AWAY diff --git a/TAO/TAO_IDL/be/be_interface.cpp b/TAO/TAO_IDL/be/be_interface.cpp index a469e5e8469..cad26dc1831 100644 --- a/TAO/TAO_IDL/be/be_interface.cpp +++ b/TAO/TAO_IDL/be/be_interface.cpp @@ -81,7 +81,7 @@ be_interface::compute_coll_name (void) // Reserve enough room for the "POA_" prefix, the "_tao_collocated_" // prefix and the local name and the (optional) "::" int namelen = sizeof (collocated) + sizeof (poa); - + UTL_IdListActiveIterator *i; ACE_NEW (i, UTL_IdListActiveIterator (this->name ())); while (!i->is_done ()) @@ -107,7 +107,7 @@ be_interface::compute_coll_name (void) // Increase right away, so we can test for the final component // in the loop. i->next (); - + // We add the POA_ preffix only if the first component is not // the global scope... if (ACE_OS::strcmp (item, "") != 0) @@ -690,7 +690,10 @@ int be_interface::gen_server_header (void) { *sh << ", public virtual "; intf = be_interface::narrow_from_decl (inherits ()[i]); - *sh << intf->full_skel_name (); // dump the scoped name + *sh << intf->relative_skel_name (this->full_skel_name ()); // dump + // the + // scoped + // name } // end of for loop } else @@ -949,7 +952,7 @@ be_interface::gen_server_inline (void) *si << "{\n"; *si << "}\n"; - + *si << "ACE_INLINE " << this->name () << "*\n" << this->full_skel_name () << "::_this (CORBA_Environment&)\n" << "{\n"; diff --git a/TAO/TAO_IDL/be/be_state_argument.cpp b/TAO/TAO_IDL/be/be_state_argument.cpp index 47b2cb8c287..efefcc61f4c 100644 --- a/TAO/TAO_IDL/be/be_state_argument.cpp +++ b/TAO/TAO_IDL/be/be_state_argument.cpp @@ -2242,7 +2242,7 @@ be_state_argument::gen_code (be_type *bt, be_decl *d, be_type *type) break; case TAO_CodeGen::TAO_ARGUMENT_CS: case TAO_CodeGen::TAO_ARGUMENT_SH: - *os << bt->name () << arg->local_name () << ", "; + *os << bt->name () << " " << arg->local_name () << ", "; break; case TAO_CodeGen::TAO_ARGUMENT_UPCALL_SS: case TAO_CodeGen::TAO_ARGUMENT_DOCALL_CS: diff --git a/TAO/TAO_IDL/driver/Makefile b/TAO/TAO_IDL/driver/Makefile index 1f414b5a0d2..ae9aafdfd3d 100644 --- a/TAO/TAO_IDL/driver/Makefile +++ b/TAO/TAO_IDL/driver/Makefile @@ -14,7 +14,6 @@ IDL_CFE_VERSION = \"1.3.0\" DRIVER_FILES = \ drv_init \ drv_private \ - drv_main \ drv_args \ drv_fork \ drv_link \ @@ -150,50 +149,6 @@ $(LOBJS): $(LHDRS) ../include/fe_extern.h ../include/be_extern.h ../include/drv_extern.h \ ../include/ast_extern.h ../include/nr_extern.h \ ../include/global_extern.h ../include/drv_private.h -.obj/drv_main.o .shobj/drv_main.so: drv_main.cpp ../include/idl.h \ - $(ACE_ROOT)/ace/ACE.h \ - $(ACE_ROOT)/ace/OS.h \ - $(ACE_ROOT)/ace/inc_user_config.h \ - $(ACE_ROOT)/ace/config.h \ - $(ACE_ROOT)/ace/streams.h \ - $(ACE_ROOT)/ace/Basic_Types.h \ - $(ACE_ROOT)/ace/Basic_Types.i \ - $(ACE_ROOT)/ace/OS.i \ - $(ACE_ROOT)/ace/Trace.h \ - $(ACE_ROOT)/ace/Log_Msg.h \ - $(ACE_ROOT)/ace/Log_Record.h \ - $(ACE_ROOT)/ace/Log_Priority.h \ - $(ACE_ROOT)/ace/Log_Record.i \ - $(ACE_ROOT)/ace/Version.h \ - $(ACE_ROOT)/ace/ACE.i \ - ../include/intlmacros.h ../include/idl_narrow.h \ - ../include/idl_defines.h ../include/idl_fwd.h ../include/idl_bool.h \ - ../include/utl_string.h ../include/utl_identifier.h ../include/ast.h \ - ../include/utl_scoped_name.h ../include/ast_decl.h \ - ../include/ast_expression.h ../include/utl_scope.h \ - ../include/ast_type.h ../include/ast_concrete_type.h \ - ../include/ast_predefined_type.h ../include/ast_module.h \ - ../include/ast_root.h ../include/ast_interface.h \ - ../include/ast_interface_fwd.h ../include/ast_structure.h \ - ../include/ast_exception.h ../include/ast_enum.h \ - ../include/ast_operation.h ../include/utl_list.h \ - ../include/ast_field.h ../include/ast_argument.h \ - ../include/ast_attribute.h ../include/ast_union.h \ - ../include/ast_union_branch.h ../include/ast_union_label.h \ - ../include/ast_constant.h ../include/ast_enum_val.h \ - ../include/ast_array.h ../include/ast_sequence.h \ - ../include/ast_string.h ../include/ast_typedef.h \ - ../include/ast_native.h ../include/utl_strlist.h \ - ../include/utl_exprlist.h ../include/ast_generator.h \ - ../include/util.h ../include/utl_stack.h ../include/utl_idlist.h \ - ../include/utl_exceptlist.h ../include/utl_namelist.h \ - ../include/utl_labellist.h ../include/utl_decllist.h \ - ../include/idl_global.h ../include/utl_error.h \ - ../include/utl_indenter.h ../include/idl_extern.h \ - ../include/fe_extern.h ../include/be_extern.h ../include/drv_extern.h \ - ../include/ast_extern.h ../include/nr_extern.h \ - ../include/global_extern.h ../include/drv_private.h \ - ../include/drv_link.h .obj/drv_args.o .shobj/drv_args.so: drv_args.cpp ../include/idl.h \ $(ACE_ROOT)/ace/ACE.h \ $(ACE_ROOT)/ace/OS.h \ diff --git a/TAO/TAO_IDL/driver/drv_main.cpp b/TAO/TAO_IDL/driver/drv_main.cpp deleted file mode 100644 index 9cd81643878..00000000000 --- a/TAO/TAO_IDL/driver/drv_main.cpp +++ /dev/null @@ -1,256 +0,0 @@ -/* - -COPYRIGHT - -Copyright 1992, 1993, 1994 Sun Microsystems, Inc. Printed in the United -States of America. All Rights Reserved. - -This product is protected by copyright and distributed under the following -license restricting its use. - -The Interface Definition Language Compiler Front End (CFE) is made -available for your use provided that you include this license and copyright -notice on all media and documentation and the software program in which -this product is incorporated in whole or part. You may copy and extend -functionality (but may not remove functionality) of the Interface -Definition Language CFE without charge, but you are not authorized to -license or distribute it to anyone else except as part of a product or -program developed by you or with the express written consent of Sun -Microsystems, Inc. ("Sun"). - -The names of Sun Microsystems, Inc. and any of its subsidiaries or -affiliates may not be used in advertising or publicity pertaining to -distribution of Interface Definition Language CFE as permitted herein. - -This license is effective until terminated by Sun for failure to comply -with this license. Upon termination, you shall destroy or return all code -and documentation for the Interface Definition Language CFE. - -INTERFACE DEFINITION LANGUAGE CFE IS PROVIDED AS IS WITH NO WARRANTIES OF -ANY KIND INCLUDING THE WARRANTIES OF DESIGN, MERCHANTIBILITY AND FITNESS -FOR A PARTICULAR PURPOSE, NONINFRINGEMENT, OR ARISING FROM A COURSE OF -DEALING, USAGE OR TRADE PRACTICE. - -INTERFACE DEFINITION LANGUAGE CFE IS PROVIDED WITH NO SUPPORT AND WITHOUT -ANY OBLIGATION ON THE PART OF Sun OR ANY OF ITS SUBSIDIARIES OR AFFILIATES -TO ASSIST IN ITS USE, CORRECTION, MODIFICATION OR ENHANCEMENT. - -SUN OR ANY OF ITS SUBSIDIARIES OR AFFILIATES SHALL HAVE NO LIABILITY WITH -RESPECT TO THE INFRINGEMENT OF COPYRIGHTS, TRADE SECRETS OR ANY PATENTS BY -INTERFACE DEFINITION LANGUAGE CFE OR ANY PART THEREOF. - -IN NO EVENT WILL SUN OR ANY OF ITS SUBSIDIARIES OR AFFILIATES BE LIABLE FOR -ANY LOST REVENUE OR PROFITS OR OTHER SPECIAL, INDIRECT AND CONSEQUENTIAL -DAMAGES, EVEN IF SUN HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. - -Use, duplication, or disclosure by the government is subject to -restrictions as set forth in subparagraph (c)(1)(ii) of the Rights in -Technical Data and Computer Software clause at DFARS 252.227-7013 and FAR -52.227-19. - -Sun, Sun Microsystems and the Sun logo are trademarks or registered -trademarks of Sun Microsystems, Inc. - -SunSoft, Inc. -2550 Garcia Avenue -Mountain View, California 94043 - -NOTE: - -SunOS, SunSoft, Sun, Solaris, Sun Microsystems or the Sun logo are -trademarks or registered trademarks of Sun Microsystems, Inc. - - */ - -/* -** drv_main.cc - Main program for IDL compiler driver -** -** LOGIC: -** -** 1. Initialize compiler driver -** 2. Parse command line args -** 3. If more than one file to parse, fork -** 4. Otherwise, for the single file, invoke DRV_drive -*/ - -#include "idl.h" -#include "idl_extern.h" - -#include "drv_private.h" -#include "drv_link.h" - -static void -DRV_version() -{ - cerr << idl_global->prog_name() - << GTDEVEL(", version ") - << IDL_CFE_VERSION - << "\n"; - (*DRV_BE_version)(); -} - -/* -** Drive the compilation -** -** LOGIC: -** -** 1. Initialize the CFE, stage 1. This builds the scope stack -** 2. Initialize the BE. This builds an instance of the generator -** 3. Initialize the CFE, stage 2. This builds the global scope -** and populates it with the predefined types -** 4. Invoke FE_yyparse -** 5. Check for errors from FE_yyparse. If any, exit now -** 6. Check for undefined forward declared interfaces. If any, exit now -** 7. Check if asked to dump AST. If so, do. -** 8. Invoke BE. -*/ -void -DRV_drive(char *s) -{ - char *fn; - - // Macro to avoid "warning: unused parameter" type warning. - ACE_UNUSED_ARG (fn); - - // set the name of the IDL file we are parsing. This is useful to the backend - // when it generates C++ headers and files - idl_global->idl_src_file(new UTL_String(s)); - /* - * Pass through CPP - */ - if (idl_global->compile_flags() & IDL_CF_INFORMATIVE) - cerr << idl_global->prog_name() - << GTDEVEL(": preprocessing ") - << s - << "\n"; - DRV_pre_proc(s); - /* - * Initialize FE stage 1 - */ - (*DRV_FE_init_stage1)(); - /* - * Initialize BE - */ - idl_global->set_gen((*DRV_BE_init)()); - /* - * Initialize FE stage 2 - */ - (*DRV_FE_init_stage2)(); - /* - * Parse - */ - if (idl_global->compile_flags() & IDL_CF_INFORMATIVE) - cerr << idl_global->prog_name() - << GTDEVEL(": parsing ") - << s - << "\n"; - (*DRV_FE_yyparse)(); - /* - * If there were any errors, stop - */ - if (idl_global->err_count() > 0) { - cerr << idl_global->prog_name() - << ": " - << s - << GTDEVEL(": found "); - cerr << idl_global->err_count() - << GTDEVEL(" error"); - cerr << (idl_global->err_count() > 1 - ? GTDEVEL("s") : "") - << "\n"; - /* - * Call BE_abort to allow a BE to clean up after itself - */ - (*DRV_BE_abort)(); - exit((int) idl_global->err_count()); - } - /* - * Dump the code - */ - if ((idl_global->compile_flags() & IDL_CF_INFORMATIVE) - && (idl_global->compile_flags() & IDL_CF_DUMP_AST)) - cerr << idl_global->prog_name() - << GTDEVEL(": dump ") - << s - << "\n"; - if (idl_global->compile_flags() & IDL_CF_DUMP_AST) { - cerr << GTDEVEL("Dump of AST:\n"); - idl_global->root()->dump(cerr); - } - /* - * Call the main entry point for the BE - */ - if (idl_global->compile_flags() & IDL_CF_INFORMATIVE) - cerr << idl_global->prog_name() - << GTDEVEL(": BE processing on ") - << s - << "\n"; - (*DRV_BE_produce)(); - /* - * Exit cleanly - */ - exit(0); -} - -/* - * IDL compiler main program. Logic as explained in comment at head - * of file. - */ -int -main(int argc, char **argv) -{ - /* - * Open front-end library - */ - DRV_FE_open(); - /* - * Initialize driver and global variables - */ - DRV_init(); - /* - * Open back-end library - */ - DRV_BE_open(); - /* - * Parse arguments - */ - DRV_parse_args(argc, argv); - /* - * If a version message is requested, print it and exit - */ - if (idl_global->compile_flags() & IDL_CF_VERSION) { - DRV_version(); - exit(0); - } - /* - * If a usage message is requested, give it and exit - */ - if (idl_global->compile_flags() & IDL_CF_ONLY_USAGE) { - DRV_usage(); - exit(0); - } - /* - * Fork off a process for each file to process. Fork only if - * there is more than one file to process - */ - if (DRV_nfiles > 1) { - /* - * DRV_fork never returns - */ - DRV_fork(); - } else { - /* - * Do the one file we have to parse - * - * Check if stdin and handle file name appropriately - */ - if (DRV_nfiles == 0) { - DRV_files[0] = "standard input"; - } - DRV_file_index = 0; - DRV_drive(DRV_files[DRV_file_index]); - } - exit(0); - /* NOTREACHED */ - return 0; -} diff --git a/TAO/TAO_IDL/fe/y.tab.cpp b/TAO/TAO_IDL/fe/y.tab.cpp index 26b42df2e54..cd194c3b8ba 100644 --- a/TAO/TAO_IDL/fe/y.tab.cpp +++ b/TAO/TAO_IDL/fe/y.tab.cpp @@ -896,7 +896,7 @@ int yychar; /* current input token number */ #define YYLEX() yycvtok(yylex()) /* ** yycvtok - return a token if i is a wchar_t value that exceeds 255. -** If i<255, i itself is the token. If i>255 but the neither +** If i<255, i itself is the token. If i>255 but the neither ** of the 30th or 31st bit is on, i is already a token. */ #if defined(__STDC__) || defined(__cplusplus) @@ -917,7 +917,7 @@ int yycvtok(i) int i; while ((last>=first)&&(first>=0)) {/*Binary search loop*/ mid = (first+last)/2; j = yymbchars[mid].character; - if( j==i ){/*Found*/ + if( j==i ){/*Found*/ return yymbchars[mid].tvalue; }else if( j<i ){ first = mid + 1; @@ -1359,7 +1359,7 @@ int yyparse() */ switch( yytmp ) { - + case 4: # line 240 "idl.yy" { @@ -3292,4 +3292,3 @@ case 285: } goto yystack; /* reset registers in driver code */ } - diff --git a/TAO/orbsvcs/Dump_Schedule/Dump_Schedule.dsp b/TAO/orbsvcs/Dump_Schedule/Dump_Schedule.dsp index 7ce62c41a6c..943d6f62b66 100644 --- a/TAO/orbsvcs/Dump_Schedule/Dump_Schedule.dsp +++ b/TAO/orbsvcs/Dump_Schedule/Dump_Schedule.dsp @@ -61,11 +61,11 @@ LINK32=link.exe # PROP BASE Target_Dir ""
# PROP Use_MFC 0
# PROP Use_Debug_Libraries 1
-# PROP Output_Dir ""
+# PROP Output_Dir "Debug"
# PROP Intermediate_Dir "Debug"
# PROP Target_Dir ""
# ADD BASE CPP /nologo /W3 /Gm /GX /Zi /Od /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c
-# ADD CPP /nologo /W3 /Gm /GX /Zi /Od /I ".." /I "..\.." /I "..\..\.." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c
+# ADD CPP /nologo /W3 /Gm /GX /Zi /Od /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c
# ADD BASE RSC /l 0x409 /d "_DEBUG"
# ADD RSC /l 0x409 /d "_DEBUG"
BSC32=bscmake.exe
diff --git a/TAO/orbsvcs/Event_Service/Event_Service.dsp b/TAO/orbsvcs/Event_Service/Event_Service.dsp index 2fcf8139907..bf0200aab49 100644 --- a/TAO/orbsvcs/Event_Service/Event_Service.dsp +++ b/TAO/orbsvcs/Event_Service/Event_Service.dsp @@ -61,7 +61,7 @@ LINK32=link.exe # PROP BASE Target_Dir ""
# PROP Use_MFC 0
# PROP Use_Debug_Libraries 1
-# PROP Output_Dir ""
+# PROP Output_Dir "Debug"
# PROP Intermediate_Dir "Debug"
# PROP Target_Dir ""
# ADD BASE CPP /nologo /W3 /Gm /GX /Zi /Od /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c
diff --git a/TAO/orbsvcs/Naming_Service/CosNaming_i.cpp b/TAO/orbsvcs/Naming_Service/CosNaming_i.cpp index e2b39df719b..5bbff180e34 100644 --- a/TAO/orbsvcs/Naming_Service/CosNaming_i.cpp +++ b/TAO/orbsvcs/Naming_Service/CosNaming_i.cpp @@ -4,14 +4,14 @@ // // = LIBRARY // cos -// +// // = FILENAME // CosNaming_i.cpp // // = AUTHOR // Marina Spivak <marina@cs.wustl.edu> & // Sergio Flores-Gaitan <sergio@cs.wustl.edu> -// +// // ============================================================================ #include "CosNaming_i.h" @@ -35,7 +35,7 @@ NS_NamingContext::~NS_NamingContext (void) { } -CosNaming::NamingContext_ptr +CosNaming::NamingContext_ptr NS_NamingContext::get_context (const CosNaming::Name &name) { // create compound name to be resolved @@ -44,7 +44,7 @@ NS_NamingContext::get_context (const CosNaming::Name &name) CORBA::ULong len = name.length (); CosNaming::Name comp_name (name); comp_name.length (len - 1); - + // resolve CORBA::Object_ptr cont_ref; @@ -56,11 +56,11 @@ NS_NamingContext::get_context (const CosNaming::Name &name) { IT_env.print_exception ("NS_NamingContext::get_context"); return 0; - } - + } + // Reference to a context from <resolve> cannot be nil because // cannot <bind> to a nil object. - + // Try narrowing object reference to a context type. CosNaming::NamingContext_ptr c; c = CosNaming::NamingContext::_narrow (cont_ref, IT_env); @@ -74,7 +74,7 @@ NS_NamingContext::get_context (const CosNaming::Name &name) rest.length (2); rest[0] = name[len - 2]; rest[1] = name[len - 1]; - + if (CORBA::is_nil (c)) { CosNaming::Name rest; @@ -85,18 +85,18 @@ NS_NamingContext::get_context (const CosNaming::Name &name) return c; } -void -NS_NamingContext::bind (const CosNaming::Name& n, - CORBA::Object_ptr obj, - CORBA::Environment &IT_env) +void +NS_NamingContext::bind (const CosNaming::Name& n, + CORBA::Object_ptr obj, + CORBA::Environment &IT_env) { IT_env.clear (); // get the length of the name - CORBA::ULong len = n.length (); + CORBA::ULong len = n.length (); // Check for invalid name. - if (len == 0) + if (len == 0) { IT_env.clear (); IT_env.exception (new CosNaming::NamingContext::InvalidName); @@ -106,7 +106,7 @@ NS_NamingContext::bind (const CosNaming::Name& n, // If we received compound name, resolve it to get the context in // which the binding should take place, then perform the binding on // target context. - if (len > 1) + if (len > 1) { CosNaming::NamingContext_var cont = get_context (n); CosNaming::Name simple_name; @@ -116,7 +116,7 @@ NS_NamingContext::bind (const CosNaming::Name& n, } // If we received a simple name, we need to bind it in this context. - else + else { NS_IntId entry (obj); NS_ExtId name (n[0].id, n[0].kind); @@ -134,11 +134,11 @@ NS_NamingContext::bind (const CosNaming::Name& n, } } -void -NS_NamingContext::rebind (const CosNaming::Name& n, - CORBA::Object_ptr obj, - CORBA::Environment &IT_env) -{ +void +NS_NamingContext::rebind (const CosNaming::Name& n, + CORBA::Object_ptr obj, + CORBA::Environment &IT_env) +{ // get the length of the name CORBA::ULong len = n.length (); @@ -153,7 +153,7 @@ NS_NamingContext::rebind (const CosNaming::Name& n, // If we received compound name, resolve it to get the context in // which the rebinding should take place, then perform the rebinding // on target context. - if (len > 1) + if (len > 1) { CosNaming::NamingContext_var cont = get_context (n); CosNaming::Name simple_name; @@ -162,13 +162,13 @@ NS_NamingContext::rebind (const CosNaming::Name& n, cont->rebind (simple_name, obj, IT_env); } // If we received a simple name, we need to rebind it in this context. - else + else { NS_IntId entry (obj); NS_ExtId name (n[0].id, n[0].kind); NS_IntId oldentry; NS_ExtId oldname; - + // Try rebinding the name. if (context_.rebind (name, entry, oldname, oldentry) == -1) ; @@ -177,9 +177,9 @@ NS_NamingContext::rebind (const CosNaming::Name& n, } void -NS_NamingContext::bind_context (const CosNaming::Name &n, - CosNaming::NamingContext_ptr nc, - CORBA::Environment &IT_env) +NS_NamingContext::bind_context (const CosNaming::Name &n, + CosNaming::NamingContext_ptr nc, + CORBA::Environment &IT_env) { // Get the length of the name. CORBA::ULong len = n.length (); @@ -195,7 +195,7 @@ NS_NamingContext::bind_context (const CosNaming::Name &n, // If we received compound name, resolve it to get the context in // which the binding should take place, then perform the binding on // target context. - if (len > 1) + if (len > 1) { CosNaming::NamingContext_var cont = get_context (n); CosNaming::Name simple_name; @@ -205,7 +205,7 @@ NS_NamingContext::bind_context (const CosNaming::Name &n, } // If we received a simple name, we need to bind it in this context. - else + else { CosNaming::NameComponent comp = n[0]; NS_IntId entry (nc, CosNaming::ncontext); @@ -223,10 +223,10 @@ NS_NamingContext::bind_context (const CosNaming::Name &n, } } -void -NS_NamingContext::rebind_context (const CosNaming::Name &n, - CosNaming::NamingContext_ptr nc, - CORBA::Environment &IT_env) +void +NS_NamingContext::rebind_context (const CosNaming::Name &n, + CosNaming::NamingContext_ptr nc, + CORBA::Environment &IT_env) { // Get the length of the name. CORBA::ULong len = n.length (); @@ -242,7 +242,7 @@ NS_NamingContext::rebind_context (const CosNaming::Name &n, // If we received compound name, resolve it to get the context in // which the rebinding should take place, then perform the rebinding // on target context. - if (len > 1) + if (len > 1) { CosNaming::NamingContext_var cont = get_context (n); CosNaming::Name simple_name; @@ -252,23 +252,23 @@ NS_NamingContext::rebind_context (const CosNaming::Name &n, } // if we received a simple name, we need to rebind it in this context. - else + else { CosNaming::NameComponent comp = n[0]; NS_IntId entry (nc, CosNaming::ncontext); NS_ExtId name (n[0].id, n[0].kind); NS_IntId oldentry; NS_ExtId oldname; - + // try rebinding the name. if (context_.rebind (name, entry, oldname, oldentry) < 0); // deal with consequences } } - -CORBA::Object_ptr -NS_NamingContext::resolve (const CosNaming::Name& n, - CORBA::Environment &IT_env) + +CORBA::Object_ptr +NS_NamingContext::resolve (const CosNaming::Name& n, + CORBA::Environment &IT_env) { // get the length of the name CORBA::ULong len = n.length (); @@ -280,18 +280,17 @@ NS_NamingContext::resolve (const CosNaming::Name& n, IT_env.exception (new CosNaming::NamingContext::InvalidName); return 0; } - + // resolve the first component of the name NS_ExtId name (n[0].id, n[0].kind); NS_IntId entry; - if (context_.find (name, entry) == -1) + if (context_.find (name, entry) == -1) { IT_env.clear (); IT_env.exception (new CosNaming::NamingContext::NotFound (CosNaming::NamingContext::not_object, n)); return 0; } - /* @@ */// throw CosNaming::NamingContext::NotFound (CosNaming::NamingContext::not_object, n); - + CORBA::Object_ptr item = entry.ref_; // if the name we have to resolve is a compound name @@ -314,8 +313,7 @@ NS_NamingContext::resolve (const CosNaming::Name& n, IT_env.exception (new CosNaming::NamingContext::NotFound (CosNaming::NamingContext::not_context, n)); return 0; } - /* @@ */// throw CosNaming::NamingContext::NotFound (CosNaming::NamingContext::not_context, n); - + CosNaming::Name rest_of_name; rest_of_name.length (len - 1); for (CORBA::ULong i = 1; i < len; i++) @@ -329,9 +327,9 @@ NS_NamingContext::resolve (const CosNaming::Name& n, return CORBA::Object::_duplicate (item); } -void -NS_NamingContext::unbind (const CosNaming::Name& n, - CORBA::Environment &IT_env) +void +NS_NamingContext::unbind (const CosNaming::Name& n, + CORBA::Environment &IT_env) { // if (do_operation (n, CORBA::_nil (), NS_NamingContext::unbind) == 0) @@ -349,7 +347,7 @@ NS_NamingContext::unbind (const CosNaming::Name& n, // If we received compound name, resolve it to get the context in // which the unbinding should take place, then perform the unbinding // on target context. - if (len > 1) + if (len > 1) { CosNaming::NamingContext_var cont = get_context (n); CosNaming::Name simple_name; @@ -369,41 +367,40 @@ NS_NamingContext::unbind (const CosNaming::Name& n, IT_env.exception (new CosNaming::NamingContext::NotFound (CosNaming::NamingContext::not_object, n)); return; } - /* @@ */// throw CosNaming::NamingContext::NotFound (CosNaming::NamingContext::not_object, n); } } - -CosNaming::NamingContext_ptr -NS_NamingContext::new_context (CORBA::Environment &IT_env) + +CosNaming::NamingContext_ptr +NS_NamingContext::new_context (CORBA::Environment &IT_env) { // Macro to avoid "warning: unused parameter" type warning. - ACE_UNUSED_ARG (IT_env); + ACE_UNUSED_ARG (IT_env); NS_NamingContext *c = new NS_NamingContext; - return c->_duplicate (c); + return NS_NamingContext::_duplicate (c); } - -CosNaming::NamingContext_ptr -NS_NamingContext::bind_new_context (const CosNaming::Name& n, - CORBA::Environment &IT_env) + +CosNaming::NamingContext_ptr +NS_NamingContext::bind_new_context (const CosNaming::Name& n, + CORBA::Environment &IT_env) { NS_NamingContext *c = new NS_NamingContext; bind_context (n, c, IT_env); - - // release object if exception occurs. + + // release object if exception occurs. if (IT_env.exception () != 0) { CORBA::release (c); return CosNaming::NamingContext::_nil (); } - - return c->_duplicate (c); + + return NS_NamingContext::_duplicate (c); } - -void -NS_NamingContext::destroy (CORBA::Environment &IT_env) + +void +NS_NamingContext::destroy (CORBA::Environment &IT_env) { if (context_.current_size () != 0) { @@ -415,18 +412,18 @@ NS_NamingContext::destroy (CORBA::Environment &IT_env) // destroy context CORBA::release (tie_ref_); } - -void -NS_NamingContext::list (CORBA::ULong how_many, - CosNaming::BindingList_out bl, - CosNaming::BindingIterator_out bi, - CORBA::Environment &IT_env) + +void +NS_NamingContext::list (CORBA::ULong how_many, + CosNaming::BindingList_out bl, + CosNaming::BindingIterator_out bi, + CORBA::Environment &IT_env) { // Macro to avoid "warning: unused parameter" type warning. - ACE_UNUSED_ARG (IT_env); + ACE_UNUSED_ARG (IT_env); // Dynamically allocate hash map iterator. - NS_NamingContext::HASH_MAP::ITERATOR *hash_iter = + NS_NamingContext::HASH_MAP::ITERATOR *hash_iter = new NS_NamingContext::HASH_MAP::ITERATOR (context_); // Number of bindings that will go into the BindingList. @@ -437,36 +434,38 @@ NS_NamingContext::list (CORBA::ULong how_many, // so need to return a BindingIterator. { NS_BindingIterator *bind_iter = new NS_BindingIterator (hash_iter); - + + // @@ ???? + ACE_UNUSED_ARG (bind_iter); - - // bind_iter->initialize (bi); + + // bind_iter->initialize (bi); CosNaming::BindingIterator::_duplicate (bi); - + n = how_many; } else { // Number of bindings in the context is <= <how_many>, // so do not need to return a BindingIterator. - bi = CosNaming::BindingIterator::_nil (); + bi = CosNaming::BindingIterator::_nil (); n = context_.current_size (); - } + } // use hash iterator to populate a BindingList with // bindings. CosNaming::BindingList bindings; - bindings.length (n); + bindings.length (n); NS_NamingContext::HASH_MAP::ENTRY *hash_entry; - for (CORBA::ULong i = 0; i < n; i++) + for (CORBA::ULong i = 0; i < n; i++) { hash_iter->next (hash_entry); hash_iter->advance (); - + bindings[i].binding_type = hash_entry->int_id_.type_; - - bindings[i].binding_name.length (1); + + bindings[i].binding_name.length (1); bindings[i].binding_name[0].id = CORBA::string_dup (hash_entry->ext_id_.id_.fast_rep ()); bindings[i].binding_name[0].kind = @@ -480,23 +479,23 @@ NS_NamingContext::list (CORBA::ULong how_many, if (context_.current_size () <= how_many) delete hash_iter; } - + NS_BindingIterator::NS_BindingIterator (NS_NamingContext::HASH_MAP::ITERATOR *hash_iter) { hash_iter_ = hash_iter; } - + NS_BindingIterator::~NS_BindingIterator (void) { delete hash_iter_; } - -CORBA::Boolean -NS_BindingIterator::next_one (CosNaming::Binding_out b, - CORBA::Environment &IT_env) + +CORBA::Boolean +NS_BindingIterator::next_one (CosNaming::Binding_out b, + CORBA::Environment &IT_env) { // Macro to avoid "warning: unused parameter" type warning. - ACE_UNUSED_ARG (IT_env); + ACE_UNUSED_ARG (IT_env); if (hash_iter_->done ()) { b = new CosNaming::Binding; @@ -509,26 +508,26 @@ NS_BindingIterator::next_one (CosNaming::Binding_out b, NS_NamingContext::HASH_MAP::ENTRY *hash_entry; hash_iter_->next (hash_entry); hash_iter_->advance (); - + b->binding_type = hash_entry->int_id_.type_; - b->binding_name.length (1); + b->binding_name.length (1); b->binding_name[0].id = CORBA::string_dup (hash_entry->ext_id_.id_.fast_rep ()); b->binding_name[0].kind = - CORBA::string_dup (hash_entry->ext_id_.kind_.fast_rep ()); + CORBA::string_dup (hash_entry->ext_id_.kind_.fast_rep ()); return 1; } } - -CORBA::Boolean -NS_BindingIterator::next_n (CORBA::ULong how_many, + +CORBA::Boolean +NS_BindingIterator::next_n (CORBA::ULong how_many, CosNaming::BindingList_out bl, - CORBA::Environment &IT_env) + CORBA::Environment &IT_env) { // Macro to avoid "warning: unused parameter" type warning. - ACE_UNUSED_ARG (IT_env); + ACE_UNUSED_ARG (IT_env); if (hash_iter_->done ()) { bl = new CosNaming::BindingList; @@ -545,24 +544,24 @@ NS_BindingIterator::next_n (CORBA::ULong how_many, // Iterate and populate the BindingList. NS_NamingContext::HASH_MAP::ENTRY *hash_entry; - for (CORBA::ULong i = 0; i < how_many; i++) + for (CORBA::ULong i = 0; i < how_many; i++) { hash_iter_->next (hash_entry); - + bindings[i].binding_type = hash_entry->int_id_.type_; - - bindings[i].binding_name.length (1); + + bindings[i].binding_name.length (1); bindings[i].binding_name[0].id = CORBA::string_dup (hash_entry->ext_id_.id_.fast_rep ()); bindings[i].binding_name[0].kind = CORBA::string_dup (hash_entry->ext_id_.kind_.fast_rep ()); - + if (hash_iter_->advance () == 0) { // If no more bindings left, reset length to the actual // number of bindings populated and get out of the loop. bindings.length (i + 1); - break; + break; } } @@ -571,12 +570,12 @@ NS_BindingIterator::next_n (CORBA::ULong how_many, return 1; } } - -void -NS_BindingIterator::destroy (CORBA::Environment &IT_env) + +void +NS_BindingIterator::destroy (CORBA::Environment &IT_env) { // Macro to avoid "warning: unused parameter" type warning. - ACE_UNUSED_ARG (IT_env); + ACE_UNUSED_ARG (IT_env); // CORBA::release (tie_ref_); } @@ -599,4 +598,3 @@ template class ACE_Hash_Map_Reverse_Iterator<NS_ExtId, NS_IntId, ACE_Null_Mutex #pragma instantiate ACE_Hash_Map_Reverse_Iterator<NS_ExtId, NS_IntId, ACE_Null_Mutex> #endif /* ACE_HAS_EXPLICIT_TEMPLATE_INSTANTIATION */ #endif /* ACE_MT_SAFE */ - diff --git a/TAO/orbsvcs/Naming_Service/NS_CosNaming.cpp b/TAO/orbsvcs/Naming_Service/NS_CosNaming.cpp index 6da054c41dd..6c2c45fe1e5 100644 --- a/TAO/orbsvcs/Naming_Service/NS_CosNaming.cpp +++ b/TAO/orbsvcs/Naming_Service/NS_CosNaming.cpp @@ -2,13 +2,13 @@ // // = LIBRARY // cos -// +// // = FILENAME // NS_CosNaming.C // // = AUTHOR // Marina Spivak <marina@cs.wustl.edu> -// +// // ============================================================================ #include "NS_CosNaming.h" @@ -37,7 +37,7 @@ NS_IntId::~NS_IntId (void) CORBA::release (ref_); } -void +void NS_IntId::operator= (const NS_IntId &rhs) { // check for self assignment. @@ -45,7 +45,7 @@ NS_IntId::operator= (const NS_IntId &rhs) return; type_ = rhs.type_; - + CORBA::release (ref_); ref_ = CORBA::Object::_duplicate (rhs.ref_); } @@ -56,7 +56,7 @@ NS_ExtId::NS_ExtId (void) { } -NS_ExtId::NS_ExtId (const char *id, +NS_ExtId::NS_ExtId (const char *id, const char *kind) : kind_ (kind), id_ (id) @@ -66,14 +66,14 @@ NS_ExtId::NS_ExtId (const char *id, NS_ExtId::NS_ExtId (const NS_ExtId &rhs) { id_ = rhs.id_; - kind_ = rhs.kind_; + kind_ = rhs.kind_; } NS_ExtId::~NS_ExtId (void) { } -void +void NS_ExtId::operator= (const NS_ExtId &rhs) { // Check for self assignment. @@ -81,16 +81,16 @@ NS_ExtId::operator= (const NS_ExtId &rhs) return; id_ = rhs.id_; - kind_ = rhs.kind_; + kind_ = rhs.kind_; } - -int + +int NS_ExtId::operator== (const NS_ExtId &rhs) const { return id_ == rhs.id_ && kind_ == rhs.kind_; } -int +int NS_ExtId::operator!= (const NS_ExtId &rhs) const { return id_ != rhs.id_ || kind_ != rhs.kind_; @@ -104,4 +104,3 @@ NS_ExtId::hash (void) const return temp.hash (); } - diff --git a/TAO/orbsvcs/Naming_Service/Naming_Service.dsp b/TAO/orbsvcs/Naming_Service/Naming_Service.dsp index 935870e8256..85015f994a2 100644 --- a/TAO/orbsvcs/Naming_Service/Naming_Service.dsp +++ b/TAO/orbsvcs/Naming_Service/Naming_Service.dsp @@ -61,7 +61,7 @@ LINK32=link.exe # PROP BASE Target_Dir ""
# PROP Use_MFC 0
# PROP Use_Debug_Libraries 1
-# PROP Output_Dir ""
+# PROP Output_Dir "Debug"
# PROP Intermediate_Dir "Debug"
# PROP Ignore_Export_Lib 0
# PROP Target_Dir ""
diff --git a/TAO/orbsvcs/Scheduling_Service/Scheduling_Service.dsp b/TAO/orbsvcs/Scheduling_Service/Scheduling_Service.dsp index 3fb9b8c7dd4..b89514b9686 100644 --- a/TAO/orbsvcs/Scheduling_Service/Scheduling_Service.dsp +++ b/TAO/orbsvcs/Scheduling_Service/Scheduling_Service.dsp @@ -62,7 +62,7 @@ LINK32=link.exe # PROP BASE Target_Dir ""
# PROP Use_MFC 0
# PROP Use_Debug_Libraries 1
-# PROP Output_Dir ""
+# PROP Output_Dir "Debug"
# PROP Intermediate_Dir "Debug"
# PROP Ignore_Export_Lib 0
# PROP Target_Dir ""
diff --git a/TAO/orbsvcs/tests/Event_Latency/Event_Latency.dsp b/TAO/orbsvcs/tests/Event_Latency/Event_Latency.dsp index 08635e15e6a..4ec8c6d72bf 100644 --- a/TAO/orbsvcs/tests/Event_Latency/Event_Latency.dsp +++ b/TAO/orbsvcs/tests/Event_Latency/Event_Latency.dsp @@ -61,7 +61,7 @@ LINK32=link.exe # PROP BASE Target_Dir ""
# PROP Use_MFC 0
# PROP Use_Debug_Libraries 1
-# PROP Output_Dir ""
+# PROP Output_Dir "Debug"
# PROP Intermediate_Dir "Debug"
# PROP Target_Dir ""
# ADD BASE CPP /nologo /W3 /Gm /GX /Zi /Od /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c
diff --git a/TAO/performance-tests/Cubit/TAO/MT_Cubit/Task_Client.cpp b/TAO/performance-tests/Cubit/TAO/MT_Cubit/Task_Client.cpp index 1bf7393b651..dd6c268e0ba 100644 --- a/TAO/performance-tests/Cubit/TAO/MT_Cubit/Task_Client.cpp +++ b/TAO/performance-tests/Cubit/TAO/MT_Cubit/Task_Client.cpp @@ -145,6 +145,11 @@ Client::get_low_priority_latency (void) return l / (double) (ts_->start_count_ - 1); } +int +Client::get_latency (u_int thread_id) { + return ts_->ave_latency_ [thread_id]; +} + double Client::get_high_priority_jitter () { double jitter = 0; diff --git a/TAO/tao/Makefile b/TAO/tao/Makefile index d62eeeb7d4c..fc2a3fe860e 100644 --- a/TAO/tao/Makefile +++ b/TAO/tao/Makefile @@ -95,9 +95,13 @@ include $(TAO_ROOT)/taoconfig.mk #---------------------------------------------------------------------------- ifdef CHORUS - CPPFLAGS += -DTAO_PLATFORM_SVC_CONF_FILE_NOTSUP + override fakesvcconf = 1 endif ifdef VXWORKS + override fakesvcconf = 1 +endif + +ifeq ($(fakesvcconf),1) CPPFLAGS += -DTAO_PLATFORM_SVC_CONF_FILE_NOTSUP endif diff --git a/TAO/tao/connect.h b/TAO/tao/connect.h index 4a96e27854b..c63f6c3d25f 100644 --- a/TAO/tao/connect.h +++ b/TAO/tao/connect.h @@ -7,13 +7,13 @@ // // = LIBRARY // TAO -// +// // = FILENAME // connect.h // // = AUTHOR // Chris Cleeland -// +// // ============================================================================ # include "ace/Reactor.h" @@ -25,13 +25,13 @@ // Forward Decls class TAO_OA_Parameters; -typedef ACE_Svc_Handler<ACE_SOCK_STREAM, ACE_NULL_SYNCH> +typedef ACE_Svc_Handler<ACE_SOCK_STREAM, ACE_NULL_SYNCH> TAO_SVC_HANDLER; class TAO_Client_Connection_Handler : public TAO_SVC_HANDLER // = TITLE // <Svc_Handler> used on the client side and returned by the - // <TAO_CONNECTOR>. + // <TAO_CONNECTOR>. // @@ (CJC) Should this be in here or in the default_client.*? { public: @@ -51,11 +51,11 @@ class TAO_Server_Connection_Handler : public TAO_SVC_HANDLER public: TAO_Server_Connection_Handler (ACE_Thread_Manager *t = ACE_Thread_Manager::instance ()); // Constructor. - + virtual int open (void *); // Called by the framework when the handler is completely set up. // Argument is unused. - + virtual int svc (void); // Only used when the handler is turned into an active object by // calling <activate>. This serves as the event loop in such cases. @@ -65,10 +65,17 @@ public: // = Template Methods Called by <handle_input> - virtual int recv_request (CDR &msg, CORBA::Environment &env); + enum RequestStatus + { + Error = -1, + Request, // A CORBA Request was received + LocateRequest // A CORBA LocateRequest was received + }; + + virtual RequestStatus recv_request (CDR &msg, CORBA::Environment &env); // Extract a message from the stream associated with <peer()> and - // place it into <msg>. Return 0 if success, -1 with <errno> and - // <env> set if problems. + // place it into <msg>. Return either <Request> or <LocateRequest> + // if success, <Error> with <errno> and <env> set if problems. virtual int handle_message (CDR &msg, int &response_required, CDR &response, CORBA::Environment &env); @@ -78,6 +85,14 @@ public: // response (including errors). In case of errors, -1 is returned // and additional information carried in <env>. + virtual int handle_locate (CDR &msg, int &response_required, + CDR &response, CORBA::Environment &env); + // Handle processing of the location request residing in <msg>, + // setting <response_required> to one if no errors are encountered. + // The LocateRequestReply is placed into <response>. In case of + // errors, -1 is returned and additional information carried in + // <env>. + virtual void handle_request (TAO_GIOP_RequestHeader hdr, CDR &request_body, CDR &response, @@ -86,24 +101,24 @@ public: // Once a request is found in a message, this finds the appropriate // POA and dispatches it, then takes care to properly format any // response. - + virtual void send_response (CDR &response); // Send <response> to the client on the other end. protected: // = Event Handler overloads - + virtual int handle_input (ACE_HANDLE = ACE_INVALID_HANDLE); // Reads a message from the <peer()>, dispatching and servicing it // appropriately. - + virtual int handle_close (ACE_HANDLE, ACE_Reactor_Mask); // Perform appropriate closing of the connection. TAO_OA_Parameters *params_; }; -typedef ACE_Strategy_Acceptor<TAO_Server_Connection_Handler, ACE_SOCK_ACCEPTOR> +typedef ACE_Strategy_Acceptor<TAO_Server_Connection_Handler, ACE_SOCK_ACCEPTOR> TAO_ACCEPTOR; #endif /* TAO_CONNECT_H */ diff --git a/TAO/tao/corba.h b/TAO/tao/corba.h index 641a098bd6a..6b726a78057 100644 --- a/TAO/tao/corba.h +++ b/TAO/tao/corba.h @@ -93,7 +93,7 @@ class TAO_Export PortableServer // = TITLE // Portable Server (POA) name space. public: - + typedef TAO_ServantBase ServantBase; typedef ServantBase *Servant; diff --git a/TAO/tao/giop.cpp b/TAO/tao/giop.cpp index 1b85ed01b95..2de40dfbe7c 100644 --- a/TAO/tao/giop.cpp +++ b/TAO/tao/giop.cpp @@ -1098,6 +1098,20 @@ TAO_GIOP::make_error (CDR &msg, ...) // things into the <msg> instance. } +CORBA::Boolean +TAO_GIOP_LocateRequestHeader::init (CDR &msg, + CORBA::Environment &env) +{ + CORBA::Boolean hdr_status; + + hdr_status = hdr_status && msg.get_ulong (this->request_id); + hdr_status = hdr_status && msg.decode (&TC_opaque, + &this->object_key, + 0, + env); + return hdr_status; +} + // Initialize the request header from <msg>, setting <env> for errors. CORBA::Boolean diff --git a/TAO/tao/giop.h b/TAO/tao/giop.h index 0e0e9077db2..4bef3b193bb 100644 --- a/TAO/tao/giop.h +++ b/TAO/tao/giop.h @@ -256,6 +256,12 @@ struct TAO_GIOP_LocateRequestHeader // = DESCRIPTION // Location service support { + TAO_GIOP_LocateRequestHeader (void); + // Constructor + + CORBA::Boolean init (CDR &msg, CORBA::Environment& env); + // Initialize the header from the values found in <msg>. + CORBA::ULong request_id; TAO_opaque object_key; }; diff --git a/TAO/tao/giop.i b/TAO/tao/giop.i index 0c162d3d1e8..351f97e1b74 100644 --- a/TAO/tao/giop.i +++ b/TAO/tao/giop.i @@ -1,6 +1,11 @@ // This may look like C, but it's really -*- C++ -*- ACE_INLINE +TAO_GIOP_LocateRequestHeader::TAO_GIOP_LocateRequestHeader (void) + : request_id (0) +{} + +ACE_INLINE TAO_GIOP_RequestHeader::TAO_GIOP_RequestHeader (void) : request_id (0), response_expected (CORBA::B_FALSE) diff --git a/TAO/tao/orbobj.cpp b/TAO/tao/orbobj.cpp index 86f5c844e69..39ed1d6c1c3 100644 --- a/TAO/tao/orbobj.cpp +++ b/TAO/tao/orbobj.cpp @@ -514,6 +514,7 @@ template class ACE_Hash_Map_Reverse_Iterator<TAO_HASH_ADDR, TAO_Client_Connectio #pragma instantiate ACE_Dynamic_Service<TAO_Client_Strategy_Factory> #pragma instantiate ACE_Cached_Connect_Strategy<TAO_Client_Connection_Handler, ACE_SOCK_CONNECTOR, ACE_SYNCH_RW_MUTEX> #pragma instantiate ACE_Cached_Connect_Strategy<TAO_Client_Connection_Handler, ACE_SOCK_CONNECTOR, ACE_SYNCH_NULL_MUTEX> +#pragma instantiate ACE_Atomic_Op<ACE_SYNCH_MUTEX, CORBA::Boolean> //#pragma instantiate TAO_HASH_ADDR #pragma instantiate ACE_Hash_Map_Entry<TAO_HASH_ADDR, TAO_Client_Connection_Handler *> #pragma instantiate ACE_Hash_Map_Manager<TAO_HASH_ADDR, TAO_Client_Connection_Handler *, ACE_SYNCH_RW_MUTEX> diff --git a/TAO/tao/poa.h b/TAO/tao/poa.h index 24a01962c7b..6ac3cecd67c 100644 --- a/TAO/tao/poa.h +++ b/TAO/tao/poa.h @@ -4,7 +4,7 @@ // // = LIBRARY // TAO -// +// // = FILENAME // poa.h // @@ -13,7 +13,7 @@ // // = AUTHOR // Copyright 1994-1995 by Sun Microsystems, Inc. -// +// // ============================================================================ #if !defined (TAO_POA_H) @@ -36,7 +36,7 @@ public: CORBA::Environment &env); virtual ~CORBA_POA (void); - static CORBA::POA_ptr init (CORBA::ORB_ptr which_orb, + static CORBA::POA_ptr init (CORBA::ORB_ptr which_orb, ACE_INET_Addr &addr, CORBA::Environment &env); // NON-STANDARD CALL. According to CORBA V2.0, this functionality @@ -47,7 +47,35 @@ public: // // @@ Hum, does this still make sense now that it's in POA? - typedef void (CORBA_POA::*dsi_handler) (PortableServer::ObjectId &id, + /* virtual */ + CORBA::Object_ptr create (CORBA::OctetSeq& obj_id, + CORBA::String type_id, + CORBA::Environment& env); + // Create a reference to an object, using identifying information + // that is fully exposed to applications. (An ORB may use additional + // data internally, of course.) + // + // Object IDs are assigned and used by servers to identify objects. + // + // Type IDs are repository IDs, assigned as part of OMG-IDL + // interface definition to identify specific interfaces and their + // relationships to other OMG-IDL interfaces. It's OK to provide a + // null type ID. + // + // Clients which invoke operations using one of these references + // when the server is not active (or after the last reference to the + // POA is released) will normally see an OBJECT_NOT_EXIST exception + // reported by the ORB. If the POA is a "Named POA" the client's + // ORB will not normally return OBJECT_NOT_EXIST unless the POA + // reports that fault. + // + // NOTE: Since any given POA may have been used in the past, servers + // may need to place some data (such as a timestamp) into the object + // ID to help distinguish different incarnations of the POA. "Named + // POA" objects won't want those semantics as much as "Anonymous" + // ones. + + typedef void (CORBA_POA::*dsi_handler) (CORBA::OctetSeq &obj_id, CORBA::ServerRequest &request, void *context, CORBA::Environment &env); @@ -79,7 +107,7 @@ public: // * "_is_a" is readily handled by skeletons, // // * "_get_interface" similarly, though with more work to allow the - // IFR data structures to be extracted from skeletons. + // IFR data structures to be extracted from skeletons. // // * "_get_implementation" is implementation-specific, a facility // through which administrative and other information may be @@ -90,7 +118,7 @@ public: // This enables solving many "distributed garbage" problems, // such as maintaining persistent tables keyed by references to // objects that may no longer exist. - + #if 0 // @@ virtual void please_shutdown (CORBA::Environment &env); @@ -105,7 +133,7 @@ public: // Run -- call get_request () in a loop until shutdown completes. // Uses as much concurrency as is provided in this environment. // Initiate shutdown if we've been idle for the specified time. - // + // // This uses only the public APIs defined above; the function is // defined here purely for convenience, to help some applications // avoid writing that loop. @@ -116,7 +144,7 @@ public: // Get an "anonymous" POA pseudo-objref ... this is the API that // most applications will use. It returns a POA which is not // otherwise in use (though it may have been used in the past). - // + // // Any given POA (named or otherwise) will create equivalent object // references when POA::create () is called with the same object and // type IDs. This is not true for two different POAs. @@ -125,26 +153,26 @@ public: CORBA::String name, CORBA::Environment &env); // Get a "named" POA ... most applications don't use/need this API. - // + // // POA names are for ORB/system bootstrapping purposes, and need not // be shared between different systems. The scope of the name isn't // guaranteed to include more than one system. The names themselves // are administered using system-specific mechanisms and policies. - void dispatch (PortableServer::ObjectId &key, - CORBA::ServerRequest &req, - void *context, + void dispatch (PortableServer::ObjectId &key, + CORBA::ServerRequest &req, + void *context, CORBA::Environment &env); // Find the object for the request and pass it up the chain. Errors // are returned in <env>. - virtual int bind (const PortableServer::ObjectId &key, + virtual int bind (const PortableServer::ObjectId &key, PortableServer::Servant obj); // Registers a CORBA::Object into the object table and associates the // key with it. Returns -1 on failure, 0 on success, 1 on // duplicate. - virtual int find (const PortableServer::ObjectId &key, + virtual int find (const PortableServer::ObjectId &key, PortableServer::Servant &obj); // Looks up an object in the object table using <{key}>. Returns // non-negative integer on success, or -1 on failure. @@ -161,29 +189,29 @@ private: TAO_Object_Table objtable_; // Table of objects registered with this Object Adapter. - CORBA::Boolean do_exit_; + CORBA::Boolean do_exit_; // Flag set by <clean_shutdown ()>. - CORBA::ORB_ptr orb_; + CORBA::ORB_ptr orb_; // Pointer to our ORB. - u_int call_count_; + u_int call_count_; // Used by COM stuff - u_int refcount_; + u_int refcount_; // Used by COM stuff - CORBA::POA::dsi_handler skeleton_; + CORBA::POA::dsi_handler skeleton_; // Skeleton function - void *context_; + void *context_; // Who knows!?! - ACE_SYNCH_MUTEX lock_; + ACE_SYNCH_MUTEX lock_; // Locks critical sections within POA code methods (was // tcpoa_mutex). - ACE_SYNCH_MUTEX com_lock_; + ACE_SYNCH_MUTEX com_lock_; // Locks critical sections in COM-related code (was tcpoa_lock). // = Copy and assignment: just say no @@ -195,7 +223,7 @@ struct TAO_Dispatch_Context // = TITLE // Structure holding information necessary for GIOP functionality. // - // = DESCRIPTION + // = DESCRIPTION // Data structure passed as "context" to the GIOP code, which then // calls back one of the two helper routines as part of handling // any particular incoming request. diff --git a/TAO/tao/varout.h b/TAO/tao/varout.h index 02e2f19a484..2fe6c6acab4 100644 --- a/TAO/tao/varout.h +++ b/TAO/tao/varout.h @@ -225,7 +225,7 @@ public: TAO_Object_var (T_ptr); // constructor from a pointer to T - TAO_Object_var (const TAO_Object_var<T_ptr> &); + TAO_Object_var (const TAO_Object_var<T,T_ptr> &); // copy constructor ~TAO_Object_var (void); @@ -234,7 +234,7 @@ public: TAO_Object_var<T_ptr> &operator= (T_ptr); // assignment from a pointer to T - TAO_Object_var<T_ptr> &operator= (const TAO_Object_var<T_ptr> &); + TAO_Object_var<T_ptr> &operator= (const TAO_Object_var<T,T_ptr> &); // assignment from a TAO_Object_var T_ptr operator-> (void) const; diff --git a/TAO/tests/Cubit/TAO/IDL_Cubit/clnt.cpp b/TAO/tests/Cubit/TAO/IDL_Cubit/clnt.cpp index 17e68834daa..8c7e12ba713 100644 --- a/TAO/tests/Cubit/TAO/IDL_Cubit/clnt.cpp +++ b/TAO/tests/Cubit/TAO/IDL_Cubit/clnt.cpp @@ -20,15 +20,17 @@ // ============================================================================ #include "ace/Profile_Timer.h" +#include "ace/Env_Value_T.h" #include "clnt.h" // Constructor. +#define quote(x) #x + Cubit_Client::Cubit_Client (void) : cubit_factory_key_ ("factory"), cubit_key_ ("key0"), hostname_ (ACE_DEFAULT_SERVER_HOST), - portnum_ (TAO_DEFAULT_SERVER_PORT), loop_count_ (250), exit_later_ (0), factory_ (Cubit_Factory::_nil ()), @@ -38,6 +40,9 @@ Cubit_Client::Cubit_Client (void) call_count_ (0), error_count_ (0) { + ACE_Env_Value<unsigned long> defport(quote(TAO_DEFAULT_SERVER_PORT), + TAO_DEFAULT_SERVER_PORT); + portnum_ = defport; } // Simple function that returns the substraction of 117 from the @@ -763,3 +768,10 @@ main (int argc, char **argv) else return cubit_client.run (); } + +#if defined (ACE_HAS_EXPLICIT_TEMPLATE_INSTANTIATION) +template class ACE_Env_Value<unsigned long>; +#elif defined (ACE_HAS_TEMPLATE_INSTANTIATION_PRAGMA) +#pragma instantiate ACE_Env_Value<unsigned long> +#endif /* ACE_HAS_EXPLICIT_TEMPLATE_INSTANTIATION */ + diff --git a/TAO/tests/Cubit/TAO/MT_Cubit/Task_Client.cpp b/TAO/tests/Cubit/TAO/MT_Cubit/Task_Client.cpp index 1bf7393b651..dd6c268e0ba 100644 --- a/TAO/tests/Cubit/TAO/MT_Cubit/Task_Client.cpp +++ b/TAO/tests/Cubit/TAO/MT_Cubit/Task_Client.cpp @@ -145,6 +145,11 @@ Client::get_low_priority_latency (void) return l / (double) (ts_->start_count_ - 1); } +int +Client::get_latency (u_int thread_id) { + return ts_->ave_latency_ [thread_id]; +} + double Client::get_high_priority_jitter () { double jitter = 0; |