Web lists-archives.com

Re: GCC 7.3.0 -std=gnu++17 failed to getline() from std::ifstream




On 2018-06-12 02:17, Marco Atzeri wrote:
On 6/11/2018 4:11 AM, Ross Smith wrote:
On 2018-06-06 09:00, Marco Atzeri wrote:
On 6/5/2018 10:32 PM, Ivan Shynkarenka wrote:
  Hello

I use x64 bit Cygwin and it failed in my home, work and Appveyor.  I add
cygcheck.out with my environment.

I'm sorry about misspell prefix space in my prev example. Please try the
following one:

#include <fstream>
#include <iostream>

int main(int argc, char** argv)
{
     std::string line;
     std::ifstream stream("test.cpp");
     while (getline(stream, line))
         std::cout << line << std::endl;
     return 0;
}

g++ -std=gnu++17 test.cpp

works fine on 32 bit and 64 bit on my W7

I'm having the same problem. My test program:

#include <fstream>
#include <iostream>
int main() {
     std::ifstream in("demo.cpp");


with this change does not segfault

   std::ifstream stream("demo.cpp\n");

It doesn't segfault because it doesn't open the file, because no file
named "demo.cpp\n" exists. I don't know WTF you thought you were doing
here.

Ross Smith

--
Problem reports:       http://cygwin.com/problems.html
FAQ:                   http://cygwin.com/faq/
Documentation:         http://cygwin.com/docs.html
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple