Rogue Wave C++ standard stdcomp.h

It is really neat that Sun C++ Studio 11 has been enhanced with the
latest patches to compile Boost (without ICU). To obtain the full
benefits, it seems necessary to tweak the Rogue Wave C++ standard
library header stdcomp.h to avoid compiler errors like:
% CC -DHAVE_CONFIG_H -I. -I../../../framework/common -I/h/goanna/1/sw/tntnet/include -I/usr/sfw/include -mt -c comp.cpp -KPIC -DPIC -o .libs/comp.o
"comp.cpp", line 70: Warning:::comp::localcomp_p_type::operator() hides the virtual function tnt::Component::operator()(tnt::HttpRequest&, tnt::HttpReply&, cxxtools::QueryParams&).
"comp.cpp", line 210: Error: Could not find a match for std::vector<std::string>::vector(cxxtools::QueryParams::const_iterator, cxxtools::QueryParams::const_iterator) needed in::comp::localcomp_type::operator()(tnt::HttpRequest&, tnt::HttpReply&, cxxtools::QueryParams&).
and a compiler error that occurs compiling code with std::difference
with 2 parameters. The tweaks are:
/% diff -wc /h/goanna/0/SC12_02_07/SUNWspro/prod/include/CC/Cstd/orig/stdcomp.h /h/goanna/0/SC12_02_07/SUNWspro/prod/include/CC/Cstd/stdcomp.h
*** /h/goanna/0/SC12_02_07/SUNWspro/prod/include/CC/Cstd/orig/stdcomp.h Thu Feb 8 23:18:51 2007
--- /h/goanna/0/SC12_02_07/SUNWspro/prod/include/CC/Cstd/stdcomp.h Thu Apr 19 14:57:28 2007
*** 1304,1311 ****
/* #define RWSTDNO_BAD_CAST 1 */
/* #define RWSTD_NO_BAD_CAST 1 */
! #define RWSTDNO_MEMBER_TEMPLATES 1
! #define RWSTD_NO_MEMBER_TEMPLATES 1
#define RWSTDNO_FRIEND_TEMPLATES 1
#define RWSTD_NO_FRIEND_TEMPLATES 1
--- 1304,1311 ----
/* #define RWSTDNO_BAD_CAST 1 */
/* #define RWSTD_NO_BAD_CAST 1 */
! /* #define RWSTDNO_MEMBER_TEMPLATES 1 */
! /* #define RWSTD_NO_MEMBER_TEMPLATES 1 */
#define RWSTDNO_FRIEND_TEMPLATES 1
#define RWSTD_NO_FRIEND_TEMPLATES 1
*** 1406,1415 ****
#define RWSTDNO_INIT_CONST_TEMPLATE_REF_ARG 1
#define RWSTD_NO_INIT_CONST_TEMPLATE_REF_ARG 1
! #define RWSTDNO_CLASS_PARTIAL_SPEC 1
! #define RWSTD_NO_CLASS_PARTIAL_SPEC 1
! #define RWSTDNO_FUNC_PARTIAL_SPEC 1
! #define RWSTD_NO_FUNC_PARTIAL_SPEC 1
/* #define RWSTDNO_OVERLOAD_OF_TEMPLATE_FUNCTION 1 */
/* #define RWSTD_NO_OVERLOAD_OF_TEMPLATE_FUNCTION 1 */
--- 1406,1415 ----
#define RWSTDNO_INIT_CONST_TEMPLATE_REF_ARG 1
#define RWSTD_NO_INIT_CONST_TEMPLATE_REF_ARG 1
! /* #define RWSTDNO_CLASS_PARTIAL_SPEC 1 */
! /* #define RWSTD_NO_CLASS_PARTIAL_SPEC 1 */
! /* #define RWSTDNO_FUNC_PARTIAL_SPEC 1 */
! /* #define RWSTD_NO_FUNC_PARTIAL_SPEC 1 */
/* #define RWSTDNO_OVERLOAD_OF_TEMPLATE_FUNCTION 1 */
/* #define RWSTD_NO_OVERLOAD_OF_TEMPLATE_FUNCTION 1 */
Thanks, Mark

I have already read this documentation and am afraid this was clearly not the point.
I indeed mentionned a precise and common issue : linking with a commercial 3rd party library.
In that case, you are compelled to use the standard C++ library that was used to generate this 3rd party library, period.
Now what do C++ library vendors do when they see that they have the "choice" between libCstd that does not comply with the standard and has nevertheless not evolved for ages but is a guaranteed part of Sun Solaris and STLport which is more complete but is also an open source add-on that "does not guarantee compatibility across different releases" and which evolve in an unpredictable way so that "Future releases of the compiler might not include STLport4" (Sun studio 12 C++ user's guide 13.3) ?
They choose libCstd of course !
Now what does Sun plan to do to really tackle this issue ? How long will we have to forget about all recent C++ features like boost because you place binary compatibility above everything ?
Regards,
Philippe

Similar Messages

  • Studio 8 compiler error using rogue wave header in std mode

    I get the following compiler error. I am using -library=rwtools7_std in the CC command.
    The error is:-
    "/opt/studio/SUNWspro/prod/include/CC/rw7/rw/rstream.h", line 46: Error: The name istream is ambiguous, istream and std::istream.
    "/opt/studio/SUNWspro/prod/include/CC/rw7/rw/rstream.h", line 46: Error: The name istream is ambiguous, istream and std::istream.
    "/opt/studio/SUNWspro/prod/include/CC/rw7/rw/rstream.h", line 46: Error: The type "istream" is incomplete.
    Please help
    Kandiah

    All,
    I'm getting the following error when I moved to Rogue Wave release 7.0 from 4.0. We're using Sun's FORTE C++ compiler version 7.0.
    Please advise
    *** Build for src 'all' target STARTED: Thu Jan 18 16:37:04 EST 2007
    /xenv/Forte/sun4/7.0/5.8p4/prod/bin/CC -g -features=no%conststrings -DCPLUSREL=7 -D_RWCONFIG=12d -DRW_MULTI_THREAD -O -mt -D_REENTRANT -c -I. -I/xenv/rwsp_tools/sun4/5.8p4/7.0/32/core900_12d -I/xenv/mqi/sun4/5.x/5.3.0.5/inc -I/xenv/ccs_standard_s8/sun4/5.8p4/4.1_B1/include MQInfo.cc MQBase.cc ZeusAccountBridge.cc
    MQInfo.cc:
    MQBase.cc:
    "/xenv/Forte/sun4/7.0/5.8p4/prod/include/CC/rw7/rw/defs.h", line 316: Error: A typedef name cannot be used in an elaborated type specifier..
    "/xenv/Forte/sun4/7.0/5.8p4/prod/include/CC/rw7/rw/defs.h", line 317: Error: A typedef name cannot be used in an elaborated type specifier..
    "/xenv/Forte/sun4/7.0/5.8p4/prod/include/CC/rw7/rw/defs.h", line 318: Error: A typedef name cannot be used in an elaborated type specifier..
    "/xenv/Forte/sun4/7.0/5.8p4/prod/include/CC/rw7/rw/stringid.h", line 50: Error: A typedef name cannot be used in an elaborated type specifier..
    "/xenv/Forte/sun4/7.0/5.8p4/prod/include/CC/rw7/rw/stringid.h", line 51: Error: A typedef name cannot be used in an elaborated type specifier..
    "/xenv/Forte/sun4/7.0/5.8p4/prod/include/CC/rw7/rw/collint.h", line 75: Error: A typedef name cannot be used in an elaborated type specifier..
    "/xenv/Forte/sun4/7.0/5.8p4/prod/include/CC/rw7/rw/collint.h", line 76: Error: A typedef name cannot be used in an elaborated type specifier..
    7 Error(s) detected.
    ZeusAccountBridge.cc:
    "/xenv/ccs_standard_s8/sun4/5.8p4/4.1_B1/include/ccs_data.h", line 126: Warning (Anachronism): Using int(*)(void*,ccs_Data*) to initialize void*.
    "/xenv/Forte/sun4/7.0/5.8p4/prod/include/CC/rw7/rw/defs.h", line 316: Error: A typedef name cannot be used in an elaborated type specifier..
    "/xenv/Forte/sun4/7.0/5.8p4/prod/include/CC/rw7/rw/defs.h", line 317: Error: A typedef name cannot be used in an elaborated type specifier..
    "/xenv/Forte/sun4/7.0/5.8p4/prod/include/CC/rw7/rw/defs.h", line 318: Error: A typedef name cannot be used in an elaborated type specifier..
    3 Error(s) and 1 Warning(s) detected.

  • Compilation error on Solaris  2.6  using SUn Workshop 4.2(Rogue wave STL)

    Hello,
    I am facing a problem while using Rogue wave STLs on SOlaris 2.6 using Sun WOrkshop pro 4.2
    I am using Hash table implementation in the source. It throws the following error:
    ---->Error: "," expected instead of "const_iterator".
    I found it to be problem in a declaration of pair for the class.
    Before modification:
    typedef pair<mytmp::iterator,int> interator;
    Modified to:
    typedef mytmp::iterator myitr
    typedef pair<myitr,int> interator;
    Now the above compilation error seems to be gone. Can anyone please help me in understanding this problem???????????????
    Also after compiling few files now i am facing new problem. It throws signal 11 in iterator header file of std STL.
    Help m e !!!!!!!!!!
    For your reference options of compilation are:
    /opt/SUNWspro/bin/CC -c -O -mt -D_POSIX_SOURCE -D_POSIX_C_SOURCE=199506L -D_REENTRANT -D__EXTENSION
    S__ -DRWSTD_MULTI_THREAD -D_RWBUILDSHARED -DRWSTD_COMPILE_INSTANTIATE -
    DRWSTD_SHARED_BUILD --I/opt/mylib/common/include/Std  mydemo.cc                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       

    I solved my own problem.
    It seems that the C++ XML Parser cannot be used with earlier versions of Oracle. My ORACLE_HOME env variable was pointing to v734. Once I changed that to point to the later version of v816, It was a smooth parse.
    null

  • Support rwtools from Rogue Wave Software

    Hi,
    We have some C program that use rwtools from Rogue Wave Software (see [http://www2.roguewave.com/support/docs/hppdocs/tlsug/1.1.html |http://www2.roguewave.com/support/docs/hppdocs/tlsug/1.1.html ] ).
    We should migrate these programs from HP-UX to OEL 5.3.
    But, there are not rwtools in OEL 5.3.
    Please help us!

    I don't know rwtools, but I suggest to contact them, send them an e-mail and ask if they provide their product also for Enterprise Linux.
    http://www2.roguewave.com/support/contact/index.cfm
    OEL, RHEL and CentOS are binary compatible.

  • Apache C++ Standard Library 4.2.0 released

    October 29, 2007 -- The Apache C++ Standard Library project
    is pleased to announce that the official stdcxx 4.2.0 release is
    now available for download from the following location:
    http://people.apache.org/dist/incubator/stdcxx/releases/
    For additional details see the stdcxx Download page:
    http://incubator.apache.org/stdcxx/download.html#releases
    The Apache C++ Standard Library [formerly Rogue Wave C++ Standard
    Library] is a full implementation of the C++ Standard Library
    conforming to the ISO/IEC 14882:2003 international standard for
    the programming language C++.
    4.2.0 is a "minor" release of the library that is source and
    backward binary compatible with stdcxx 4.1.x. Programs linked
    with 4.1.x can safely upgrade to 4.2.0 without needing to be
    recompiled. Forward compatibility (i.e., the ability to
    "downgrade" programs linked with stdcxx 4.2.0 to stdcxx 4.1.x)
    is not guaranteed.
    This release of stdcxx contains a large number of bug fixes and
    a number of improvements. For a complete list of issues resolved
    in this release of the project see:
    http://issues.apache.org/jira/secure/IssueNavigator.jspa?mode=hide&requestId=12311754
    This release of stdcxx has been fully certified on the following
    platforms (for additional platform notes see the project's README
    file).
    * Compaq/HP C++
    * Compaq/HP C++ 6.5 and 7.1 on Tru64 UNIX
    * Compaq/HP C++ 7.1 on Tru64 UNIX
    * EDG eccp demo
    * EDG eccp 3.8 on Red Hat Enterprise Linux 5.0, x86_64
    * EDG eccp 3.9 on Solaris 9
    * GCC
    * gcc 4.1.1, Solaris 10, SPARC
    * gcc 4.1.0, SuSE Linux Enterprise Server 10.0, EM64T
    * gcc 4.0.1, Mac OS X (Darwin), x86
    * gcc 3.4.6, Red Hat Enterprise Linux 4, Update 4, AMD64 and EM64T
    * gcc 3.4.4, Cygwin on Windows XP SP 2, x86
    * gcc 3.4.4, FreeBSD 6.2, x86
    * gcc 3.4.4, Red Hat Enterprise Linux 4, Update 2, IA64
    * gcc 3.3.3, SuSE Linux Enterprise Server 9.1, AMD64
    * gcc 3.2.3, Red Hat Enterprise Linux 3, Update 8, EM64T
    * HP aCC
    * aCC 6.13, HPUX 11.23, IPF
    * aCC 6.05, HPUX 11.23, IPF
    * aCC 6.00, HPUX 11.23, IPF
    * aCC 5.57, HPUX 11.23, IPF
    * aCC 3.74, HPUX 11.31, PA-RISC
    * aCC 3.73, HPUX 11.31, PA-RISC
    * aCC 3.73, HPUX 11.23, PA-RISC
    * aCC 3.73, HPUX 11.11, PA-RISC
    * aCC 3.63, HPUX 11.31, PA-RISC
    * aCC 3.63, HPUX 11.23, PA-RISC
    * aCC 3.63, HPUX 11.11, PA-RISC
    * IBM XLC++/VisualAge C++
    * XLC++ 9.0, AIX 5.3, POWER
    * XLC++ 8.0, AIX 5.3, POWER
    * XLC++ 7.0, AIX 5.3, POWER
    * VisualAge C++ 6.0, AIX 5.2, POWER
    * Intel C++
    * Intel C++ 10.0, Red Hat Enterprise Linux 4, Update 4, AMD64 and EM64T
    * Intel C++ 10.0, SuSE Linux Enterprise Server 10.0, EM64T
    * Intel C++ 10.0, Windows 2000 SP 4, x86
    * Intel C++ 10.0, Windows 2003 SP 1, EM64T and x86
    * Intel C++ 10.0, Windows XP SP 2, EM64T and x86
    * Intel C++ 10.0, Windows Vista, EM64T
    * Intel C++ 9.1, Red Hat Enterprise Linux 4, Update 4, AMD64 and EM64T
    * Intel C++ 9.1, Red Hat Enterprise Linux 4, Update 2, IA64
    * Intel C++ 9.1, SuSE Linux Enterprise Server 10.0, EM64T
    * Intel C++ 9.1, Windows 2000 SP 4, x86
    * Intel C++ 9.1, Windows 2003 SP 1, x86
    * Intel C++ 9.1, Windows XP SP 2, x86
    * Microsoft Visual Studio
    * Visual Studio 2008 Beta 2, Windows XP, x86
    * Visual Studio 2005, Windows 2000 SP 4, x86
    * Visual Studio 2005, Windows 2003 SP 1, EM64T and x86
    * Visual Studio 2005, Windows XP SP 2, EM64T and x86
    * Visual Studio 2005, Windows Vista, EM64T
    * Visual Studio 2003, Windows 2000 SP 4, x86
    * Visual Studio 2003, Windows 2003 SP 1, x86
    * Visual Studio 2003, Windows XP SP 2, x86
    * SGI MIPSpro
    * SGI MIPSpro 7.41, IRIX 6.5, MIPS
    * Sun C++
    * Sun C++ 5.9, Red Hat Enterprise Linux 4, Update 4, AMD64 and EM64T
    * Sun C++ 5.9, SuSE Linux Enterprise Server 9.1, AMD64
    * Sun C++ 5.9, Solaris 10, AMD64 and SPARC
    * Sun C++ 5.9, Solaris 9, SPARC
    * Sun C++ 5.8, Solaris 10, AMD64 and SPARC
    * Sun C++ 5.8, Solaris 8, SPARC
    * Sun C++ 5.7, Solaris 10, SPARC
    * Sun C++ 5.6, Solaris 9, SPARC
    * Sun C++ 5.3, Solaris 8, SPARC
    The Apache C++ Standard Library project is seeking volunteers
    interested in contributing to the development, porting, and general
    maintenance of the project. To learn more, subscribe to the
    [email protected] mailing list by sending a blank
    email to [email protected].
    Disclaimer:
    STDCXX is an effort undergoing incubation at the Apache Software
    Foundation (ASF), sponsored by the Incubator PMC. Incubation is
    required of all newly accepted projects until a further review
    indicates that the infrastructure, communications, and decision
    making process have stabilized in a manner consistent with other
    successful ASF projects. While incubation status is not necessarily
    a reflection of the completeness or stability of the code, it does
    indicate that the project has yet to be fully endorsed by the ASF.

    October 29, 2007 -- The Apache C++ Standard Library project
    is pleased to announce that the official stdcxx 4.2.0 release is
    now available for download from the following location:
    http://people.apache.org/dist/incubator/stdcxx/releases/
    For additional details see the stdcxx Download page:
    http://incubator.apache.org/stdcxx/download.html#releases
    The Apache C++ Standard Library [formerly Rogue Wave C++ Standard
    Library] is a full implementation of the C++ Standard Library
    conforming to the ISO/IEC 14882:2003 international standard for
    the programming language C++.
    4.2.0 is a "minor" release of the library that is source and
    backward binary compatible with stdcxx 4.1.x. Programs linked
    with 4.1.x can safely upgrade to 4.2.0 without needing to be
    recompiled. Forward compatibility (i.e., the ability to
    "downgrade" programs linked with stdcxx 4.2.0 to stdcxx 4.1.x)
    is not guaranteed.
    This release of stdcxx contains a large number of bug fixes and
    a number of improvements. For a complete list of issues resolved
    in this release of the project see:
    http://issues.apache.org/jira/secure/IssueNavigator.jspa?mode=hide&requestId=12311754
    This release of stdcxx has been fully certified on the following
    platforms (for additional platform notes see the project's README
    file).
    * Compaq/HP C++
    * Compaq/HP C++ 6.5 and 7.1 on Tru64 UNIX
    * Compaq/HP C++ 7.1 on Tru64 UNIX
    * EDG eccp demo
    * EDG eccp 3.8 on Red Hat Enterprise Linux 5.0, x86_64
    * EDG eccp 3.9 on Solaris 9
    * GCC
    * gcc 4.1.1, Solaris 10, SPARC
    * gcc 4.1.0, SuSE Linux Enterprise Server 10.0, EM64T
    * gcc 4.0.1, Mac OS X (Darwin), x86
    * gcc 3.4.6, Red Hat Enterprise Linux 4, Update 4, AMD64 and EM64T
    * gcc 3.4.4, Cygwin on Windows XP SP 2, x86
    * gcc 3.4.4, FreeBSD 6.2, x86
    * gcc 3.4.4, Red Hat Enterprise Linux 4, Update 2, IA64
    * gcc 3.3.3, SuSE Linux Enterprise Server 9.1, AMD64
    * gcc 3.2.3, Red Hat Enterprise Linux 3, Update 8, EM64T
    * HP aCC
    * aCC 6.13, HPUX 11.23, IPF
    * aCC 6.05, HPUX 11.23, IPF
    * aCC 6.00, HPUX 11.23, IPF
    * aCC 5.57, HPUX 11.23, IPF
    * aCC 3.74, HPUX 11.31, PA-RISC
    * aCC 3.73, HPUX 11.31, PA-RISC
    * aCC 3.73, HPUX 11.23, PA-RISC
    * aCC 3.73, HPUX 11.11, PA-RISC
    * aCC 3.63, HPUX 11.31, PA-RISC
    * aCC 3.63, HPUX 11.23, PA-RISC
    * aCC 3.63, HPUX 11.11, PA-RISC
    * IBM XLC++/VisualAge C++
    * XLC++ 9.0, AIX 5.3, POWER
    * XLC++ 8.0, AIX 5.3, POWER
    * XLC++ 7.0, AIX 5.3, POWER
    * VisualAge C++ 6.0, AIX 5.2, POWER
    * Intel C++
    * Intel C++ 10.0, Red Hat Enterprise Linux 4, Update 4, AMD64 and EM64T
    * Intel C++ 10.0, SuSE Linux Enterprise Server 10.0, EM64T
    * Intel C++ 10.0, Windows 2000 SP 4, x86
    * Intel C++ 10.0, Windows 2003 SP 1, EM64T and x86
    * Intel C++ 10.0, Windows XP SP 2, EM64T and x86
    * Intel C++ 10.0, Windows Vista, EM64T
    * Intel C++ 9.1, Red Hat Enterprise Linux 4, Update 4, AMD64 and EM64T
    * Intel C++ 9.1, Red Hat Enterprise Linux 4, Update 2, IA64
    * Intel C++ 9.1, SuSE Linux Enterprise Server 10.0, EM64T
    * Intel C++ 9.1, Windows 2000 SP 4, x86
    * Intel C++ 9.1, Windows 2003 SP 1, x86
    * Intel C++ 9.1, Windows XP SP 2, x86
    * Microsoft Visual Studio
    * Visual Studio 2008 Beta 2, Windows XP, x86
    * Visual Studio 2005, Windows 2000 SP 4, x86
    * Visual Studio 2005, Windows 2003 SP 1, EM64T and x86
    * Visual Studio 2005, Windows XP SP 2, EM64T and x86
    * Visual Studio 2005, Windows Vista, EM64T
    * Visual Studio 2003, Windows 2000 SP 4, x86
    * Visual Studio 2003, Windows 2003 SP 1, x86
    * Visual Studio 2003, Windows XP SP 2, x86
    * SGI MIPSpro
    * SGI MIPSpro 7.41, IRIX 6.5, MIPS
    * Sun C++
    * Sun C++ 5.9, Red Hat Enterprise Linux 4, Update 4, AMD64 and EM64T
    * Sun C++ 5.9, SuSE Linux Enterprise Server 9.1, AMD64
    * Sun C++ 5.9, Solaris 10, AMD64 and SPARC
    * Sun C++ 5.9, Solaris 9, SPARC
    * Sun C++ 5.8, Solaris 10, AMD64 and SPARC
    * Sun C++ 5.8, Solaris 8, SPARC
    * Sun C++ 5.7, Solaris 10, SPARC
    * Sun C++ 5.6, Solaris 9, SPARC
    * Sun C++ 5.3, Solaris 8, SPARC
    The Apache C++ Standard Library project is seeking volunteers
    interested in contributing to the development, porting, and general
    maintenance of the project. To learn more, subscribe to the
    [email protected] mailing list by sending a blank
    email to [email protected].
    Disclaimer:
    STDCXX is an effort undergoing incubation at the Apache Software
    Foundation (ASF), sponsored by the Incubator PMC. Incubation is
    required of all newly accepted projects until a further review
    indicates that the infrastructure, communications, and decision
    making process have stabilized in a manner consistent with other
    successful ASF projects. While incubation status is not necessarily
    a reflection of the completeness or stability of the code, it does
    indicate that the project has yet to be fully endorsed by the ASF.

  • JNI and STL undr SUN C++ 6 compiler

    Compiling a shared library (for loading by VM) according JNI specification
    i get "library not found" error in runtime.
    This error does not appear when compiling the same code with g++
    or erasing all STL related code fragments.
    Has anybody an idea, what is the reason and hoe to fix the problem?

    If you are thinking about switching to a replacement C++ Standard Library you might want
    to consider Apache stdcxx. The Apache C++ Standard Library is a conforming, highly
    efficient and portable implementation based on the Rogue Wave C++ Standard Library,
    that unlike STLport comes with a robust support for localization and internationalization,
    including native support for UTF-8 and UCS-4. In addition, the library provides extensive
    online documentation including an up to date Class Reference and User's Guide.
    See http://incubator.apache.org/stdcxx/ for more.

  • Is the standard C++ library provided in Solaris 9 thread-safe?

    Hi,
    I cannot find any documentation anywhere that says that the standard C++ library in Solaris 9 (provided by Rogue Wave) is thread safe.
    I have seen evidence that makes me think it is not - however, I was wondering if anyone could provide any insight. If they are not, where could I obtain the libraries that are thread safe?
    The libraries of interest are:
    /lib/sparcv9/libCstd.so.1 &
    /lib/sparcv9/libCrun.so.1
    Thankyou in advance.

    Whether the library is thread safe depends on what you mean by thread safety. Except for the 8 standard iostream objects (std::cin, std::cout, etc.), simultaneous accesses from multiple threads to all objects of standard library types must be synchronized by the user. E.g., it's not safe to read or write the same container object (e.g., std::vector, or std::string) from multiple threads at the same time. The C++ localization library imposes some additional restrictions because of its interactions with the global C locale.

  • How to convert raw data to wav files??

    Hi AnyOne,
    Can anyone know how to do convert raw data in hex format into wav file format??
    Please show some guideline.
    Thank You.

    Hi Craig,
    Thanks for the reply.
    I do follow according the the wav creation standard and save it as wav file. However, i still fail to read back the wav file.
    I using LV8.2. Attach with my testvi and data. Please guide if i make any mistake in my testvi
    Thx and Regards,
    Simon76     
    Attachments:
    data.txt ‏7 KB
    testvi.JPG ‏39 KB
    header.txt ‏1 KB

  • Error in compiling RW libs with g++

    Hi All,
    I am trying to port one project from Solaris (CC) to gcc, which uses RWlibs (of Tools.h++ which comes along with the sunstudio package).
    I am working on RHEL 5.4.
    As a first step i am trying my hand with the following simple program:
    #include <iostream>
    #include <rw/cstring.h>
    int main(){
      RWCString a("TEST Program compiled successfully with gcc");
      std::cout << a << std::endl;
      return 0;
    }when i tried to compile the above sample program i got the following:
    $ g++ -Wall -g rwstring.cc -I/app/sunstudio12/prod/include/CC/rw7
    /app/sunstudio12/prod/include/CC/rw7/rw/generic.h:80: error: ISO C++ forbids declaration of ‘genericerror’ with no type
    /app/sunstudio12/prod/include/CC/rw7/rw/rstream.h:46: error: expected initializer before ‘&’ token
    /app/sunstudio12/prod/include/CC/rw7/rw/cstring.h:378: error: ISO C++ forbids declaration of ‘istream’ with no type
    /app/sunstudio12/prod/include/CC/rw7/rw/cstring.h:378: error: expected ‘;’ before ‘&’ token
    /app/sunstudio12/prod/include/CC/rw7/rw/cstring.h:379: error: ISO C++ forbids declaration of ‘istream’ with no type
    /app/sunstudio12/prod/include/CC/rw7/rw/cstring.h:379: error: expected ‘;’ before ‘&’ token
    /app/sunstudio12/prod/include/CC/rw7/rw/cstring.h:381: error: ISO C++ forbids declaration of ‘istream’ with no type
    /app/sunstudio12/prod/include/CC/rw7/rw/cstring.h:381: error: expected ‘;’ before ‘&’ token
    /app/sunstudio12/prod/include/CC/rw7/rw/cstring.h:382: error: ISO C++ forbids declaration of ‘istream’ with no type
    /app/sunstudio12/prod/include/CC/rw7/rw/cstring.h:382: error: expected ‘;’ before ‘&’ token
    /app/sunstudio12/prod/include/CC/rw7/rw/cstring.h:383: error: ISO C++ forbids declaration of ‘istream’ with no type
    /app/sunstudio12/prod/include/CC/rw7/rw/cstring.h:383: error: expected ‘;’ before ‘&’ token
    /app/sunstudio12/prod/include/CC/rw7/rw/cstring.h:480: error: expected constructor, destructor, or type conversion before ‘&’ token
    /app/sunstudio12/prod/include/CC/rw7/rw/cstring.h:481: error: expected constructor, destructor, or type conversion before ‘&’ tokenAny help/suggestions is appreciated.
    Thanks in advance,
    14341

    RW Tools.h++ is a very old product, which has not had significant updates in many years. Most of the functionality in RW Tools.h++ is available in other libraries, although the programming interface is different. (That is, if you have code written for RW Tools.h++, it will need to be re-written.) You can buy the library from Rogue Wave (roguewave.com) if you want to use it with g++ or other compilers.
    Much of the functionality of RW Tools.h++ is in the C++ Standard library. The Boost libraries are a good addition for anything else that you need.
    The SGI STL and the Apache stdcxx libraries are replacements for the C++ standard library that comes with your C++ compiler. If you download one of these libraries, you will have quite an adventure getting it to build and work correctly with the Studio C++ compiler. But we have already done that work for you. The -library=stlport4 option picks up the STLport version of the SGI STL, and it comes with the compiler. The Apache stdcxx library is available with Solaris 11 for use with Studio C++. Install it in the default locations (in /usr/include and /usr/lib), and use the -library=stdcxx4 option for compiling and linking. Refer to the C++ Users Guide for details about using these alternative libraries.
    For g++, using the SGI STL is not a good idea. You can use Apache stdcxx if you want, but the standard library that comes with g++ is a good one, so I would not recommend replacing it unless you have a specific reason.
    Boost works very well with g++, since it is developed with and tested with g++. Be sure to check your g++ version with any notes about compilers in the version of Boost that you get.

  • Getting following error when running gmake command

    "/appl/SUNWspro/prod/include/CC/rw7/rw/rstream.h", line 46: Error: The name istream is ambiguous, istream and std::istream.
    "/appl/SUNWspro/prod/include/CC/rw7/rw/rstream.h", line 46: Error: The name istream is ambiguous, istream and std::istream.
    "/appl/SUNWspro/prod/include/CC/rw7/rw/rstream.h", line 46: Error: The type "istream" is incomplete.
    "/appl/SUNWspro/prod/include/CC/rw7/rw/vstream.h", line 92: Error: The name ios is ambiguous, ios and std::ios.
    "/appl/SUNWspro/prod/include/CC/rw7/rw/vstream.h", line 92: Error: eofbit is not a member of ios.
    "/appl/SUNWspro/prod/include/CC/rw7/rw/vstream.h", line 93: Error: The name ios is ambiguous, ios and std::ios.
    "/appl/SUNWspro/prod/include/CC/rw7/rw/vstream.h", line 93: Error: failbit is not a member of ios.
    "/appl/SUNWspro/prod/include/CC/rw7/rw/vstream.h", line 94: Error: The name ios is ambiguous, ios and std::ios.
    "/appl/SUNWspro/prod/include/CC/rw7/rw/vstream.h", line 94: Error: badbit is not a member of ios.
    "/appl/SUNWspro/prod/include/CC/rw7/rw/cstring.h", line 347: Error: The name istream is ambiguous, istream and std::istream.
    "/appl/SUNWspro/prod/include/CC/rw7/rw/cstring.h", line 347: Error: The name istream is ambiguous, istream and std::istream.
    "/appl/SUNWspro/prod/include/CC/rw7/rw/cstring.h", line 348: Error: The name istream is ambiguous, istream and std::istream.
    "/appl/SUNWspro/prod/include/CC/rw7/rw/cstring.h", line 348: Error: The name istream is ambiguous, istream and std::istream.
    "/appl/SUNWspro/prod/include/CC/rw7/rw/cstring.h", line 350: Error: The name istream is ambiguous, istream and std::istream.
    "/appl/SUNWspro/prod/include/CC/rw7/rw/cstring.h", line 350: Error: The name istream is ambiguous, istream and std::istream.
    "/appl/SUNWspro/prod/include/CC/rw7/rw/cstring.h", line 351: Error: The name istream is ambiguous, istream and std::istream.
    "/appl/SUNWspro/prod/include/CC/rw7/rw/cstring.h", line 351: Error: The name istream is ambiguous, istream and std::istream.
    "/appl/SUNWspro/prod/include/CC/rw7/rw/cstring.h", line 352: Error: The name istream is ambiguous, istream and std::istream.
    "/appl/SUNWspro/prod/include/CC/rw7/rw/cstring.h", line 352: Error: The name istream is ambiguous, istream and std::istream.
    "/appl/SUNWspro/prod/include/CC/rw7/rw/cstring.h", line 449: Error: The name istream is ambiguous, istream and std::istream.
    "/appl/SUNWspro/prod/include/CC/rw7/rw/cstring.h", line 449: Error: The name istream is ambiguous, istream and std::istream.
    "/appl/SUNWspro/prod/include/CC/rw7/rw/cstring.h", line 450: Error: The name ostream is ambiguous, ostream and std::ostream.
    "/appl/SUNWspro/prod/include/CC/rw7/rw/cstring.h", line 450: Error: The name ostream is ambiguous, ostream and std::ostream.
    "/appl/SUNWspro/prod/include/CC/rw7/rw/stringid.h", line 50: Error: The name ostream is ambiguous, ostream and std::ostream.
    "/appl/SUNWspro/prod/include/CC/rw7/rw/stringid.h", line 50: Error: The name ostream is ambiguous, ostream and std::ostream.
    I am using SUn studio 11
    below is the makefile on the location where i give gmake command
    ========
    # Define the names of the component definition files, without their
    # extension. Definitions are as follows:
    # JSI_NAMES - the basename of each .jsi file to be built.
    # Skeleton (*_skel.cc, _skel.hh) files will
    # be generated for each entry in this list.
    # INTERFACE_NAMES - the basename of each BVI_ class file to be built.
    # The interface class names are those referenced from
    # JS scripts. The interface file may or may not have
    # a corresponding 'implementation' file (if not, the
    # implementation is assumed to have been done entirely
    # in the interface file itself.) An *.hh and *.cc
    # file will be assumed to exist for each entry.
    # IMPLEMENTATION_NAMES - The basename of each BVC_ class file to be built.
    # The implementation classes are (presumably) those
    # that are referenced from BVI_ classes, plus any
    # other class files necessary, even if they aren't
    # used directly as components. An *.hh and *.cc
    # file will be assumed to exist for each entry.
    JSI_NAMES = \
    invoice
    INTERFACE_NAMES = \
    invoice_i
    IMPLEMENTATION_NAMES = \
    invoice_c
    #CLIENT_OBJS = ecbaseC.o ecmqtransportC.o priceManagerCache.o priceManagerData.o bvxmlbridge.o MQTransportHandler.o
    #CLIENT_OBJS = ecbaseC.o ecmqtransportC.o MQTransportHandler.o
    #IDL_STUBS = ecbase.hh ecmqtransport.hh ecbaseC.cc ecbaseC.cc ecmqtransportC.cc ecmqtransportC.cc
    # Define the 'base' name of the library that will be checked for
    # and generated. The name given here will have 'lib' prepended, and
    # '.so' appended, so it follows the standard Unix library naming format.
    LIBRARY_NAME := invoice
    # define the directory that is the root of the BroadVision One-to-One
    # installation on your system.
    ifndef BV1TO1
    BV1TO1 := /appl/bv1to1
    #BV1TO1 := /appl/bv1to15.5
    endif
    # Define the standard location of BV1TO1 include files.
    BV1TO1_INCLUDE := $(BV1TO1)/include/cpp
    # Assume that the Orbix in use is the one supplied with the
    # One-To-One software. This variable MUST be defined.
    ORBIX_INCLUDE := $(BV1TO1)/orbix/include
    # To compile a component library, you must have a licensed copy of the
    # Rogue Wave Software class libraries. They can be licensed separately
    # from Rogue Wave. Point to their directory.
    ROGUEWAVE_INCLUDE := $(BV1TO1)/rogue
    SHARED_MQ_ORBIX_INCLUDE := ../../procroot/MQ/idl
    MQTRANSPORT_INCLUDE := ../../procroot/MQ/include
    # Build search path for all required C++ header files, the compiler
    # directory should always appear last:
    O_ALLINCLUDES = \
    -I. \
    -I$(BV1TO1)/include/cpp \
    -I$(ROGUEWAVE_INCLUDE) \
    -I$(ORBIX_INCLUDE) \
    -I$(SHARED_MQ_ORBIX_INCLUDE) \
    -I$(MQTRANSPORT_INCLUDE) \
    -I$(COMPILERINCLUDES)
    # Build linker search path for sharable and static libraries:
    LDPATH = \
    -L. \
    -L$(BV1TO1)/lib \
    -L$(ROGUEWAVE)/lib \
    -L$(ORBIX)/lib
    # Build runtime search path for sharable libraries:
    RUNPATH = \
    -R$(BV1TO1)/lib \
    -R$(ROGUEWAVE)/lib \
    -R$(ORBIX)/lib
    # Use Sun's C++ compiler:
    CC = CC
    LD = $(CC)
    # Debugger/optimizer flag:
    OPTDEBUG = -g
    # Some required symbols:
    O_ADD_DEFINES= -D__EXTERN_C__=1 -DSVR4 -Dtrue=1 -Dfalse=0 \
    -DEXCEPTIONS -D_REENTRANT -DRW_MULTI_THREAD -DNONE_CLASH -DIT_CATCH_ENV_EH -DIT_EX_MACROS -DRW_NO_FRIEND_INLINE_DECL
    # Compiler flags:
    O_CFLAGS = $(OPTDEBUG) -pic -pta -mt $(O_ADD_DEFINES) $(O_ALLINCLUDES) \
    $(XMLC_DEFINES) $(OSPACE_DEFINES) $(XMLHELPER_DEFINES) \
    -I$(XMLC_INCDIR) -I$(OSPACE_INCDIR) -I$(OSPACE_TOOLKIT_INCDIR) -I$(OSPACE_STD_INCDIR) -I$(XMLHELPER_INCDIR)
    # Linker flags (note that Sun's optimizations seem to require the
    # compiler's -I options at link time):
    O_LFLAGS = $(OPTDEBUG) -pic -pta -mt $(O_ADD_DEFINES) \
    $(O_ALLINCLUDES) $(LDPATH) $(RUNPATH) \
    -R -L$(XMLC_LIBDIR) -L$(XMLHELPER_LIBDIR) $(XMLC_LIBS) $(XMLHELPER_LIBS) $(OSPACE_LIBS)
    # Use idl compiler
    IDL = $(BV1TO1)/orbix/bin/idl
    IDLFLAGS = -B -I$(BV1TO1)/include/idl
    # The following One-To-One libraries should be included
    # in this order for all clients.
    # List Orbix libraries:
    ORBIX_LIBS = \
    -lorbixmt
    # List required system-supplied libraries (some client applications may
    # also require -ly and -ll):
    SYSLIBS = \
    -lnsl \
    -lsocket
    # Default rule to compile C++ source code:
    .SUFFIXES:
    .SUFFIXES: .cc .idl
    %.o: %.cc
    $(CCC) $(O_CFLAGS) $(CCFLAGS) -c $<
    # $(CC) $(CFLAGS) -c $<
    %S.cc: %.idl
    $(IDL) $(IDLFLAGS) $<
    %C.cc: %.idl
    $(IDL) $(IDLFLAGS) $<
    %.hh: %.idl
    $(IDL) $(IDLFLAGS) $<
    # To compile components, you need the Javascript implementation
    # include files. This variable MUST be defined
    JS_INCLUDE := $(BV1TO1)/js/include
    # define a default 'root' directory, from which others are derived.
    # For now, let's assume it is the current directory.
    COMP_ROOT := $(shell /bin/pwd)
    # define the directory on your system which will contain all the .so
    # files to be loaded by the Interaction Manager. The default is
    # given below.
    # Note: this is where you must copy your .so file after it is built,
    # or change the Interaction Manager configuration to add the directory
    # to its default-object-path.
    COMPONENT_LIB_DIR := $(BV1TO1)/lib/components
    # Define the locations of various directories involved in the component-
    # building process. We've defaulted many of these entries to the current
    # directory, but you are free to change them to suit your particular setup.
    # The entries define the locations of:
    # SOURCE_DIR - your .cc and .jsi source files
    # HEADER_DIR - your .hh header files
    # LIBRARY_DIR - the .so files generated from your .cc files after
    # compilation and linking.
    # OBJECT_DIR - the .o files generated from your .cc files after
    # compilation
    SOURCE_DIR = $(COMP_ROOT)
    HEADER_DIR = $(COMP_ROOT)
    LIBRARY_DIR = $(COMP_ROOT)
    OBJECT_DIR = $(COMP_ROOT)
    # Given the 'base' name of the library, calculate the full name,
    # in standard Unix library-name format.
    FULL_LIBRARY_NAME := $(LIBRARY_DIR)/lib/lib$(LIBRARY_NAME).so
    LIBRARY_VERSION := 1
    # define the list of directories where header files (.h and .hh) can be
    # found (or at least from where we can start.) These will be used both
    # for the -I include paths and for vpath entries, so that we can establish
    # dependencies on the header files for each C++ target.
    # Note: we don't directly include the include dir for object headers--we
    # use <objects/xxx.hh> format in our source instead.
    HEADER_DIRS := \
    $(HEADER_DIR) \
    $(BV1TO1_INCLUDE) \
    $(ORBIX_INCLUDE) \
    $(ROGUEWAVE_INCLUDE) \
    $(JS_INCLUDE)
    # Include each of the header directories with a '-I' in front
    # for the compiler.
    INCLUDES = $(HEADER_DIRS:%=-I%)
    # define the vpath for various classes of files, so we don't always have
    # to list the directory in which we're checking for them. Note that
    # 'vpath' MUST be lowercase, according to GNU make rules.
    vpath %.hh $(HEADER_DIRS)
    vpath %.h $(HEADER_DIRS)
    # Define flags to be used for compilation.
    # The DEFINES flags mean:
    # DEBUG - enable the compiler to generate symbols so you can do
    # run a debugger like dbx on your objects. Highly recommended!
    # NONE_CLASH - needed by the RogueWave and Orbix code included with
    # One-to-One. DO NOT remove this compiler option!
    # TRACING - Turn on trace messages from the Dynamic Objects and
    # Interaction Manager. This may result in much more information
    # than you need. If this symbol is removed, tracing messages
    # are compiled out.
    PROFILE=
    DEFINES = -DDEBUG -DNONE_CLASH -DTRACING
    JSIC = $(BV1TO1)/bin/jsic
    CCC = CC
    JSFLAGS = -DJS_THREADSAFE -DJSFILE
    PICFLAGS = -KPIC
    MTFLAGS = -mt -DRW_MULTI_THREAD
    CDEBUGFLAGS = -g
    CCFLAGS += $(CDEBUGFLAGS) $(MTFLAGS) $(JSFLAGS) \
    $(PICFLAGS) $(INCLUDES) $(DEFINES)
    # Given the list of JSI, interface and implementation file roots,
    # compute the lists of actual files that need to be generated and/or
    # compiled to assemble the final library.
    JSI_BASENAMES = $(basename $(strip $(JSI_NAMES)))
    JSI_HH_FILES = $(JSI_BASENAMES:%=$(SOURCE_DIR)/%_skel.hh)
    JSI_CC_FILES = $(JSI_BASENAMES:%=$(SOURCE_DIR)/%_skel.cc)
    JSI_OBJ_FILES = $(JSI_BASENAMES:%=$(OBJECT_DIR)/%_skel.o)
    INTERFACE_BASENAMES = $(basename $(strip $(INTERFACE_NAMES)))
    INTERFACE_HH_FILES = $(INTERFACE_BASENAMES:%=$(SOURCE_DIR)/%.hh)
    INTERFACE_CC_FILES = $(INTERFACE_BASENAMES:%=$(SOURCE_DIR)/%.cc)
    INTERFACE_OBJ_FILES = $(INTERFACE_BASENAMES:%=$(OBJECT_DIR)/%.o)
    IMPLEMENTATION_BASENAMES = $(basename $(strip $(IMPLEMENTATION_NAMES)))
    IMPLEMENTATION_HH_FILES = $(IMPLEMENTATION_BASENAMES:%=$(SOURCE_DIR)/%.hh)
    IMPLEMENTATION_CC_FILES = $(IMPLEMENTATION_BASENAMES:%=$(SOURCE_DIR)/%.cc)
    IMPLEMENTATION_OBJ_FILES = $(IMPLEMENTATION_BASENAMES:%=$(OBJECT_DIR)/%.o)
    ALL_HH_FILES = \
    $(JSI_HH_FILES) $(INTERFACE_HH_FILES) $(IMPLEMENTATION_HH_FILES)
    ALL_CC_FILES = \
    $(JSI_CC_FILES) $(INTERFACE_CC_FILES) $(IMPLEMENTATION_CC_FILES)
    CWD_OBJ_FILES = \
    $(JSI_OBJ_FILES) $(INTERFACE_OBJ_FILES) $(IMPLEMENTATION_OBJ_FILES) $(CLIENT_OBJS)
    ALL_OBJ_FILES = $(CWD_OBJ_FILES)
    # define the major targets:
    # all : make everything
    # clean :
    .PHONY: all clean
    all: $(FULL_LIBRARY_NAME)
    clean:
    -rm -f $(FULL_LIBRARY_NAME)
    -rm -f $(FULL_LIBRARY_NAME).$(LIBRARY_VERSION)
    -rm -f $(CWD_OBJ_FILES)
    -rm -f $(JSI_HH_FILES)
    -rm -f $(JSI_CC_FILES)
    -rm -f lib/lib*
    -rm -rf Templates.DB
    -rm -f *~ dbx.log core
    $(FULL_LIBRARY_NAME): $(ALL_OBJ_FILES)
    -@echo "+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++"
    -@echo "Building component library '$@'"
    -@echo `date`
    -@rm -f $@.$(LIBRARY_VERSION) $@
    $(CCC) -G $(MTFLAGS) -o $@.$(LIBRARY_VERSION) \
    -h $(notdir $@).$(LIBRARY_VERSION) $^ \
    -L $(BV1TO1)/lib \
    -L $(BV1TO1)/lib/components \
    -L $(BV1TO1)/orbix/lib \
    -L $(BV1TO1)/rogue/lib \
    -L ../../procroot/MQ/lib \
    -R $(COMPONENT_LIB_DIR) \
    -R $(BV1TO1)/lib \
    -R $(BV1TO1)/lib/components \
    -R $(BV1TO1)/orbix/lib \
    -R $(BV1TO1)/rogue/lib \
    -R $../../procroot/MQ/lib \
    -l bvbasic -lbvdata -lorbixmt -lMQTransportHandler -lbvc -lrwtool_mt -ljsrt -lbuiltin\
    (cd $(LIBRARY_DIR)/lib; \
    ln -s $(notdir $@).$(LIBRARY_VERSION) $(notdir $@))
    # build the _skel.cc files using the JSI compiler.  We assume that
    # they will be built in the original source directory
    $(JSI_CC_FILES) : $(SOURCE_DIR)/%_skel.cc: $(SOURCE_DIR)/%.jsi
    -@echo "+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++"
    -@echo "Building skeleton code file '$@'"
    $(JSIC) $(JSICFLAGS) $<
    $(JSI_HH_FILES) : %_skel.hh: %.jsi
    -@echo "+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++"
    -@echo "Building skeleton header file '$@'"
    $(JSIC) $(JSICFLAGS) $<
    # build the .o files and put them into the OBJECT_DIR directory.
    # We assume that the OBJECT_DIR exists.
    $(OBJECT_DIR)/%.o: $(SOURCE_DIR)/%.cc
    -@echo "+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++"
    -@echo "Building component file '$@'"
    -@echo `date`
    -@echo
    $(CCC) -c $(CCFLAGS) -o $@ $<

    Hi,
    Thanxs for the reply,
    Here is the command that we use :
    +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
    Building skeleton code file '/appl/home/rmondal/sandbox/comproot/invoiceLookup/invoice_skel.cc'
    /appl/bv1to1/bin/jsic /appl/home/rmondal/sandbox/comproot/invoiceLookup/invoice.jsi
    CC -g -pic -pta -mt -D__EXTERN_C__=1 -DSVR4 -Dtrue=1 -Dfalse=0 -DEXCEPTIONS -D_REENTRANT -DRW_MULTI_THREAD -DNONE_CLASH -DIT_CATCH_ENV_EH -DIT_EX_MACROS -DRW_NO_FRIEND_INLINE_DECL -I. -I/appl/bv1to1/include/cpp -I/appl/bv1to1/rogue -I/appl/bv1to1/orbix/include -I../../procroot/MQ/idl -I../../procroot/MQ/include -I -I -I -I -I -I -g -mt -DRW_MULTI_THREAD -DJS_THREADSAFE -DJSFILE -KPIC -I/appl/home/rmondal/sandbox/comproot/invoiceLookup -I/appl/bv1to1/include/cpp -I/appl/bv1to1/orbix/include -I/appl/bv1to1/rogue -I/appl/bv1to1/js/include -DDEBUG -DNONE_CLASH -DTRACING -c /appl/home/rmondal/sandbox/comproot/invoiceLookup/invoice_skel.cc

  • Core dump using iostream with Sun Studio 8

    I'm running on Solaris 9 using C++ compiler Sun Studio 8, and encoutered a very strange problem.
    My application failed with a core and here is the stack.
    [1] t_splay(0x3774b470, 0x387a0ec0, 0x389aec60, 0x39e5ef1f, 0x3774b470, 0x1), at 0xfc347930
    [2] t_delete(0x387a0ec0, 0x80, 0x39be9748, 0x20, 0x383ccd20, 0x0), at 0xfc347698
    [3] mallocunlocked(0x80, 0x0, 0x21b08, 0xfc3bc000, 0x10, 0x20), at 0xfc346d40
    [4] malloc(0x80, 0xfbaa7400, 0x1, 0x759c40, 0x0, 0x0), at 0xfc346b74
    [5] operator new(0x80, 0x0, 0xd3a18, 0x759c74, 0x0, 0x8345fc), at 0x760c10
    [6] strstreambuf::overflow(0xf41f6e28, 0x29, 0xf41f6e28, 0x39fe0e88, 0x39fe0e88, 0x8345fc), at 0x75bb1c
    [7] streambuf::xsputn(0xf41f6e28, 0xfee00bc0, 0x1, 0x0, 0x81010100, 0x1), at 0x75ab94
    [8] unsafe_ostream::outstr(0xf41f6e78, 0xfee00bbf, 0x0, 0x0, 0xf41f6e7c, 0xfffffffe), at 0x757bac
    =>[9] unsafe_ostream::operator<<(this = 0xf41f6e78, _s = 0xfee00bbf ")"), line 1211 in "iostream.h"
    [10] ostream::operator<<(this = 0xf41f6e74, _s = 0xfee00bbf ")"), line 1350 in "iostream.h"
    [11] CorInterfaceEntity::ifState(this = 0x1bc3de78, newState = MISMATCH_OF_INSTALLED_AND_EXPECTED, needToSendEvent = false
    Can somebody help me giving a direction of investigation ?
    Is there perhaps known problem with iostream on Sun Studio 8 running on Solaris 9 ?
    Thanks for any tips.
    Yaakov Berkovitch
    [email protected]

    But sorry for my insistence, but do you think that
    purify or/and runtime are not able to detect any
    corruption of the heap ?They can detect some kinds of corruption, such as some uses of an invalid pointer.
    But a wild pointer that changes the value of data that is part of your program cannot be detected by RTC or Purify. Those programs can't know whether that change is intentional.
    >
    BTW, we are not using any volatile declaration, and weIf non-local data is shared among threads, it should be declared volatile. For example, suppose you have
    x = foo;
    ... // code not changing foo
    y = foo;
    If foo is not marked volatile, the compiler is allowed to assume its value hasn't changed, and assign to y the same value assigned to x. If foo was changed by another thread, y will not have the current value of foo. The "volatile" declaration says that the variable's value might change without any obvious reason, and the compiler should generate code to load a fresh value each time it is referenced.
    are using the rwtools library packaged with the
    compiler, and are not using the STD library.OK, you are not running into a std::string synchronization bug.
    >
    Also about the compiler option -xarch=v8, is probably
    not relevant for us because we are running Solaris 9.
    So the relevant compiler is probably -xarch=v9. Do you
    advise us using this option ?I think you misunderstand. The -xarch values refer to the kind of processor your program will run on.
    The -xarch=v8 option generates 32-bit code that will run on all SPARC chips, including the chips found in very old SPARCstations. This option is the default for compilers prior to Sun Studio 9 (which ships this week).
    The -xarch=v8plus option generates 32-bit code that runs only on UltraSPARC chips, found in Ultra workstations. These are the only kinds of workstations shipped by Sun since about 1996. Unless you need to support the ancient SPARCstations, we recommend compiling with -xarch=v8plus, to get smaller and faster code.
    The -xarch=v9 option generates 64-bit code that runs only on UltraSPARC chips, an only on Solaris 7 or later. Unless your program requires a very large address space, you generally don't want to generate 64-bit code. On SPARC, 64-bit code is larger and slower than 32-bit code. (Type "long" and all pointers are 64 bits instead of 32 bits.)
    >
    Also I want to return you two new questions:
    1) I read in another discussion,
    http://forum.sun.com/thread.jsp?forum=5&thread=18124&me
    sage=47854#47854
    that another memory manager can be more efficient in
    multi-threaded environment (libmtmalloc.so), and also
    an alternate threads library (/usr/lib/lwp) that
    reduced CPU usage. Do you advice us using this
    alternate library ?The libmtmalloc library usually has better performance in MT programs than the default version of malloc. It also can result in more memory fragmentation. In that case, the larger working set can sometimes have a large negative effect, more than offsetting the MT efficiency. You have to experiment to see whether it is appropriate for your particlular program. If you are running into heap corruption, the pattern of corruption will probably be different with libmtmalloc than with the default malloc. The differences might provide a clue to what is wrong.
    The alternative "T2" threads library was introduced in Solaris 8 as an option.
    In Solaris 9 it is the default, so you are already using it.
    >
    2) We are using the Rogue Wave library shiped with the
    compiler. Is it an up-to-date version ? Can we assume
    that is a good choice or it will be preferable to move
    to the STD library ?I assume you mean Rogue Wave Tools.h++. As explained in the compiler docs, this version of Tools is obsolete, and has not been supported for many years. We continue to provide it for customers who used it before the introduction of the C++ Standard Library in 1998, and who don't want to change their code. We do not recommend it for use in new code.

  • Most Important Conference for Enterprise Content Management (ECM) marketplace in India

    Enterprise Content Management (ECM) is no longer just about
    technology, or just about content. It is about content, community,
    and context. The deluge of data and information, coupled with the
    ever-increasing need for compliance is forcing enterprises to take
    a strategic look at ECM and its associated disciplines. To stack up
    to competition, enterprises are looking up to faster, flexible, and
    efficient business processes that can channelise copious,
    unstructured information into meaningfully optimised, governed, and
    digitally delivered data that is available to the right
    stakeholders at the right time.
    C-level executives, senior IT process management personnel,
    marketing and content managers are looking to find the precise
    solution that will fit the needs of their organization. What are
    these available solutions, and how do they stack up to the needs of
    a specific enterprise? What roles do strategic topics such as
    Governance, Collaboration, Enterprise 2.0 play in the evaluation of
    these solutions? What is a promising approach, and how do I find
    the correct partners? The ECM track at Business Technology Summit
    2008 offers strategic, technical, and business insights into all
    aspects of ECM, including Business Process Management (BPM),
    Business Rules Management (BRM), Master Data Management (MDM), Data
    Warehousing & Knowledge Management, and Enterprise 2.0. The
    summit will be held 22-26 September 2008 in Mumbai and Bangalore.
    Summit website:
    http://www.btsummit.com

    * Ismael Ghalimi is the father of Office 2.0. He is also
    credited with creating the first standards-based BPMS?
    * Nitin Borwankar is the father of Data 2.0?
    * Alan Pelz Sharpe is an expert guest on BBC, CNN and ABC
    Television
    * Robert Marcus has been at the helm of technology at General
    Motors, Boeing, Rogue Wave Software, MCC and HP?
    * Peter Coffee, formerly technology editor at eWeek, has
    appeared on CBS, NBC, CNN, Fox, and PBS newscasts.
    * Kiran Datar co-introduced the concept of conferencing
    services in India
    * THAT YOU CAN REACH OUT TO ALL THESE CELEBRITY SPEAKERS AT
    BT SUMMIT 2008?
    VIEW THE COMPLETE SCHEDULE:
    http://www.btsummit.com/summitSchedule.html
    REGISTER NOW FOR AS LOW AS INR 2999/-:
    http://www.btsummit.com/registration.html

  • Schedule Announced for Conference & Workshops on SOA, SaaS, Virtualisation & ECM

    When Technologies Mean Business, Participation Means
    Advantage. The schedule for Business Technology Summit has been
    announced. The theme of this year's summit is Riding the Workhorse
    IT Hockey Stick, featuring a convergence of four co-located tracks
    that have been identified as the power team for Workhorse IT -- SOA
    & Web Services, SaaS/PaaS, Enterprise Content Management and
    Virtualisation. View the complete schedule here
    http://www.btsummit.com/summitSchedule.html
    Gain Strategic, Technical and Business Insights at BT Summit
    2008, Bangalore Edition:
    * Dr. Chris Harding of The Open Group will present straight
    from the source a deep dive workshop on Using TOGAF for SOA.
    * Alan Pelz-Sharpe will put ECM and SOA through the SWOT
    Grind, speak about Email Archiving and Discovery, and lead a
    workshop on Selecting the Best ECM System.
    * Peter Coffee will show you how to Code In the Cloud as well
    as lead a deep dive workshop on Enterprise Readiness for the Cloud
    * Dr. Matjaz Juric, CEO of the SOA Competency Center, will
    conduct a hands-on workshop on BPMN to BPEL Modeling Business
    Processes for SOA and three focused sessions on SOA Architectural
    Patterns, SOA and BPM, and Designing Reusable Service Interfaces
    * Dr. Robert Marcus, Author of the Global Grid, will present
    the State of the Union - SOA Standards and lead a deep dive
    workshop on Future Distributed Computing Architectures and the Role
    of SOA
    * Nitin Borwankar will show you How to Find the Silver Lining
    in Cloud Services and lead a deep dive workshop on Affordable Data
    Analytics and Data Warehousing
    Business Technology Summit is your chance to refresh, pick up
    new tips and techniques, and network with your peers to find
    solutions to the most pressing business technology issues today.The
    four technology tracks at the summit offer complimentary
    synergistic for a robust IT infrastructure that you cannot afford
    to ignore in your quest for business technology success.
    REGISTER NOW FOR AS LOW AS INR 2999/-:
    http://www.btsummit.com/registration.html
    register
    Text

    * Ismael Ghalimi is the father of Office 2.0. He is also
    credited with creating the first standards-based BPMS?
    * Nitin Borwankar is the father of Data 2.0?
    * Alan Pelz Sharpe is an expert guest on BBC, CNN and ABC
    Television
    * Robert Marcus has been at the helm of technology at General
    Motors, Boeing, Rogue Wave Software, MCC and HP?
    * Peter Coffee, formerly technology editor at eWeek, has
    appeared on CBS, NBC, CNN, Fox, and PBS newscasts.
    * Kiran Datar co-introduced the concept of conferencing
    services in India
    * THAT YOU CAN REACH OUT TO ALL THESE CELEBRITY SPEAKERS AT
    BT SUMMIT 2008?
    VIEW THE COMPLETE SCHEDULE:
    http://www.btsummit.com/summitSchedule.html
    REGISTER NOW FOR AS LOW AS INR 2999/-:
    http://www.btsummit.com/registration.html

  • Linking issues while Migrating code from SUN CC 4.3 to SUN CC 5.8

    Hello,
    I am migrating code written in SUN CC 4.3 to SUN CC 5.8
    I have compiled entire code with SUN CC 5.8 with -compact=4 option ,on machine with OS SunOS 5.8 Generic_Virtual sun4v sparc sun4v.
    during linking phase i am facing issues like
    (cd msggen; make CG="-fast -O3 -compat=4 -lC -features=extensions -i" all)
    /opt/SUNWspro/bin/CC -o msggen msggen.o licensemessage.o ../../../../libs/lib/libgeneral.a
    Undefined first referenced
    symbol in file
    cerr ../../../../libs/lib/libgeneral.a(string.o)
    unsafe_ostream::operator<<(long) ../../../../libs/lib/libgeneral.a(string.o)
    operator delete(void*) msggen.o
    operator new(unsigned int) licensemessage.o
    Iostream_init::Iostream_init(void) msggen.o
    Iostream_init::~Iostream_init(void) msggen.o
    istream::operator>>(char*) ../../../../libs/lib/libgeneral.a(string.o)
    setw(int) ../../../../libs/lib/libgeneral.a(string.o)
    unsafe_ostream::outstr(const char*, const char*) ../../../../libs/lib/libgeneral.a(string.o)
    exrethrow_q msggen.o
    ld: fatal: Symbol referencing errors. No output written to msggen
    I felt like these issues are due to the standard header files. I am including the headers which comes with SUN CC 5.8 and I am using Rogue Wave rwav/ver09.1.
    I am not getting any pointers to solve this issue,any pointer will be highly appriciated.
    Thanks in advance,
    Revathi R

    975741 wrote:
    Yes i did migration by following the Migration Guide, while Migration i ve come across situations where a class method is invisible at many situations like...
    C.h
    class C
    f1();
    B.h
    #include<C.h>
    class B
    f2();
    A.C
    #include<B.h>
    class A:B
    f1();-----> Error Not accessible so I changed to C::f1() then worked like this I ve came across many will it be a Problem, in migration Guide i haven't seen any of such.
    }When you post a code example, it is best to copy/paste from actual code that you verified shows the problem. This example is nowhere near valid for any compiler, even with your suggested change.
    - The class declarations are not terminated by a semicolon
    - You can't call C::f1() using that syntax outside of class C or a class derived from class C because it is not a static function, and requires an object. You could call it as c.f1() if you had a c object of type C, except that f1() would still not be accessible.
    The rules about accessibility have never changed. Please post an example that actually works with C++ 4.x or with C++ 5.x in -compat=4 mode, but that fails with -compat=5 mode.
    >
    Like this for operator overloading also , I haven't got any way to make function body available to function call, so i ve changed those functions to normal functions...I don't understand what you mean. An example would help.
    >
    what is a template cache?? How to delete it??
    The template cache is also known as the template repository. See section 3.3.5 Template Repository in the Migration Guide. To delete the cache (repository) just remove the entire cache directory.
    >
    >
    Another task of mine is, i am compiling a code written in SUN CC 5.5 to 5.8, would you suggest me the migration guide, I could get from 4 to 5 and 3 to 5 but
    not from 5.5 to 5.8, I am not sure about in which compiler code is written but, I could able to compile the code with out compact option with SUN CC 5.5, CC 5.5 and 5.8 are fully compatible. There should be no migration issues. The exceptions would be invalid code that compiled due to a bug in the earlier compiler but is correctly diagnosed as an error with the later compiler. In rare cases, the later compiler has a bug not present in the earlier compiler (a regression). When found, regressions are fixed in patches. If you have an Oracle service contract, you can download patches from My Oracle Support. Otherwise, get the most recent compiler, which should not have those regressions.
    but while trying to compile with 5.8 i am facing issues like
    1. typecastingI would have to see an example.
    2.virtual vector<int> getProcedureArgs() { return 0; } -----> Error: Cannot use int to initialize std::vector<int>
    The compiler error message is correct. The function returns a vector<int>, but you can't create a vector<int> from an integer 0. That is, the vector template has several constructors, but none that accept a single integer argument.
    At this point we have moved away from the original topic. If you have further questions, please start a new thread.

  • How to solve the ambiguous defination of Rouguewave istream

    on Solaris nevada & Studio 11, I compile the following code
    #include <rw/rwdate.h>
    #include <rw/rstream.h>
    int main(){
    // ENIAC start date
    RWDate d(14, "February", 1945);
    // Today
    RWDate today;
    cout << d.asString("%A, %B %d 19%y")
    << " was the day the ENIAC computer was" << endl
    << "first turned on. "
    << today - d << " days have gone by since then. " << endl;
    return 0;
    the compilers says that :
    "/export/home/opt/SUNWspro/prod/include/CC/rw7/rw/rstream.h", line 46: Error: The name istream is ambiguous, istream and std::istream.
    "/export/home/opt/SUNWspro/prod/include/CC/rw7/rw/rstream.h", line 46: Error: The name istream is ambiguous, istream and std::istream.
    "/export/home/opt/SUNWspro/prod/include/CC/rw7/rw/rstream.h", line 46: Error: The type "istream" is incomplete.
    "/export/home/opt/SUNWspro/prod/include/CC/rw7/rw/cstring.h", line 347: Error: The name istream is ambiguous, istream and std::istream.
    How can I solve it?
    Thanks.

    I suspect your CC commad line is not correct.
    When using RW Tools.h++, use one of these options:
    -library=rwtools7_std
    -library=rwtools7,iostream
    The first options is for use with the default libCstd and standard iostreams.
    The second option is for use with "classic" iosttreams.
    We do not support use of strlport with RW Tools.h++.
    If you not using the version of RW Tools.h++ supplied with the compiler, you will have to check with Rogue Wave for instructions on using the library with Sun C++.

Maybe you are looking for

  • Oracle Sesame Adaptater - missing template for creation of a new SAIL repo.

    Hi, I'm trying to deploy the Sesame Adaptater on my TOMCAT server. At the point 8.9 of the doc ( http://docs.oracle.com/cd/E18283_01/appdev.112/e11828/sem_sesame.htm#BABFFEFA) I'm suppose to type in the sesame console the following comand : "create o

  • Integration of DWE in LV

    Hi All, I ve integrated the NI Digital Waveform Editor 2.0 in my project as an external application. The user is required to use only 0's, 1's & Z's - the 3 states. The maximum no of signals can go upto only 16. Till before a month or so, we were usi

  • Handling unit deletion in delivery

    Hi Can any one help us on how to unpack and delete HU from Outbound delivery? When we go through VL02N and do the unpacking and delete the HU and try to save that, system is giving the error message: Within the delivery, posting change not possible f

  • Fraudulent Activity

    My visa card seems to be getting charged a monthly fee of around $13 to $14 and it recurs at the end of each month. I rang my bank and they told me to try to sort it out first with Skype. However, everytime I try to follow the link to report this fra

  • Webi reporting

    Hi... We have a webi report which is build from two databases.one is oracle and the other is sybase. So the common objects are merged.As they are merged it gives me all the values from both the databases.But i need to have a column in such way that i