You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@stdcxx.apache.org by "Martin Sebor (JIRA)" <ji...@apache.org> on 2006/08/08 17:57:15 UTC

[jira] Commented: (STDCXX-266) [Sun C++] cv-qualifiers of function parameters mangled into function type

    [ http://issues.apache.org/jira/browse/STDCXX-266?page=comments#action_12426618 ] 
            
Martin Sebor commented on STDCXX-266:
-------------------------------------

-------- Original Message --------
Subject: Re: (Incident Review ID: 769420) Sun C++ 5.8 cv-qualifiers of function parameters mangled into function type
Date: Tue, 08 Aug 2006 09:51:29 -0600 (MDT)
From: Steve Clamage <St...@Sun.COM>
To: sebor@roguewave.com

Hi Martin Sebor,

As explained in the C++ Readme
http://developers.sun.com/prodtech/cc/documentation/ss11/mr/READMEs/c++.html#cNameMangling
this is a known problem we cannot fix without breaking existing code.

We have an undocumented compiler option
    -Qoption ccfe -abiopt=mangle6
that generates correct mangling. For a a program to link successfully, all parts of it must be compiled with this option. The option is therefore not suitable for middleware or libraries that are distributed widely.

The Readme provides some workarounds.

Regards,
Steve

> [Sun C++] cv-qualifiers of function parameters mangled into function type
> -------------------------------------------------------------------------
>
>                 Key: STDCXX-266
>                 URL: http://issues.apache.org/jira/browse/STDCXX-266
>             Project: C++ Standard Library
>          Issue Type: Bug
>          Components: External
>         Environment: Sun C++, all versions
>            Reporter: Martin Sebor
>
> -------- Original Message --------
> Subject: Your Report (Review ID: 769420) - Sun C++ 5.8 cv-qualifiers of function parameters mangled into function type
> Date: Mon, 7 Aug 2006 12:31:50 -0600 (MDT)
> From: IncidentDaemon@sun.com <In...@sun.com>
> To: sebor@roguewave.com
> Dear Sun Studio Developer,
> Thank you for your interest in improving the quality of Sun Studio 
> product.
> Your report has been assigned an internal review ID of  769420.
> Please be aware that the large volume of reports we receive sometimes 
> prevents us from responding individually to each message.
> If the information is determined to be a new Bug or Request for 
> Enhancement (RFE), or a duplicate of a known Bug or RFE, you will 
> receive a followup email containing a seven digit bug number.  By 
> using this seven digit bug number, you may search for, view, or vote 
> for this bug in the Bug Database at http://bugs.sun.com/.  Please note 
> that we cannot promise to fix all reported bugs.
> If you just reported an issue that could have a major impact on your 
> project and require a timely response, please consider purchasing 
> one of the support offerings described at 
> http://developers.sun.com/prodtech/cc/support/support_services.jsp.
> The Sun Developer Network (http://developers.sun.com) is a free service 
> that Sun offers. To join, visit http://developers.sun.com/global/join_sdn.html.
> Regards,
> Sun Studio Developer Bug Report Review Team
> ---------------------------------------------------------------
> Date Created: Mon Aug 07 12:31:48 MDT 2006
> Type:        bug
> Customer Name:   Martin Sebor
> Customer Email:  sebor@roguewave.com
> SDN ID:       sebor
> status:      Waiting
> Category:    c++
> Subcategory: other
> Company:     Rogue Wave Software
> release:     studio11
> hardware:    sun4
> OSversion:   solaris_10
> priority:    4
> Synopsis:    Sun C++ 5.8 cv-qualifiers of function parameters mangled into function type
> Description:
>  FULL PRODUCT VERSION :
> N/A
> ADDITIONAL OS VERSION INFORMATION :
> Solaris (all versions)
> A DESCRIPTION OF THE PROBLEM :
> Sun C++ incorrectly includes cv-qualifier of the types of function parameters in the mangled name of the function. See [dcl.fct].
> STEPS TO FOLLOW TO REPRODUCE THE PROBLEM :
> $ cat ~/tmp/t.cpp && CC -c -V ~/tmp/t.cpp -o foo.o && CC -DMAIN ~/tmp/t.cpp foo.o
> EXPECTED VERSUS ACTUAL BEHAVIOR :
> EXPECTED -
> No error.
> ACTUAL -
> CC: Sun C++ 5.8 Patch 121017-01 2005/12/11
> ccfe: Sun C++ 5.8 Patch 121017-01 2005/12/11
> Undefined                       first referenced
>  symbol                             in file
> void foo(int)                      t.o
> ld: fatal: Symbol referencing errors. No output written to a.out
> ERROR MESSAGES/STACK TRACES THAT OCCUR :
> See Actual Result.
> REPRODUCIBILITY :
> This bug can be reproduced always.
> ---------- BEGIN SOURCE ----------
> // t.cpp
> void foo (int);   // __1cDfoo6Fi_v_
> #ifdef MAIN
> int main () { foo (0); }
> #else
> void foo (const int) { }   // __1cDfoo6Fki_v_
> #endif
> ---------- END SOURCE ----------
> workaround:  
> comments:    (company - Rogue Wave Software , email - sebor@roguewave.com)

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira