orbitcpp_1_3_9: 2004-05-11 Bowie Owens * NEWS * configure.in: Preparation for release 1.3.9. 2004-05-06 Bowie Owens * orbitcpp/idl-compiler/types.cc * orbitcpp/idl-compiler/types/IDLString.cc * orbitcpp/idl-compiler/types/IDLString.h * orbitcpp/orb-cpp/orbitcpp_string_seq.h * orbitcpp/orb-cpp/smartpointers/string_var.h * test/cpp/everything/everything.idl * test/cpp/sequences/string/test.idl: Added support for wstring. Closes bug #141972. * orbitcpp/idl-compiler/types/IDLCompoundSeqElem.cc * orbitcpp/orb-cpp/orbitcpp_simple_seq.h * orbitcpp/orb-cpp/orbitcpp_traits.h: Move away from template partial specialization with traits. * test/cpp/sequences/string/test.idl: Exercise bug #141972. * orbitcpp/idl-compiler/pass_xlate.cc * orbitcpp/idl-compiler/types.cc * orbitcpp/idl-compiler/types/IDLAny.cc * orbitcpp/idl-compiler/types/IDLAny.h * orbitcpp/idl-compiler/types/IDLBoolean.cc * orbitcpp/idl-compiler/types/IDLBoolean.h * orbitcpp/idl-compiler/types/IDLCompoundSeqElem.cc * orbitcpp/idl-compiler/types/IDLEnum.cc * orbitcpp/idl-compiler/types/IDLEnum.h * orbitcpp/idl-compiler/types/IDLInterface.cc * orbitcpp/idl-compiler/types/IDLInterface.h * orbitcpp/idl-compiler/types/IDLSequence.cc * orbitcpp/idl-compiler/types/IDLSimpleType.cc * orbitcpp/idl-compiler/types/IDLSimpleType.h * orbitcpp/idl-compiler/types/IDLString.cc * orbitcpp/idl-compiler/types/IDLString.h * orbitcpp/idl-compiler/types/IDLUserDefSimpleType.cc * orbitcpp/idl-compiler/types/IDLUserDefSimpleType.h * orbitcpp/orb-cpp/Makefile.am * orbitcpp/orb-cpp/orbitcpp_any.h * orbitcpp/orb-cpp/orbitcpp_compound_seq.h * orbitcpp/orb-cpp/orbitcpp_sequence.h * orbitcpp/orb-cpp/orbitcpp_simple_seq.h * orbitcpp/orb-cpp/orbitcpp_smartptr.h * orbitcpp/orb-cpp/orbitcpp_string_seq.h * orbitcpp/orb-cpp/orbitcpp_typecode.h * orbitcpp/orb-cpp/smartpointers/objectptr_var.h * orbitcpp/orb-cpp/smartpointers/sequence_out.h * orbitcpp/orb-cpp/smartpointers/sequence_var.h: Major revisions to get to compile with GCC 3.4. Simplifications include: - Merge all kinds of sequence down into Simple{Unb,B}oundedSequence using traits classes and more consistent member typedefs. - Eliminated _mgr types. - Made enum a typedef of C enum so that C++ enum == C enum. Brought enum constants into right namespace using const variables. 2004-05-05 Bowie Owens * orbitcpp/idl-compiler/pass.h * orbitcpp/orb-cpp/orbitcpp_exception.h * orbitcpp/orb-cpp/orbitcpp_object.h * orbitcpp/orb-cpp/orbitcpp_simple_seq.h * orbitcpp/orb-cpp/smartpointers/objectptr_var.h * orbitcpp/orb-cpp/smartpointers/sequence_out.h * orbitcpp/orb-cpp/smartpointers/sequence_var.h: Revised to compile with GCC 3.4. 2004-04-28 Bowie Owens * orbitcpp/idl-compiler/IDLMethod.cc: Don't throw UnknownUserException when confronted with an unknown user exception. UnknownUserException is only for DII. Closes #140122. 2004-04-27 Bowie Owens * Makefile.am * configure.in * ORBit-CosNaming-2.0-cpp.pc.in: Added pkg-config data for name service. * configure.in * orbitcpp/Makefile.am * orbitcpp/services/Makefile.am * orbitcpp/services/name/Makefile.am: Added Makefile.am's to build name service. Uses Makefile_generated.am_fragment to help build the name service. * Makefile.am * test/cpp/Makefile_generated.am_fragment: Use backend in build directory to build tests without first installing orbitcpp. 2004-04-15 Bowie Owens * orbitcpp/idl-compiler/pass_xlate.cc * orbitcpp/idl-compiler/types/IDLAny.h * orbitcpp/idl-compiler/types/IDLArray.cc * orbitcpp/idl-compiler/types/IDLArray.h * orbitcpp/idl-compiler/types/IDLInterface.h * orbitcpp/idl-compiler/types/IDLSequence.h * orbitcpp/idl-compiler/types/IDLSimpleType.h * orbitcpp/idl-compiler/types/IDLString.cc * orbitcpp/idl-compiler/types/IDLString.h * orbitcpp/idl-compiler/types/IDLStruct.h * orbitcpp/idl-compiler/types/IDLType.cc * orbitcpp/idl-compiler/types/IDLType.h * orbitcpp/idl-compiler/types/IDLTypedef.h * orbitcpp/idl-compiler/types/IDLUnion.h * orbitcpp/idl-compiler/types/IDLUnion.h * test/cpp/unions/struct/test.idl: Revise union setter and getter code generation. Closes bug #115493 in that test/cpp/everything/everything.idl now compiles. The code is now in a better position to more closely match the standard. Union support still needs a lot of work, so I'm going to open serveral RFE's to document where it needs the work. * test/cpp/sequences/atomic_types/test.idl: Test code generation for sequence of TypeCodes. 2004-04-14 Bowie Owens * orbitcpp/orb-cpp/orbitcpp_exception.h * orbitcpp/idl-compiler/types/IDLException.cc: Use function template to generate code for commuting C exceptions to C++ exceptions. Reduces lines of code in X-cpp-common.cc and reduces size of object code produced. 2004-03-30 Bowie Owens * orbitcpp/idl-compiler/types/IDLArray.h * orbitcpp/idl-compiler/types/IDLArray.cc * test/cpp/arrays/simple_types/test.idl: Added a fix and test for bug #138421. If we have: typedef T vec[m]; typedef vec mat[n]; Then for copying purposes mat is effectively: typedef T mat[n][m]; Of course if T is also an array we recurse further. 2004-03-26 Bowie Owens * orbitcpp/idl-compiler/types/IDLCompound.cc: Push pack and unpack function definitions into header if they are empty. Eliminates a lot of unused variable warnings and allows compiler to optimize these out. 2004-03-22 Bowie Owens * orbitcpp/idl-compiler/types/IDLStruct.cc: Corrected some more brokeness with fixed length structs. * orbitcpp/idl-compiler/types/IDLArray.cc * orbitcpp/idl-compiler/types/IDLStruct.cc * orbitcpp/idl-compiler/types/IDLStruct.h * test/cpp/arrays/of_structs/test.idl: Change struct to always require conversion in generated code since a great deal of reinterpret_cast<> casting is required to make the C++ compiler happy. Closes bug #137694. Had to fix IDLArray to correctly use is_fixed and to deal with fixed length structs within array. Revised test to check for bug #137694. 2004-03-15 Bowie Owens * orbitcpp/idl-compiler/types/IDLTypeCode.cc * orbitcpp/idl-compiler/types/IDLTypeCode.h: Specialize member_pack_to_c() to avoid using CORBA::is_nil(). * orbitcpp/orb-cpp/orbitcpp_typecode.h: Added pack_elem() and unpack_elem() since these are needed for sequences of TypeCode's. Haven't tested them but they compile. 2004-03-09 Bowie Owens * orbitcpp/idl-compiler/types/IDLArray.cc: Free slice not zero-th element of slice. Bug picked up by any test below. * test/cpp/any/simple/test.idl: Make test more stringent by exercising code generation for arrays of any. * orbitcpp/idl-compiler/types/IDLAny.cc: Get rid of some WRITEME warnings relating to packing and unpacking from C. 2004-03-04 Bowie Owens * orbitcpp/idl-compiler/types/IDLAny.cc * orbitcpp/idl-compiler/types/IDLAny.h * orbitcpp/idl-compiler/types/IDLArray.cc * orbitcpp/idl-compiler/types/IDLArray.h * orbitcpp/idl-compiler/types/IDLInterface.cc * orbitcpp/idl-compiler/types/IDLInterface.h * orbitcpp/idl-compiler/types/IDLSequence.cc * orbitcpp/idl-compiler/types/IDLSequence.h * orbitcpp/idl-compiler/types/IDLSimpleType.cc * orbitcpp/idl-compiler/types/IDLSimpleType.h * orbitcpp/idl-compiler/types/IDLString.cc * orbitcpp/idl-compiler/types/IDLString.h * orbitcpp/idl-compiler/types/IDLStruct.cc * orbitcpp/idl-compiler/types/IDLStruct.h * orbitcpp/idl-compiler/types/IDLType.h * orbitcpp/idl-compiler/types/IDLUnion.cc * orbitcpp/idl-compiler/types/IDLUnion.h: Get rid of some WRITE ME warnings related to member_init_cpp(). Pretty much everything can be default constructed safely. To do this I have added a class IDLDefaultConstructed that implements member_init_cpp() and made most of the types inherit from it. 2004-03-02 Bowie Owens * orbitcpp/orb-cpp/orbitcpp_compound_seq.h: Super typedef and superclass did not match for bounded sequence. 2003-12-02 Bowie Owens * orbitcpp/idl-compiler/pass_xlate.cc * orbitcpp/idl-compiler/pass_xlate.h * orbitcpp/idl-compiler/types/IDLArray.cc * orbitcpp/orb-cpp/smartpointers/arrayfixed_var.h * orbitcpp/orb-cpp/smartpointers/arrayvariable_out.h * orbitcpp/orb-cpp/smartpointers/arrayvariable_var.h: Revise array properties class to use function pointers instead of partial template specialization. Since the syntax for the specializations is hard to get right for GCC 2.95. Besides this is simpler (I think so anyway). 2003-11-26 Bowie Owens * orbitcpp/idl-compiler/pass_xlate.cc * orbitcpp/idl-compiler/types/IDLCompound.h * orbitcpp/idl-compiler/types/IDLModule.h * orbitcpp/idl-compiler/types/IDLScope.h * orbitcpp/idl-compiler/types/IDLSequence.cc * orbitcpp/idl-compiler/types/IDLSequence.h * orbitcpp/idl-compiler/types/IDLSimpleType.cc * orbitcpp/idl-compiler/types/IDLSimpleType.h * orbitcpp/idl-compiler/types/IDLString.cc * orbitcpp/idl-compiler/types/IDLString.h * orbitcpp/idl-compiler/types/IDLType.cc * orbitcpp/idl-compiler/types/IDLType.h * orbitcpp/idl-compiler/types/IDLTypedef.cc * orbitcpp/idl-compiler/types/IDLTypedef.h * orbitcpp/idl-compiler/types/IDLUnion.h * orbitcpp/idl-compiler/types/IDLUserDefScopeType.h * orbitcpp/idl-compiler/types/IDLVoid.cc * orbitcpp/idl-compiler/types/IDLVoid.h: Declare string constants in .h but define them in .cc. Required passing module stream and scope to const_decl_write and adding a new virtual function to IDLScope. 2003-11-24 Bowie Owens * orbitcpp/orb-cpp/orbitcpp_typecode.h: Define TypeCode_mgr using TypeCode_var. 2003-11-20 Bowie Owens * orbitcpp/idl-compiler/types/IDLString.cc * test/cpp/everything/everything.idl: Fix constness of string constants. 2003-11-19 Bowie Owens * orbitcpp/orb-cpp/orbitcpp_sequence.h * orbitcpp/orb-cpp/orbitcpp_simple_seq.h * test/cpp/any/simple/client.cc: * test/cpp/any/simple/test.idl: Provide support for putting sequences of basic types through any. orbitcpp_1_3_8_take_2: