Details
-
Bug
-
Status: Resolved
-
Minor
-
Resolution: Cannot Reproduce
-
4.1.3
-
None
-
gcc 3.3.3 (SuSE Linux)
-
Compiler Warning
Description
We're getting a few warnings for the __rw_utf8toucs4() inline function indicating that the function is too big to be inlined. It might be a good idea to split it up into two, a simple inline wrapper to handle the common case for single and perhaps two-byte characters and a bigger out-of-line implementation to handle the more complicated multibyte characters.
c++ -O2 -W -Wall -Wcast-qual -Winline -Wshadow -Wwrite-strings -Wno-long-long -Wcast-align -fPIC /amd/devco/sebor/stdcxx/src/wctype.cpp gencat rwstderr.cat /amd/devco/sebor/stdcxx/src/rwstderr.msg /amd/devco/sebor/stdcxx/src/wcodecvt.cpp: In member function `virtual int std::codecvt_byname<wchar_t, char, __mbstate_t>::do_length(__mbstate_t&, const char*, const char*, unsigned int) const': /amd/devco/sebor/stdcxx/include/loc/_localedef.h:735: warning: inlining failed in call to `const char* __rw::__rw_utf8toucs4(int*, const char*, const char*)' /amd/devco/sebor/stdcxx/src/wcodecvt.cpp:964: warning: called from here In file included from /amd/devco/sebor/stdcxx/src/wcodecvt.cpp:1065, from /amd/devco/sebor/stdcxx/src/wcodecvt.cpp:1621: /amd/devco/sebor/stdcxx/include/loc/_localedef.h:735: warning: inlining failed in call to `const char* __rw::__rw_utf8toucs4(int*, const char*, const char*)' /amd/devco/sebor/stdcxx/src/wcodecvt.cpp:964: warning: called from here /amd/devco/sebor/stdcxx/src/wcodecvt.cpp: In member function `virtual std::codecvt_base::result std::codecvt_byname<wchar_t, char, __mbstate_t>::do_in(__mbstate_t&, const char*, const char*, const char*&, wchar_t*, wchar_t*, wchar_t*&) const': /amd/devco/sebor/stdcxx/include/loc/_localedef.h:735: warning: inlining failed in call to `const char* __rw::__rw_utf8toucs4(int*, const char*, const char*)' /amd/devco/sebor/stdcxx/src/wcodecvt.cpp:736: warning: called from here In file included from /amd/devco/sebor/stdcxx/src/wcodecvt.cpp:1396: /amd/devco/sebor/stdcxx/include/loc/_localedef.h:735: warning: inlining failed in call to `const char* __rw::__rw_utf8toucs4(int*, const char*, const char*)' /amd/devco/sebor/stdcxx/src/wcodecvt.cpp:736: warning: called from here