Article View: gnu.g++.bug
Article #1312.1 bug - bad error and loops - sun4/4.1.2
From: Robert Collins
Date: Thu, 09 Apr 1992 19:15
Date: Thu, 09 Apr 1992 19:15
59 lines
2587 bytes
2587 bytes
configure sun4 on sun4/330 running SunOS4.1.2.
This is a pared down version of some code that I (and previous versions
of g++) think is correct. 2.1 loops, generating an incorrect error
message. For some reason, it loses its mind about the CM_geometry
class. I am very anxious for a fix, if someone happens upon the
bug.
Thanks,
rob collins
rjc@cs.ucla.edu
1 castor/cm++ $ cat foo.cc
typedef int CM_geometry_id_t;
typedef int CM_vp_set_id_t;
class CM_vp_set;
class CM_geometry {
public:
CM_geometry(const CM_geometry&);
operator CM_geometry_id_t() const;
};
class CM_storage {
public:
CM_storage(const CM_vp_set* vp, const unsigned max = 64);
};
class CM_vp_set : public CM_geometry, public CM_storage {
const CM_vp_set_id_t the_vp_set_id_t;
public:
CM_vp_set(const CM_geometry& g,
const CM_vp_set_id_t v,
const unsigned max = 64);
};
CM_vp_set::CM_vp_set(const CM_geometry& g,
const CM_vp_set_id_t v,
const unsigned max) :
CM_geometry(g),
CM_storage(this, max),
the_vp_set_id_t(v)
{
}
2 castor/cm++ $ gcc -v foo.cc
Reading specs from /usr/local/gnu/lib/gcc-lib/sun4/2.1/specs
gcc version 2.1
/usr/local/gnu/lib/gcc-lib/sun4/2.1/cpp -lang-c++ -v -undef -D__GNUC__=2 -D__GNUG__=2 -D__cplusplus -Dsparc -Dsun -Dunix -D__sparc__ -D__sun__ -D__unix__ -D__sparc -D__sun -D__unix foo.cc /usr/tmp/cca06276.i
GNU CPP version 2.1 (sparc)
/usr/local/gnu/lib/gcc-lib/sun4/2.1/cc1plus /usr/tmp/cca06276.i -quiet -dumpbase foo.cc -version -o /usr/tmp/cca06276.s
GNU C++ version 2.1 (sparc) compiled by GNU C version 2.0.
foo.cc: In method `CM_vp_set::CM_vp_set (const class CM_geometry&, int, unsigned int (= 64 ))':
foo.cc:30: bad argument 0 for function `CM_geometry::CM_geometry (const class CM_geometry&)' (type was int )
foo.cc:30: in conversion to type `CM_geometry'
foo.cc:30: bad argument 0 for function `CM_geometry::CM_geometry (const class CM_geometry&)' (type was int )
foo.cc:30: in conversion to type `CM_geometry'
foo.cc:30: bad argument 0 for function `CM_geometry::CM_geometry (const class CM_geometry&)' (type was int )
[ killed with ^C ]
Technical Details
Message-ID:
<9204091915.AA06296@castor.cognet.ucla.edu>Path:
arc1-ca.pugleaf.net!sparky!uunet!cis.ohio-state.edu!cognet.ucla.edu!rjcShow Full Headers
Complete Article Headers
Newsgroups: gnu.g++.bug Path: arc1-ca.pugleaf.net!sparky!uunet!cis.ohio-state.edu!cognet.ucla.edu!rjc From: rjc@cognet.ucla.edu (Robert Collins) Subject: 2.1 bug - bad error and loops - sun4/4.1.2 Message-ID: <9204091915.AA06296@castor.cognet.ucla.edu> Sender: gnulists@ai.mit.edu Organization: GNUs Not Usenet Distribution: gnu Date: Thu, 9 Apr 1992 19:15:43 GMT Approved: bug-g++@prep.ai.mit.edu Lines: 60