delorie.com/archives/browse.cgi   search  
Mail Archives: cygwin/2003/04/22/18:42:57

Mailing-List: contact cygwin-help AT cygwin DOT com; run by ezmlm
List-Subscribe: <mailto:cygwin-subscribe AT cygwin DOT com>
List-Archive: <http://sources.redhat.com/ml/cygwin/>
List-Post: <mailto:cygwin AT cygwin DOT com>
List-Help: <mailto:cygwin-help AT cygwin DOT com>, <http://sources.redhat.com/ml/#faqs>
Sender: cygwin-owner AT cygwin DOT com
Mail-Followup-To: cygwin AT cygwin DOT com
Delivered-To: mailing list cygwin AT cygwin DOT com
Message-ID: <3EA5C404.36C45C2@doe.carleton.ca>
Date: Tue, 22 Apr 2003 18:36:52 -0400
From: Fred Ma <fma AT doe DOT carleton DOT ca>
X-Accept-Language: en
MIME-Version: 1.0
Newsgroups: gnu.gcc.help,comp.unix.programmer
To: cygwin AT cygwin DOT com
Subject: Problem building ddd on cygwin

Hello,

I've tried building the ddd on cygwin and got the same
message as before:

   strclass.C:1443: invalid conversion from `int' to `std::_Ios_Iostate'
   strclass.C:1443:   initializing argument 1 of `void std::basic_ios<_CharT, 
      _Traits>::clear(std::_Ios_Iostate) [with _CharT = char, _Traits = 
      std::char_traits<char>]'strclass.C:1443: invalid conversion from `int' to `std::_Ios_Iostate'
   strclass.C:1443:   initializing argument 1 of `void std::basic_ios<_CharT, 
      _Traits>::clear(std::_Ios_Iostate) [with _CharT = char, _Traits = 
      std::char_traits<char>]'

The context is:

  1435  #if HAVE_IOSTATE
  1436      ios::iostate new_state = s.rdstate();
  1437  #else
  1438      int new_state = s.rdstate();
  1439  #endif
  1440      if (i == 0)
  1441          new_state |= ios::failbit;
  1442      if (ch == EOF) 
  1443          new_state |= ios::eofbit;
  1444      s.clear(new_state);
  1445      return s;
  1446  }

This means ios::iostate is an int, and HAVE_IOSTATE
is not defined.  I recursively grepped all the files
in the include directories (from g++ -v):

   /usr/include/w32api
   /usr/include/c++/3.2
   /usr/include/c++/3.2/i686-pc-cygwin
   /usr/include/c++/3.2/backward
   /usr/lib/gcc-lib/i686-pc-cygwin/3.2/include
   /usr/include

There certainly is no ios::iostate, though there is
an ios_base::iostate (as predicted by Josutiss's
"The C++ Standard Library...").  To confirm that
this is the problem, I checked the output of ddd's
./configure step, and it says:

checking for ios::iostate... no

Is there a straightforward way to fix this?
I'm using cygwin 1.3.22-1, "DLL epoch" 19.
The g++ version that accompanies this cygwin
is 3.2 20020927 (prerelease).  The ddd is the
most recent ddd-3.3.1.  I have Xfree86 and
LessTif.

Thanks for any help.

Fred

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

- Raw text -


  webmaster     delorie software   privacy  
  Copyright © 2019   by DJ Delorie     Updated Jul 2019