🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Thread View: gnu.g++.lib.bug
1 messages
1 total messages Started by David B. Teague Mon, 16 Nov 1992 21:59
Problems with gcc2.3.1 and iostream/(iostream|streambuf).h
#350
Author: David B. Teague
Date: Mon, 16 Nov 1992 21:59
113 lines
5864 bytes
  I have been attempting to make what according to the README is libg++
2.1, using gcc 2.3.1, on a Gateway 486 box running Consensys sysV.4
(Double Yuck!).
  This is done without the -O flag: with -O, the compiler apparently
generates multiple instances of labels, which the assembler balks at,
but that is a separate problem.
  After the libg++ make output, I will include a test.cc program that David 
Teague wrote to explore this, and the resulting error messages.
  Note that there is nothing obviously wrong with these include files.

--Jim


tinuviel#cd /usr/local/libg++
tinuviel#make clean
/bin/sh ./config.status
Created "Makefile" in /usr/local/libg++ using "config/mh-sysv4"
./config.status is unchanged

[ STUFF DELETED ]

tinuviel#make all


rootme=`pwd` ; export rootme; CC="gcc `if [ -f ${rootme}/../gcc/gcc ] ; then echo -I${rootme}/../gcc/include ; else echo ; fi`"; export CC; ./utils/gen-params  >tmp-params.h
mv tmp-params.h _G_config.h
gcc -g -nostdinc++ -I.. -I. -I./../iostream -I./../g++-include  -c AllocRing.cc
gcc -g -nostdinc++ -I.. -I. -I./../iostream -I./../g++-include  -c Obstack.cc
gcc -g -nostdinc++ -I.. -I. -I./../iostream -I./../g++-include  -c builtin.cc
gcc -g -nostdinc++ -I.. -I. -I./../iostream -I./../g++-include  -c regex.cc


Everything seems to be ok until here in the make:


gcc -g -nostdinc++ -I.. -I. -I./../iostream -I./../g++-include  -c Regex.cc
Regex.cc: In method `Regex::Regex (const char *, int (=  0 ), int (=  40 ), const char * (=  0 ))':
Regex.cc:52: warning: ANSI C++ forbids implicit conversion from `void *' in assignment
Regex.cc:59: warning: ANSI C++ forbids implicit conversion from `void *' in assignment
gcc -g -nostdinc++ -I.. -I. -I./../iostream -I./../g++-include  -c String.cc
In file included from ./../iostream/iostream.h:25, from ./../iostream/stream.h:7, from ./String.h:26, from String.cc:25:
./../iostream/streambuf.h:359: warning: type specifier omitted for parameter
./../iostream/streambuf.h:359: parse error before `,'
./../iostream/streambuf.h:360: warning: type specifier omitted for parameter
./../iostream/streambuf.h:360: parse error before `)'
In file included from ./../iostream/stream.h:7, from ./String.h:26, from String.cc:25:
./../iostream/iostream.h:60: warning: type specifier omitted for parameter
./../iostream/iostream.h:60: parse error before `)'
./../iostream/iostream.h:152: warning: type specifier omitted for parameter
./../iostream/iostream.h:152: parse error before `)'
./../iostream/iostream.h:225: warning: type specifier omitted for parameter
./../iostream/iostream.h:225: parse error before `)'
./../iostream/iostream.h:247: warning: type specifier omitted for parameter
./../iostream/iostream.h:247: parse error before `)'
./../iostream/iostream.h: In method `class streambuf::istream& iostream::vscan (...)':
./../iostream/iostream.h:226: `format' undeclared (first use this function)
./../iostream/iostream.h:226: (Each undeclared identifier is reported only once
./../iostream/iostream.h:226: for each function it appears in.)
./../iostream/iostream.h:226: `args' undeclared (first use this function)
./../iostream/iostream.h:226: warning: control reaches end of non-void function
./../iostream/iostream.h: In method `class ostream& iostream::vform (...)':
./../iostream/iostream.h:248: `format' undeclared (first use this function)
./../iostream/iostream.h:248: `args' undeclared (first use this function)
./../iostream/iostream.h:248: warning: control reaches end of non-void function
make[2]: *** [String.o] Error 1
make[1]: *** [in-src] Error 1
make: *** [all-libg++] Error 1

tinuviel#./config.status is unchanged
Created "Makefile" in /usr/local/libg++ using "config/mh-sysv4"
./config.status is unchanged
tinuviel#

test.cc:
#include "iostream.h"
struct T
{
   int i = 5;
};

T t;

main ()
{
  cout << t.i << "\n";
}

Here are the results:

In file included from iostream.h:25, from test.cc:1:
streambuf.h:359: warning: type specifier omitted for parameter
streambuf.h:359: parse error before `,'
streambuf.h:360: warning: type specifier omitted for parameter
streambuf.h:360: parse error before `)'
In file included from test.cc:1:
iostream.h:60: warning: type specifier omitted for parameter
iostream.h:60: parse error before `)'
iostream.h:152: warning: type specifier omitted for parameter
iostream.h:152: parse error before `)'
iostream.h:225: warning: type specifier omitted for parameter
iostream.h:225: parse error before `)'
iostream.h:247: warning: type specifier omitted for parameter
iostream.h:247: parse error before `)'
iostream.h: In method `class streambuf::istream& iostream::vscan (...)':
iostream.h:226: `format' undeclared (first use this function)
iostream.h:226: (Each undeclared identifier is reported only once
iostream.h:226: for each function it appears in.)
iostream.h:226: `args' undeclared (first use this function)
iostream.h:226: warning: control reaches end of non-void function
iostream.h: In method `class ostream& iostream::vform (...)':
iostream.h:248: `format' undeclared (first use this function)
iostream.h:248: `args' undeclared (first use this function)
iostream.h:248: warning: control reaches end of non-void function
Thread Navigation

This is a paginated view of messages in the thread with full content displayed inline.

Messages are displayed in chronological order, with the original post highlighted in green.

Use pagination controls to navigate through all messages in large threads.

Back to All Threads