Thread View: gnu.g++.bug
1 messages
1 total messages
Started by "Karl Berry."
Mon, 26 Sep 1988 00:09
passing constructor arguments back in G++ 1.27.0
Author: "Karl Berry."
Date: Mon, 26 Sep 1988 00:09
Date: Mon, 26 Sep 1988 00:09
54 lines
2202 bytes
2202 bytes
This is on a Sun 3 machine, running Sun OS 3.4.
1) A printf statement in parse.y prints something like `State is nn, input
token number is nnn.' for every syntax error. This is not very nice.
2) The real problem:
passing arguments to a base class constructor doesn't seem to work if the
derived constructor is defined in the class definition. (Or maybe the problem
is something entirely different.) In any case, the definitions:
struct base {
base* next;
base(base* p) { next = p; }
};
class derived :base {
derived(int i) :(0) { v = i; }
private:
int v;
};
compile without complaint under AT&T C++, and GNU C++ gives the following
results:
% g++ -g -v -c x.cc
g++ version 1.27.0
/usr/local/gnu/lib/gcc-cpp+ -v -undef -D__GNU__ -D__GNUG__ -Dmc68000 -Dsun -Dunix x.cc /tmp/cca00699.cpp
GNU CPP version 1.27.0
/usr/local/gnu/lib/gcc-c++ /tmp/cca00699.cpp -quiet -dumpbase x.cc -noreg -version -G -o /tmp/cca00699.s
GNU C++ version 1.27.0 (68k, MIT syntax) compiled by GNU C version 1.28.
At top level:
x.cc:9: parse error before `private'
State is 51, input token number is 287.
x.cc:9: cannot open file parse.output
In function struct derived *derived::derived (int):
x.cc:8: parse error before `0'
State is 50, input token number is 263.
x.cc:8: cannot open file parse.output
x.cc:8: undeclared variable `i' (first use here)
x.cc:8: prior parameter's size depends on `$this'
x.cc:8: prior parameter's size depends on `$this'
x.cc:8: Segmentation violation
g++: Program c++ got fatal signal 11.
It makes no difference if the base is a class or a struct.
(That is, if `struct base' is replaced by `class base', and `:base'
is changed to `:public base', the results are the same.)
karl@umb.edu ...!harvard!umb!karl
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