klaus@maxwell.mmwb.ucsf.edu (Klaus Fiebig) (12/05/89)
I'm having a little trouble with initializing constant class arrays while
including <iostream.h>. Cfront 2.0 gives the following error message when
compiling the little program listed below:
-> CC -g test.C
-> "test.C", line 22: internal <<AT&T C++ Translator 2.0 06/30/89>>
error: bus error (or something nasty like that)
-> 1 error
-> *** Error code 1
A listing of the test.C file:
+--------------------------------------------------------------------------
! #include <iostream.h> // If this line is deleted no error occurs.
!
! typedef const int cint;
! cint Z = 6;
! cint P1[Z] = { 0,1,2,3,4,5 }; cint P2[Z] = { 1,2,3,4,5,0 };
! cint P3[Z] = { 2,3,4,5,0,1 }; cint P4[Z] = { 3,4,5,0,1,2 };
! cint P5[Z] = { 4,5,0,1,2,3 }; cint P6[Z] = { 5,0,1,2,3,4 };
!
! cint N1 = 6; cint *PP1[N1] = { P1, P2, P3, P4, P5, P6 };
! cint N2 = 3; cint *PP2[N2] = { P2, P4, P6 };
! cint N3 = 2; cint *PP3[N3] = { P1, P5 };
!
! class foo {
! public:
! cint **t;
! int n;
! foo(cint **tt,int nn) { t=tt; n=nn;};
! ~foo() { };
! };
!
! // Const foo-array initialization: (The next line is line 22)
! const foo test[] = { foo(PP1,N1), foo(PP2,N2), foo(PP3,N3) };
!
! main() { int i = 0; i = i+1; } // Just some scrap
+--------------------------------------------------------------------------
It would be great if any of you gurus out there could tell me what I'm doing
wrong.
--
Klaus Fiebig, Dep. Pharmaceutical Chemistry, UC San Francisco, USA
(ARPA) klaus@maxwell.mmwb.ucsf.edu
(UUCP) /ucbvax.berkeley.edu!maxwell.mmwb.ucsf.edu!klaus
(BITNET) klaus@ucsfccb.BITNET or klaus@ucsfcgl.BITNET
--