Path: utzoo!utgpu!watmath!uunet!labrea!agate!ucbvax!ucsd!orion.cf.uci.edu!oberon!sargas.usc.edu!tli From: tli@sargas.usc.edu (Tony Li) Newsgroups: gnu.g++.bug Subject: Possible libg++ bug. Message-ID: <14924@oberon.USC.EDU> Date: 25 Jan 89 23:17:23 GMT References: <8901252028.AA10350@riunite.aca.mcc.com> Sender: news@oberon.USC.EDU Reply-To: tli@sargas.usc.edu (Tony Li) Distribution: gnu Organization: University of Southern California, Los Angeles, CA Lines: 38 Configuration: g++ 1.32, sun4-os4, libg++ 1.25 compiled with g++ 1.32 The following program generates garbage. It works fine on Sun 3's. ---------------------------------------------------------------------- #include class vector { protected: double *v; int sz; public: vector(int size) { sz = size; v = new double [sz]; } vector(const vector& vv) { sz = vv.size(); v = new double [sz]; for (int i = 0; i < sz; i ++) v[i] = vv[i]; } ~vector() { delete v; } double& operator[](int i) { return v[i]; } int& size(void) { return sz; } }; ostream& operator<<(ostream& s, const vector& v) { for (int i = 0; i < v.size(); i ++) s << v[i] << "\t"; return (s << "\n"); } main () { vector v(3); v[0] = 1.0; v[1] = 2.0; v[2] = 3.0; cout << v; } Tony Li - USC University Computing Services - Dain Bramaged. Uucp: oberon!tli Bitnet: tli@kylara, tli@ramoth Internet: tli@sargas.usc.edu