You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@stdcxx.apache.org by "Farid Zaripov (JIRA)" <ji...@apache.org> on 2008/02/14 14:29:10 UTC

[jira] Issue Comment Edited: (STDCXX-375) std::getline() declared in , but should be declared in

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

farid edited comment on STDCXX-375 at 2/14/08 5:27 AM:
---------------------------------------------------------------

This problem is exist on compilers with supporting of implicit inclusion (where _RWSTD_NO_IMPLICIT_INCLUSION is not defined).
On these compilers we don't explicitly #including <xxx.cc> files, but it seems that compiler doesn't #includes <istream.cc> file implicitly because of std::operator>>() and std::getline() are declared in <string>.
So what the option? Restore the declaration of these functions in <istream> will not help. Perhaps we should to #include <istream.cc> in <istream> explicilty ignoring the implicit inclusion?

      was (Author: farid):
    This problem is exist on compilers with supporting of implicit inclusion (where _RWSTD_NO_IMPLICIT_INCLUSION is not defined).
On these compilers we don't explicitly #including <xxx.cc> file, and compiler doesn't #includes <istream.cc> file implicitly because of std::operator>>() and std::getline() are declared in <string>.
So what the option? Restore the declaration of these functions in <istream> will not help. Perhaps we should to #include <istream.cc> in <istream> explicilty ignoring the implicit inclusion?
  
> std::getline() declared in <istream>, but should be declared in <string>
> ------------------------------------------------------------------------
>
>                 Key: STDCXX-375
>                 URL: https://issues.apache.org/jira/browse/STDCXX-375
>             Project: C++ Standard Library
>          Issue Type: Bug
>          Components: 21. Strings
>    Affects Versions: 4.1.3, 4.1.4, 4.2.0
>         Environment: All
>            Reporter: Farid Zaripov
>            Assignee: Farid Zaripov
>             Fix For: 4.2.1
>
>         Attachments: stdcxx-375.patch
>
>   Original Estimate: 3h
>          Time Spent: 3h
>  Remaining Estimate: 0h
>
> The following code fails to compile with errors:
> test.cpp(7) : error C2039: 'getline' : is not a member of 'std'
> test.cpp(7) : error C3861: 'getline': identifier not found, even with argument-dependent lookup
> test.cpp:
> ---------------------------
> #include <string>
> #include <iosfwd>
> void test (std::istream& is)
> {
>     std::string str;
>     std::getline (is, str);
> }
> ---------------------------
> The addition information here: http://mail-archives.apache.org/mod_mbox/incubator-stdcxx-dev/200703.mbox/%3c7BDB2168BEAEF14C98F1901FD2DE6438594C10@epmsa009.minsk.epam.com%3e

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