You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@stdcxx.apache.org by "Travis Vitek (JIRA)" <ji...@apache.org> on 2008/02/27 00:12:51 UTC

[jira] Created: (STDCXX-741) [gcc 3.4.6] __rw_itoutf8() too big to be inlined

[gcc 3.4.6] __rw_itoutf8() too big to be inlined
------------------------------------------------

                 Key: STDCXX-741
                 URL: https://issues.apache.org/jira/browse/STDCXX-741
             Project: C++ Standard Library
          Issue Type: Bug
          Components: 27. Input/Output
         Environment: gcc version 3.4.5 20060404 (Red Hat 3.4.6-3)
            Reporter: Travis Vitek


I get the following warning when building 12[d,D] on trunk.

{noformat}
/amd/devco/vitek/stdcxx/trunk/include/loc/_localedef.h: In member function `virtual std::basic_string<wchar_t, std::char_traits<wchar_t>, std::allocator<wchar_t> > std::collate_byname<wchar_t>::do_transform(const wchar_t*, const wchar_t*) const':
/amd/devco/vitek/stdcxx/trunk/include/loc/_localedef.h:685: warning: inlining failed in call to 'long unsigned int __rw::__rw_itoutf8(unsigned int, char*)': --param inline-unit-growth limit reached
/amd/devco/vitek/stdcxx/trunk/src/collate.cpp:325: warning: called from here
/amd/devco/vitek/stdcxx/trunk/include/loc/_localedef.h:685: warning: inlining failed in call to 'long unsigned int __rw::__rw_itoutf8(unsigned int, char*)': --param inline-unit-growth limit reached
/amd/devco/vitek/stdcxx/trunk/src/collate.cpp:369: warning: called from here
/amd/devco/vitek/stdcxx/trunk/include/loc/_localedef.h:685: warning: inlining failed in call to 'long unsigned int __rw::__rw_itoutf8(unsigned int, char*)': --param inline-unit-growth limit reached
/amd/devco/vitek/stdcxx/trunk/src/collate.cpp:1174: warning: called from here
In file included from /amd/devco/vitek/stdcxx/trunk/src/collate.cpp:1152:
/amd/devco/vitek/stdcxx/trunk/include/loc/_localedef.h:685: warning: inlining failed in call to 'long unsigned int __rw::__rw_itoutf8(unsigned int, char*)': --param inline-unit-growth limit reached
/amd/devco/vitek/stdcxx/trunk/src/collate.cpp:325: warning: called from here
In file included from /amd/devco/vitek/stdcxx/trunk/src/collate.cpp:1155:
/amd/devco/vitek/stdcxx/trunk/include/loc/_localedef.h:685: warning: inlining failed in call to 'long unsigned int __rw::__rw_itoutf8(unsigned int, char*)': --param inline-unit-growth limit reached
/amd/devco/vitek/stdcxx/trunk/src/collate.cpp:369: warning: called from here
/amd/devco/vitek/stdcxx/trunk/include/loc/_localedef.h:685: warning: inlining failed in call to 'long unsigned int __rw::__rw_itoutf8(unsigned int, char*)': --param inline-unit-growth limit reached
/amd/devco/vitek/stdcxx/trunk/src/collate.cpp:1174: warning: called from here
{noformat}

This issue is very similar to STDCXX-415. The __rw_itoutf8() function and __rw_utf8toucs4() functions are nearly the same and both are found in the same area of include/loc/_localedef.h. It appears that something has changed that has moved the warning. Perhaps we should consider fixing both functions or just silencing the warning.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Assigned: (STDCXX-741) [gcc 3.4.6] __rw_itoutf8() too big to be inlined

Posted by "Martin Sebor (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/STDCXX-741?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Martin Sebor reassigned STDCXX-741:
-----------------------------------

    Assignee: Martin Sebor

> [gcc 3.4.6] __rw_itoutf8() too big to be inlined
> ------------------------------------------------
>
>                 Key: STDCXX-741
>                 URL: https://issues.apache.org/jira/browse/STDCXX-741
>             Project: C++ Standard Library
>          Issue Type: Bug
>          Components: 27. Input/Output
>         Environment: gcc version 3.4.5 20060404 (Red Hat 3.4.6-3)
>            Reporter: Travis Vitek
>            Assignee: Martin Sebor
>   Original Estimate: 3h
>  Remaining Estimate: 3h
>
> I get the following warning when building 12[d,D] on trunk.
> {noformat}
> /amd/devco/vitek/stdcxx/trunk/include/loc/_localedef.h: In member function `virtual std::basic_string<wchar_t, std::char_traits<wchar_t>, std::allocator<wchar_t> > std::collate_byname<wchar_t>::do_transform(const wchar_t*, const wchar_t*) const':
> /amd/devco/vitek/stdcxx/trunk/include/loc/_localedef.h:685: warning: inlining failed in call to 'long unsigned int __rw::__rw_itoutf8(unsigned int, char*)': --param inline-unit-growth limit reached
> /amd/devco/vitek/stdcxx/trunk/src/collate.cpp:325: warning: called from here
> /amd/devco/vitek/stdcxx/trunk/include/loc/_localedef.h:685: warning: inlining failed in call to 'long unsigned int __rw::__rw_itoutf8(unsigned int, char*)': --param inline-unit-growth limit reached
> /amd/devco/vitek/stdcxx/trunk/src/collate.cpp:369: warning: called from here
> /amd/devco/vitek/stdcxx/trunk/include/loc/_localedef.h:685: warning: inlining failed in call to 'long unsigned int __rw::__rw_itoutf8(unsigned int, char*)': --param inline-unit-growth limit reached
> /amd/devco/vitek/stdcxx/trunk/src/collate.cpp:1174: warning: called from here
> In file included from /amd/devco/vitek/stdcxx/trunk/src/collate.cpp:1152:
> /amd/devco/vitek/stdcxx/trunk/include/loc/_localedef.h:685: warning: inlining failed in call to 'long unsigned int __rw::__rw_itoutf8(unsigned int, char*)': --param inline-unit-growth limit reached
> /amd/devco/vitek/stdcxx/trunk/src/collate.cpp:325: warning: called from here
> In file included from /amd/devco/vitek/stdcxx/trunk/src/collate.cpp:1155:
> /amd/devco/vitek/stdcxx/trunk/include/loc/_localedef.h:685: warning: inlining failed in call to 'long unsigned int __rw::__rw_itoutf8(unsigned int, char*)': --param inline-unit-growth limit reached
> /amd/devco/vitek/stdcxx/trunk/src/collate.cpp:369: warning: called from here
> /amd/devco/vitek/stdcxx/trunk/include/loc/_localedef.h:685: warning: inlining failed in call to 'long unsigned int __rw::__rw_itoutf8(unsigned int, char*)': --param inline-unit-growth limit reached
> /amd/devco/vitek/stdcxx/trunk/src/collate.cpp:1174: warning: called from here
> {noformat}
> This issue is very similar to STDCXX-415. The __rw_itoutf8() function and __rw_utf8toucs4() functions are nearly the same and both are found in the same area of include/loc/_localedef.h. It appears that something has changed that has moved the warning. Perhaps we should consider fixing both functions or just silencing the warning.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Closed: (STDCXX-741) [gcc 3.4.6] __rw_itoutf8() too big to be inlined

Posted by "Martin Sebor (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/STDCXX-741?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Martin Sebor closed STDCXX-741.
-------------------------------

    Resolution: Won't Fix

This particular instance of the warning is gone from builds with later versions of the compiler, likely because of improvements to the optimizer. We should do a review of our build logs with recent versions of gcc (as well as other compilers) for these warnings but that should be done as a separate project (such as STDCXX-894).

> [gcc 3.4.6] __rw_itoutf8() too big to be inlined
> ------------------------------------------------
>
>                 Key: STDCXX-741
>                 URL: https://issues.apache.org/jira/browse/STDCXX-741
>             Project: C++ Standard Library
>          Issue Type: Bug
>          Components: 27. Input/Output
>         Environment: gcc version 3.4.5 20060404 (Red Hat 3.4.6-3)
>            Reporter: Travis Vitek
>            Assignee: Martin Sebor
>   Original Estimate: 3h
>  Remaining Estimate: 3h
>
> I get the following warning when building 12[d,D] on trunk.
> {noformat}
> /amd/devco/vitek/stdcxx/trunk/include/loc/_localedef.h: In member function `virtual std::basic_string<wchar_t, std::char_traits<wchar_t>, std::allocator<wchar_t> > std::collate_byname<wchar_t>::do_transform(const wchar_t*, const wchar_t*) const':
> /amd/devco/vitek/stdcxx/trunk/include/loc/_localedef.h:685: warning: inlining failed in call to 'long unsigned int __rw::__rw_itoutf8(unsigned int, char*)': --param inline-unit-growth limit reached
> /amd/devco/vitek/stdcxx/trunk/src/collate.cpp:325: warning: called from here
> /amd/devco/vitek/stdcxx/trunk/include/loc/_localedef.h:685: warning: inlining failed in call to 'long unsigned int __rw::__rw_itoutf8(unsigned int, char*)': --param inline-unit-growth limit reached
> /amd/devco/vitek/stdcxx/trunk/src/collate.cpp:369: warning: called from here
> /amd/devco/vitek/stdcxx/trunk/include/loc/_localedef.h:685: warning: inlining failed in call to 'long unsigned int __rw::__rw_itoutf8(unsigned int, char*)': --param inline-unit-growth limit reached
> /amd/devco/vitek/stdcxx/trunk/src/collate.cpp:1174: warning: called from here
> In file included from /amd/devco/vitek/stdcxx/trunk/src/collate.cpp:1152:
> /amd/devco/vitek/stdcxx/trunk/include/loc/_localedef.h:685: warning: inlining failed in call to 'long unsigned int __rw::__rw_itoutf8(unsigned int, char*)': --param inline-unit-growth limit reached
> /amd/devco/vitek/stdcxx/trunk/src/collate.cpp:325: warning: called from here
> In file included from /amd/devco/vitek/stdcxx/trunk/src/collate.cpp:1155:
> /amd/devco/vitek/stdcxx/trunk/include/loc/_localedef.h:685: warning: inlining failed in call to 'long unsigned int __rw::__rw_itoutf8(unsigned int, char*)': --param inline-unit-growth limit reached
> /amd/devco/vitek/stdcxx/trunk/src/collate.cpp:369: warning: called from here
> /amd/devco/vitek/stdcxx/trunk/include/loc/_localedef.h:685: warning: inlining failed in call to 'long unsigned int __rw::__rw_itoutf8(unsigned int, char*)': --param inline-unit-growth limit reached
> /amd/devco/vitek/stdcxx/trunk/src/collate.cpp:1174: warning: called from here
> {noformat}
> This issue is very similar to STDCXX-415. The __rw_itoutf8() function and __rw_utf8toucs4() functions are nearly the same and both are found in the same area of include/loc/_localedef.h. It appears that something has changed that has moved the warning. Perhaps we should consider fixing both functions or just silencing the warning.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.