[ 
https://issues.apache.org/jira/browse/STDCXX-367?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12602800#action_12602800
 ] 

Travis Vitek commented on STDCXX-367:
-------------------------------------

The templates are being explicitly instantiated. The basic_istream<char> 
symbols are all in the lib. If I preprocess {{ti_ostream.cpp}} I see the 
following code...

{noformat}
namespace std {
  template class basic_istream<char, char_traits<char> >;
}
{noformat}

I do see some conditional code in rw/_defs.h that disables explicit 
instantation to avoid an ICE with XLC++ 8.0. This is only enabled under very 
specific conditions and would not have an impact on other versions of the 
compiler.



> [XLC++ 7.0, 8.0, 9.0] warning 1540-0183 on explicit instantiation
> -----------------------------------------------------------------
>
>                 Key: STDCXX-367
>                 URL: https://issues.apache.org/jira/browse/STDCXX-367
>             Project: C++ Standard Library
>          Issue Type: Bug
>          Components: Build
>    Affects Versions: 4.1.3
>         Environment: IBM XLC++ 7.0, 8.0, 9.0
>            Reporter: Martin Sebor
>            Assignee: Travis Vitek
>            Priority: Minor
>             Fix For: 4.2.2
>
>
> Compiling stdcxx 4.1.3 with XLC++ 7.0 on AIX produces many warnings like the 
> ones below:
> xlCcore -c -I/amd/devco/sebor/stdcxx-4.1.3/include/ansi -D_RWSTDDEBUG    
> -D_RWSTD_USE_CONFIG -I/build/sebor/stdcxx-4.1.3-xlc-7.0.0.9-11s/include 
> -I/amd/devco/sebor/stdcxx-4.1.3/include  -g  -qtemplateregistry=repository.ti 
>    /amd/devco/sebor/stdcxx-4.1.3/src/ti_istream.cpp
> "/amd/devco/sebor/stdcxx-4.1.3/include/istream", line 580.23: 1540-0183 (W) 
> The explicit instantiation "basic_istream<char,std::char_traits<char> >" 
> should either be explictly qualified or be declared in the namespace 
> containing the template.
> "/amd/devco/sebor/stdcxx-4.1.3/include/istream", line 580.23: 1540-0183 (W) 
> The explicit instantiation "basic_istream<char,std::char_traits<char> >" 
> should either be explictly qualified or be declared in the namespace 
> containing the template.
> "/amd/devco/sebor/stdcxx-4.1.3/include/istream", line 153.16: 1540-0700 (I) 
> The previous message was produced while processing 
> "__rw::__rw_extract<char,std::char_traits<char>,bool>(basic_istream<char,std::char_traits<char>
>  > &, bool &)".
> "/amd/devco/sebor/stdcxx-4.1.3/include/istream", line 152.20: 1540-0700 (I) 
> The previous message was produced while processing 
> "std::basic_istream<char,std::char_traits<char> >::operator>>(bool &)".
> "/amd/devco/sebor/stdcxx-4.1.3/include/istream", line 82.7: 1540-0700 (I) The 
> previous message was produced while processing "class 
> std::basic_istream<char,std::char_traits<char> >".
> ...

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

Reply via email to