Subject: libg++ 2.5.3l.2 is on tsx-11 (fwd)
From: [email-masked] (H.J. Lu)
Date: Sun, 27 Feb 1994 17:05:18 GMT
Newsgroups: comp.os.linux.announce

This is the binary release of the GNU C++ library 2.5.3l.2 (The GNU
libg++ 2.5.3) for Linux. You have to install gcc 2.5.7 or above and
libc 4.5.21 or above to use it. Please don't use it with older gcc
or libc.

It is on tsx-11.mit.edu under pub/linux/packages/GCC and is compressed
with gzip 1.2.4.

Iostream is now back to libg++.a. But you have to use it with libc
4.5.19 or above. Due to the upcoming merger of ncurses, I didn't include
CursesW.o in libg++.a.

The only change from 2.5.3l.1 is libio/isgetline.cc, which I am
enclosing here.

I discourage compiling libg++ 2.5.3 yourself unless you know what you
are doing. I have made many modifications. I hope my changes can be
merged in the next libg++ 2.5.x. But I don't know what will happen.

If you really want to compile libg++ 2.5.3 yourself, please follow my
instructions closely. You can get the source code libg++-2.5.3.tar.gz
from any gnu ftp sites like prep.ai.mit.edu:pub/gnu or
ftp.uu.net:packages/gnu. You should first apply my patch,
libg++-2.5.3l.2.diff.gz, which is on tsx-11.mit.edu under
pub/linux/packages/GCC after libg++ 2.5.3 is released. After running
"configure", you should go to libg++/src and do

1. rm regex.*
2. vi Makefile. You should remove all the references to
   regex.[o|h|cc|c]. I don't want to patch libg++ such that it won't
   compile on other platforms.

Then you can do a make at the top.

The file list:

1. libg++-2.5.3l.2-p1.tar.gz

  REQUIRED. libg++.a, libiostream.a, libiberty.a and genclass. It
  is libg++ 2.5.3l.2. To install

  cd /usr
  zcat libg++-2.5.3l.2-p1.tar.gz | tar xvvof -

2. libg++-2.5.3l.2-p2.tar.gz

  REQUIRED. g++-include. It is libg++ 2.5.3l.2 and is the same as
  2.5.3l.1. To install

  cd /usr
  zcat libg++-2.5.3l.2-p2.tar.gz | tar xvvof -

H.J.
[email-masked]
02/26/94
---
>From [email-masked] Mon Feb 14 19:02:24 1994
From: [email-masked] (Per Bothner)
To: [email-masked] (H.J. Lu)
Subject: Re: libg++ bug? 
Date: Mon, 14 Feb 94 16:01:50 -0800
Status: OR

I prefer the following patch.
But note that this is tentative.
I need to clarify the ANSI specification, after I get
the next working paper (in a few days).
	--Per

Index: isgetline.cc
===================================================================
RCS file: /rel/cvsfiles/devo/libio/isgetline.cc,v
retrieving revision 1.3
diff -c -r1.3 isgetline.cc
*** isgetline.cc	1994/01/20 22:21:36	1.3
--- libio/isgetline.cc	1994/02/14 23:04:57
***************
*** 38,54 ****
      {
        streambuf *sb = rdbuf();
        _IO_size_t count = _IO_getline(sb, buf, len - 1, delim, -1);
!       if (count == len-1)
! 	set(ios::failbit);
!       else
  	{
! 	  int ch = sb->sbumpc();
! 	  if (ch == EOF)
! 	    set(ios::failbit|ios::eofbit);
! 	  else if (ch == (unsigned char)delim)
! 	    count++;
! 	  else
! 	    sb->sungetc(); // Leave delimiter unread.
  	}
        _gcount = count;
      }
--- 38,50 ----
      {
        streambuf *sb = rdbuf();
        _IO_size_t count = _IO_getline(sb, buf, len - 1, delim, -1);
!       int ch = sb->sbumpc();
!       if (ch == EOF)
! 	set(ios::failbit|ios::eofbit);
!       else if (ch != (unsigned char)delim)
  	{
! 	  set(ios::failbit);
! 	  sb->sungetc(); // Leave delimiter unread.
  	}
        _gcount = count;
      }