Mozart g++ 3.4 fix

Jan van der Vorst janvandervorst at chello.nl
Sat Jan 29 17:53:10 CET 2005


I did some patching on the Mozart sources to get it built with g++ 3.4
I should warn you though: I did nothing more than satisfying the compiler.
Since I don't have a clue about Mozart's internal design (class 
descriptions and hierarchie) I haven't done any functional testing.
However, it builds just fine now.

Included is
(1) all errors I encountered in building Mozart with g++ 3.4.2
(2) the diff to the sources I have made to make the errors go away

Peter got me going ;-)



-------------- next part --------------
Index: platform/emulator/mem.hh
===================================================================
RCS file: /services/mozart/CVS/mozart/platform/emulator/mem.hh,v
retrieving revision 1.94
diff -r1.94 mem.hh
128c128
<  retry:
---
>   while (TRUE)
145c145
<       goto retry;
---
>       continue;
Index: platform/emulator/namer.cc
===================================================================
RCS file: /services/mozart/CVS/mozart/platform/emulator/namer.cc,v
retrieving revision 1.14
diff -r1.14 namer.cc
34c34
< template VarNamer;
---
> template class Namer<OZ_Term, const char *>;
36c36
< VarNamer * VarNamer::_head;
---
> template VarNamer * VarNamer::_head;
98c98
< template PropNamer;
---
> template class Namer<Propagator *, OZ_Term>;
100c100
< PropNamer * PropNamer::_head;
---
> template PropNamer * PropNamer::_head;
Index: platform/emulator/namer.hh
===================================================================
RCS file: /services/mozart/CVS/mozart/platform/emulator/namer.hh,v
retrieving revision 1.8
diff -r1.8 namer.hh
199c199,203
<   
---
> 
> template <class T_INDEX, class T_NAME>
> Namer<T_INDEX, T_NAME> * Namer<T_INDEX, T_NAME>::_head;
> 
> 
Index: platform/emulator/var_ct.hh
===================================================================
RCS file: /services/mozart/CVS/mozart/platform/emulator/var_ct.hh,v
retrieving revision 1.27
diff -r1.27 var_ct.hh
41c41
<   friend OZ_Boolean OZ_CtVar::tell(void);
---
>   friend class OZ_CtVar;
Index: platform/emulator/libfd/complalldist.hh
===================================================================
RCS file: /services/mozart/CVS/mozart/platform/emulator/libfd/complalldist.hh,v
retrieving revision 1.16
diff -r1.16 complalldist.hh
216c216
<   list<T> (list<T> &E) :generic() {
---
>   list<T> (const list<T> &E) :generic() {
Index: platform/emulator/libfd/fdaux.cc
===================================================================
RCS file: /services/mozart/CVS/mozart/platform/emulator/libfd/fdaux.cc,v
retrieving revision 1.12
diff -r1.12 fdaux.cc
31,32c31,32
< template _OZ_ParamIterator<OZ_Return>;
< template PropagatorController_V_V;
---
> template class _OZ_ParamIterator<OZ_Return>;
> template class _PropagatorController_V_V<OZ_Return,OZ_FDIntVar,PROCEED,FAILED,SLEEP>;
Index: platform/emulator/libfd/pel_fncts.hh
===================================================================
RCS file: /services/mozart/CVS/mozart/platform/emulator/libfd/pel_fncts.hh,v
retrieving revision 1.11
diff -r1.11 pel_fncts.hh
75a76,78
>   using PEL_LessEqOffset<ENGINE,FDVAR,PFDVAR>::_y;
>   using PEL_LessEqOffset<ENGINE,FDVAR,PFDVAR>::_x;
>   using PEL_LessEqOffset<ENGINE,FDVAR,PFDVAR>::_c;
Index: platform/emulator/libfd/pel_internal.hh
===================================================================
RCS file: /services/mozart/CVS/mozart/platform/emulator/libfd/pel_internal.hh,v
retrieving revision 1.7
diff -r1.7 pel_internal.hh
88a89
>   using M::alloc;
145a147,148
>   using EnlargeableArrayWithBase<T,M>::_array;
>   using EnlargeableArrayWithBase<T,M>::request;
166a170,171
>   using EnlargeableArrayWithBase<T,M>::_array;
>   using EnlargeableArrayWithBase<T,M>::_size;
Index: platform/emulator/libfd/scheduling.cc
===================================================================
RCS file: /services/mozart/CVS/mozart/platform/emulator/libfd/scheduling.cc,v
retrieving revision 1.42
diff -r1.42 scheduling.cc
35c35
< template PropagatorController_V_V;
---
> template class _PropagatorController_V_V<OZ_Return,OZ_FDIntVar,PROCEED,FAILED,SLEEP>;
Index: platform/emulator/libfset/fsaux.cc
===================================================================
RCS file: /services/mozart/CVS/mozart/platform/emulator/libfset/fsaux.cc,v
retrieving revision 1.19
diff -r1.19 fsaux.cc
31c31
< template _OZ_ParamIterator<OZ_Return>;
---
> template class _OZ_ParamIterator<OZ_Return>;
-------------- next part --------------
c++ -DHAVE_CONFIG_H -I. -I/home/jan/prog/mozart/platform/emulator  -DSITE_PROPERTY -fno-exceptions  -fno-implicit-templates -O3 -pipe -fno-strict-aliasing -march=pentium -mcpu=pentiumpro -fomit-frame-pointer     -c -o var_base.o /home/jan/prog/mozart/platform/emulator/var_base.cc
In file included from /home/jan/prog/mozart/platform/emulator/var_base.cc:41:
/home/jan/prog/mozart/platform/emulator/mozart_cpi.hh:1217: error: `OZ_Boolean OZ_CtVar::tell()' is private
/home/jan/prog/mozart/platform/emulator/var_ct.hh:41: error: within this context
gmake[2]: *** [var_base.o] Error 1
gmake[2]: Leaving directory `/home/jan/prog/build/platform/emulator'
gmake[1]: *** [bootstrap] Error 1
gmake[1]: Leaving directory `/home/jan/prog/build/platform'
make: *** [bootstrap] Error 1

Compilation exited abnormally with code 2 at Sat Jan 29 13:03:11

c++ -DHAVE_CONFIG_H -I. -I/home/jan/prog/mozart/platform/emulator  -DSITE_PROPERTY -fno-exceptions  -fno-implicit-templates -O3 -pipe -fno-strict-aliasing -march=pentium -mcpu=pentiumpro -fomit-frame-pointer     -c -o namer.o /home/jan/prog/mozart/platform/emulator/namer.cc
/home/jan/prog/mozart/platform/emulator/namer.cc:34: error: expected unqualified-id before ';' token
/home/jan/prog/mozart/platform/emulator/namer.cc:36: error: too few template-parameter-lists
/home/jan/prog/mozart/platform/emulator/namer.cc:98: error: expected unqualified-id before ';' token
/home/jan/prog/mozart/platform/emulator/namer.cc:100: error: too few template-parameter-lists
gmake[2]: *** [namer.o] Error 1
gmake[2]: Leaving directory `/home/jan/prog/build/platform/emulator'
gmake[1]: *** [bootstrap] Error 1
gmake[1]: Leaving directory `/home/jan/prog/build/platform'
make: *** [bootstrap] Error 1

Compilation exited abnormally with code 2 at Sat Jan 29 16:19:44

c++ -DHAVE_CONFIG_H -I. -I/home/jan/prog/mozart/platform/emulator  -DSITE_PROPERTY -fno-exceptions  -fno-implicit-templates -O3 -pipe -fno-strict-aliasing -march=pentium -mcpu=pentiumpro -fomit-frame-pointer     -c -o namer.o /home/jan/prog/mozart/platform/emulator/namer.cc
/home/jan/prog/mozart/platform/emulator/namer.cc: In instantiation of `Namer<OZ_Term, const char*>*Namer<OZ_Term, const char*>::_head':
/home/jan/prog/mozart/platform/emulator/namer.cc:34:   instantiated from here
/home/jan/prog/mozart/platform/emulator/namer.cc:34: error: explicit instantiation of `Namer<OZ_Term, const char*>::_head' but no definition available
/home/jan/prog/mozart/platform/emulator/namer.cc: In instantiation of `Namer<Propagator*, OZ_Term>*Namer<Propagator*, OZ_Term>::_head':
/home/jan/prog/mozart/platform/emulator/namer.cc:98:   instantiated from here
/home/jan/prog/mozart/platform/emulator/namer.cc:98: error: explicit instantiation of `Namer<Propagator*, OZ_Term>::_head' but no definition available
/home/jan/prog/mozart/platform/emulator/namer.cc: In instantiation of `Namer<OZ_Term, const char*>*Namer<OZ_Term, const char*>::_head':
/home/jan/prog/mozart/platform/emulator/namer.cc:34:   instantiated from here
/home/jan/prog/mozart/platform/emulator/namer.cc:34: error: explicit instantiation of `Namer<OZ_Term, const char*>::_head' but no definition available
/home/jan/prog/mozart/platform/emulator/namer.cc: In instantiation of `Namer<Propagator*, OZ_Term>*Namer<Propagator*, OZ_Term>::_head':
/home/jan/prog/mozart/platform/emulator/namer.cc:98:   instantiated from here
/home/jan/prog/mozart/platform/emulator/namer.cc:98: error: explicit instantiation of `Namer<Propagator*, OZ_Term>::_head' but no definition available
/home/jan/prog/mozart/platform/emulator/namer.cc: In instantiation of `Namer<OZ_Term, const char*>*Namer<OZ_Term, const char*>::_head':
/home/jan/prog/mozart/platform/emulator/namer.cc:34:   instantiated from here
/home/jan/prog/mozart/platform/emulator/namer.cc:34: error: explicit instantiation of `Namer<OZ_Term, const char*>::_head' but no definition available
/home/jan/prog/mozart/platform/emulator/namer.cc: In instantiation of `Namer<Propagator*, OZ_Term>*Namer<Propagator*, OZ_Term>::_head':
/home/jan/prog/mozart/platform/emulator/namer.cc:98:   instantiated from here
/home/jan/prog/mozart/platform/emulator/namer.cc:98: error: explicit instantiation of `Namer<Propagator*, OZ_Term>::_head' but no definition available
/home/jan/prog/mozart/platform/emulator/namer.cc: In instantiation of `Namer<OZ_Term, const char*>*Namer<OZ_Term, const char*>::_head':
/home/jan/prog/mozart/platform/emulator/namer.cc:34:   instantiated from here
/home/jan/prog/mozart/platform/emulator/namer.cc:34: error: explicit instantiation of `Namer<OZ_Term, const char*>::_head' but no definition available
/home/jan/prog/mozart/platform/emulator/namer.cc: In instantiation of `Namer<Propagator*, OZ_Term>*Namer<Propagator*, OZ_Term>::_head':
/home/jan/prog/mozart/platform/emulator/namer.cc:98:   instantiated from here
/home/jan/prog/mozart/platform/emulator/namer.cc:98: error: explicit instantiation of `Namer<Propagator*, OZ_Term>::_head' but no definition available
gmake[2]: *** [namer.o] Error 1
gmake[2]: Leaving directory `/home/jan/prog/build/platform/emulator'
gmake[1]: *** [bootstrap] Error 1
gmake[1]: Leaving directory `/home/jan/prog/build/platform'
make: *** [bootstrap] Error 1

Compilation exited abnormally with code 2 at Sat Jan 29 16:34:45

c++ -DHAVE_CONFIG_H -I. -I/home/jan/prog/mozart/platform/emulator  -DSITE_PROPERTY -fno-exceptions  -fno-implicit-templates -O3 -pipe -fno-strict-aliasing -march=pentium -mcpu=pentiumpro -fomit-frame-pointer     -c -o cpi_ct.o /home/jan/prog/mozart/platform/emulator/cpi_ct.cc
/home/jan/prog/mozart/platform/emulator/var_ct.hh: In member function `OZ_Boolean OZ_CtVar::tell()':
/home/jan/prog/mozart/platform/emulator/var_ct.hh:58: error: `void OzCtVariable::propagate(OZ_CtWakeUp, PropCaller)' is private
/home/jan/prog/mozart/platform/emulator/cpi_ct.cc:281: error: within this context
/home/jan/prog/mozart/platform/emulator/var_ct.hh:58: error: `void OzCtVariable::propagate(OZ_CtWakeUp, PropCaller)' is private
/home/jan/prog/mozart/platform/emulator/cpi_ct.cc:289: error: within this context
/home/jan/prog/mozart/platform/emulator/var_ct.hh:58: error: `void OzCtVariable::propagate(OZ_CtWakeUp, PropCaller)' is private
/home/jan/prog/mozart/platform/emulator/cpi_ct.cc:299: error: within this context
gmake[2]: *** [cpi_ct.o] Error 1
gmake[2]: Leaving directory `/home/jan/prog/build/platform/emulator'
gmake[1]: *** [bootstrap] Error 1
gmake[1]: Leaving directory `/home/jan/prog/build/platform'
make: *** [bootstrap] Error 1

Compilation exited abnormally with code 2 at Sat Jan 29 16:45:59

c++ -DHAVE_CONFIG_H -I. -I/home/jan/prog/mozart/platform/emulator  -DSITE_PROPERTY -fno-exceptions  -fno-implicit-templates -O3 -pipe -fno-strict-aliasing -march=pentium -mcpu=pentiumpro -fomit-frame-pointer     -c -o var_of.o /home/jan/prog/mozart/platform/emulator/var_of.cc
/home/jan/prog/mozart/platform/emulator/mem.hh: In member function `TaggedRef OzOFVariable::getArityList()':
/home/jan/prog/mozart/platform/emulator/mem.hh:145: error: jump to `retry' invalidly jumps into binding contour
gmake[2]: *** [var_of.o] Error 1
gmake[2]: Leaving directory `/home/jan/prog/build/platform/emulator'
gmake[1]: *** [bootstrap] Error 1
gmake[1]: Leaving directory `/home/jan/prog/build/platform'
make: *** [bootstrap] Error 1

Compilation exited abnormally with code 2 at Sat Jan 29 16:52:00

c++ -DHAVE_CONFIG_H -I/home/jan/prog/mozart/platform/emulator/libfd -I. -I/home/jan/prog/mozart/platform/emulator/libfd/.. -I..  -DSITE_PROPERTY -fno-exceptions  -fno-implicit-templates -O3 -pipe -fno-strict-aliasing -march=pentium -mcpu=pentiumpro -fomit-frame-pointer     -fpic -c -o scheduling.lo.o /home/jan/prog/mozart/platform/emulator/libfd/scheduling.cc && mv scheduling.lo.o scheduling.lo
/home/jan/prog/mozart/platform/emulator/libfd/scheduling.cc:35: error: expected unqualified-id before ';' token
gmake[3]: *** [scheduling.lo] Error 1
gmake[3]: Leaving directory `/home/jan/prog/build/platform/emulator/libfd'
gmake[2]: *** [Schedule.so-linux-i486] Error 2
gmake[2]: Leaving directory `/home/jan/prog/build/platform/emulator'
gmake[1]: *** [bootstrap] Error 1
gmake[1]: Leaving directory `/home/jan/prog/build/platform'
make: *** [bootstrap] Error 1

Compilation exited abnormally with code 2 at Sat Jan 29 17:00:45

c++ -DHAVE_CONFIG_H -I/home/jan/prog/mozart/platform/emulator/libfd -I. -I/home/jan/prog/mozart/platform/emulator/libfd/.. -I..  -DSITE_PROPERTY -fno-exceptions  -fno-implicit-templates -O3 -pipe -fno-strict-aliasing -march=pentium -mcpu=pentiumpro -fomit-frame-pointer     -fpic -c -o fdaux.lo.o /home/jan/prog/mozart/platform/emulator/libfd/fdaux.cc && mv fdaux.lo.o fdaux.lo
/home/jan/prog/mozart/platform/emulator/libfd/fdaux.cc:31: error: expected unqualified-id before ';' token
/home/jan/prog/mozart/platform/emulator/libfd/fdaux.cc:32: error: expected unqualified-id before ';' token
gmake[3]: *** [fdaux.lo] Error 1
gmake[3]: Leaving directory `/home/jan/prog/build/platform/emulator/libfd'
gmake[2]: *** [FDP.so-linux-i486] Error 2
gmake[2]: Leaving directory `/home/jan/prog/build/platform/emulator'
gmake[1]: *** [bootstrap] Error 1
gmake[1]: Leaving directory `/home/jan/prog/build/platform'
make: *** [bootstrap] Error 1

Compilation exited abnormally with code 2 at Sat Jan 29 17:02:55
c++ -DHAVE_CONFIG_H -I/home/jan/prog/mozart/platform/emulator/libfd -I. -I/home/jan/prog/mozart/platform/emulator/libfd/.. -I..  -DSITE_PROPERTY -fno-exceptions  -fno-implicit-templates -O3 -pipe -fno-strict-aliasing -march=pentium -mcpu=pentiumpro -fomit-frame-pointer     -fpic -c -o pel_fncts.lo.o /home/jan/prog/mozart/platform/emulator/libfd/pel_fncts.cc && mv pel_fncts.lo.o pel_fncts.lo
In file included from /home/jan/prog/mozart/platform/emulator/libfd/pel_engine.hh:30,
                 from /home/jan/prog/mozart/platform/emulator/libfd/pel_fncts.hh:30,
                 from /home/jan/prog/mozart/platform/emulator/libfd/pel_fncts.cc:29:
/home/jan/prog/mozart/platform/emulator/libfd/pel_internal.hh: In member function `virtual void EnlargeableArrayWithBase<T, M>::_gCollect()':
/home/jan/prog/mozart/platform/emulator/libfd/pel_internal.hh:91: error: there are no arguments to `alloc' that depend on a template parameter, so a declaration of `alloc' must be available
/home/jan/prog/mozart/platform/emulator/libfd/pel_internal.hh:91: error: (if you use `-fpermissive', G++ will accept your code, but allowing the use of an undeclared name is deprecated)
/home/jan/prog/mozart/platform/emulator/libfd/pel_internal.hh: In member function `virtual void EnlargeableArrayWithBase<T, M>::_sClone()':
/home/jan/prog/mozart/platform/emulator/libfd/pel_internal.hh:98: error: there are no arguments to `alloc' that depend on a template parameter, so a declaration of `alloc' must be available
/home/jan/prog/mozart/platform/emulator/libfd/pel_internal.hh: In member function `T* EnlargeableArrayWithBase<T, M>::realloc(T*, int, int)':
/home/jan/prog/mozart/platform/emulator/libfd/pel_internal.hh:110: error: there are no arguments to `alloc' that depend on a template parameter, so a declaration of `alloc' must be available
/home/jan/prog/mozart/platform/emulator/libfd/pel_internal.hh: In constructor `EnlargeableArrayWithBase<T, M>::EnlargeableArrayWithBase(int)':
/home/jan/prog/mozart/platform/emulator/libfd/pel_internal.hh:134: error: there are no arguments to `alloc' that depend on a template parameter, so a declaration of `alloc' must be available
/home/jan/prog/mozart/platform/emulator/libfd/pel_internal.hh: In member function `int PushArray<T, M>::push(T&)':
/home/jan/prog/mozart/platform/emulator/libfd/pel_internal.hh:151: error: `_array' undeclared (first use this function)
/home/jan/prog/mozart/platform/emulator/libfd/pel_internal.hh:151: error: (Each undeclared identifier is reported only once for each function it appears in.)
/home/jan/prog/mozart/platform/emulator/libfd/pel_internal.hh:153: error: there are no arguments to `request' that depend on a template parameter, so a declaration of `request' must be available
/home/jan/prog/mozart/platform/emulator/libfd/pel_internal.hh: In member function `void ResizeableArray<T, M>::resize(int)':
/home/jan/prog/mozart/platform/emulator/libfd/pel_internal.hh:171: error: `_size' undeclared (first use this function)
/home/jan/prog/mozart/platform/emulator/libfd/pel_internal.hh:172: error: `_array' undeclared (first use this function)
/home/jan/prog/mozart/platform/emulator/libfd/pel_internal.hh: In member function `void ResizeableArray<T, M>::reset()':
/home/jan/prog/mozart/platform/emulator/libfd/pel_internal.hh:177: error: `_size' undeclared (first use this function)
In file included from /home/jan/prog/mozart/platform/emulator/libfd/pel_fncts.cc:29:
/home/jan/prog/mozart/platform/emulator/libfd/pel_fncts.hh: In member function `void PEL_GreaterOffset<ENGINE, FDVAR, PFDVAR>::print(ENGINE&)':
/home/jan/prog/mozart/platform/emulator/libfd/pel_fncts.hh:89: error: `_y' undeclared (first use this function)
/home/jan/prog/mozart/platform/emulator/libfd/pel_fncts.hh:89: error: `_c' undeclared (first use this function)
/home/jan/prog/mozart/platform/emulator/libfd/pel_fncts.hh:90: error: `_x' undeclared (first use this function)
gmake[3]: *** [pel_fncts.lo] Error 1
gmake[3]: Leaving directory `/home/jan/prog/build/platform/emulator/libfd'
gmake[2]: *** [FDP.so-linux-i486] Error 2
gmake[2]: Leaving directory `/home/jan/prog/build/platform/emulator'
gmake[1]: *** [bootstrap] Error 1
gmake[1]: Leaving directory `/home/jan/prog/build/platform'
make: *** [bootstrap] Error 1

Compilation exited abnormally with code 2 at Sat Jan 29 17:03:45

c++ -DHAVE_CONFIG_H -I/home/jan/prog/mozart/platform/emulator/libfd -I. -I/home/jan/prog/mozart/platform/emulator/libfd/.. -I..  -DSITE_PROPERTY -fno-exceptions  -fno-implicit-templates -O3 -pipe -fno-strict-aliasing -march=pentium -mcpu=pentiumpro -fomit-frame-pointer     -fpic -c -o complalldist.lo.o /home/jan/prog/mozart/platform/emulator/libfd/complalldist.cc && mv complalldist.lo.o complalldist.lo
/home/jan/prog/mozart/platform/emulator/libfd/complalldist.cc: In member function `OZ_Return CompleteAllDistProp::xpropagate()':
/home/jan/prog/mozart/platform/emulator/libfd/complalldist.cc:434: error: no matching function for call to `list<edge_struct*>::list(list<edge_struct*>)'
/home/jan/prog/mozart/platform/emulator/libfd/complalldist.hh:216: note: candidates are: list<T>::list(list<T>&) [with T = edge_struct*]
gmake[3]: *** [complalldist.lo] Error 1
gmake[3]: Leaving directory `/home/jan/prog/build/platform/emulator/libfd'
gmake[2]: *** [FDP.so-linux-i486] Error 2
gmake[2]: Leaving directory `/home/jan/prog/build/platform/emulator'
gmake[1]: *** [bootstrap] Error 1
gmake[1]: Leaving directory `/home/jan/prog/build/platform'
make: *** [bootstrap] Error 1

Compilation exited abnormally with code 2 at Sat Jan 29 17:08:39

c++ -DHAVE_CONFIG_H -I/home/jan/prog/mozart/platform/emulator/libfset -I. -I/home/jan/prog/mozart/platform/emulator/libfset/.. -I..  -DSITE_PROPERTY -fno-exceptions  -fno-implicit-templates -O3 -pipe -fno-strict-aliasing -march=pentium -mcpu=pentiumpro -fomit-frame-pointer     -fpic -c -o fsaux.lo.o /home/jan/prog/mozart/platform/emulator/libfset/fsaux.cc && mv fsaux.lo.o fsaux.lo
/home/jan/prog/mozart/platform/emulator/libfset/fsaux.cc:31: error: expected unqualified-id before ';' token
gmake[3]: *** [fsaux.lo] Error 1
gmake[3]: Leaving directory `/home/jan/prog/build/platform/emulator/libfset'
gmake[2]: *** [FSP.so-linux-i486] Error 2
gmake[2]: Leaving directory `/home/jan/prog/build/platform/emulator'
gmake[1]: *** [bootstrap] Error 1
gmake[1]: Leaving directory `/home/jan/prog/build/platform'
make: *** [bootstrap] Error 1

Compilation exited abnormally with code 2 at Sat Jan 29 17:10:12



More information about the mozart-users mailing list