[Insight-developers] gcc 3.3.1 causing problems with itk::FEMLinearSystemWrapperItpack

Kent Williams norman-k-williams at uiowa . edu
Fri, 29 Aug 2003 10:37:01 -0500


I know that people are busy with the whole lockdown thing, but ...

I recently built gcc 3.3.1 on Linux, and it is having some problems with=20
itkFEMLinearSystemWrapperItpack.cxx, specifically with initializing the=20
m_Methods member data.  The compiler error is


=2E../Insight/Code/Numerics/FEM/itkFEMLinearSystemWrapperItpack.cxx:36: e=
rror:=20
invalid
   conversion from `int (*)(integer*, integer*, integer*, doublereal*,=20
   doublereal*, doublereal*, integer*, integer*, doublereal*, integer*,=20
   doublereal*, integer*)' to `int (*)(int*, int*, int*, double*, double*=
,=20
   double*, int*, int*, double*, int*, double*, int*)'

I think I know what's going on -- in the latest revision, the f2c typedef=
s for=20
integer and doublereal were copied from f2c.h into=20
itkFEMLinearSystemWrapperItPack, so that f2c.h is only included in the .c=
xx=20
file, and not the .h file.

A laudible goal, but apparently gcc 3.3.1 thinks the typedefs inside the=20
itk::LinearSystemWrapperItpack define a different type than the typedefs =
in=20
f2c.h, so the function signatures don't match.

So is the solution to NOT use gcc 3.3.1, or is there a better way to hand=
le=20
the type issues?