[spam?#] RE: [Insight-developers] gcc 3.3.1 causing problems with itk::FEM LinearSystemWrapperItpack

Kent Williams norman-k-williams at uiowa . edu
Fri, 29 Aug 2003 11:32:57 -0500


I don't have a fix; for one thing, f2c.h defines integer this way

typedef long int integer;

And all the FEM headers in ITK define it as

typedef int integer;

which cause a problem where ever you include both the FEM headers and f2c=
=2Eh.

I tried changing the typedef in the FEM headers to long int, and that cau=
sed a=20
different set of compiler errors because of mismatches all over the place=
=2E

On Friday 29 August 2003 11:00 am, Lorensen, William E (Research) wrote:
> Sounds like the code should be fixed. Have you tried your changes local=
ly?
> If they work, send Brad the changes.
>
> Bill
>
> -----Original Message-----
> From: Kent Williams [mailto:norman-k-williams at uiowa . edu]
> Sent: Friday, August 29, 2003 11:37 AM
> To: Insight Developers List; hans johnson
> Subject: [Insight-developers] gcc 3.3.1 causing problems with
> itk::FEMLinearSystemWrapperItpack
>
>
> 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 wit=
h
> itkFEMLinearSystemWrapperItpack.cxx, specifically with initializing the
> m_Methods member data.  The compiler error is
>
>
> .../Insight/Code/Numerics/FEM/itkFEMLinearSystemWrapperItpack.cxx:36:
> error:
>
> invalid
>    conversion from `int (*)(integer*, integer*, integer*, doublereal*,
>    doublereal*, doublereal*, integer*, integer*, doublereal*, integer*,
>    doublereal*, integer*)' to `int (*)(int*, int*, int*, double*, doubl=
e*,
>    double*, int*, int*, double*, int*, double*, int*)'
>
> I think I know what's going on -- in the latest revision, the f2c typed=
efs
> for
> integer and doublereal were copied from f2c.h into
> itkFEMLinearSystemWrapperItPack, so that f2c.h is only included in the =
=2Ecxx
> file, and not the .h file.
>
> A laudible goal, but apparently gcc 3.3.1 thinks the typedefs inside th=
e
> itk::LinearSystemWrapperItpack define a different type than the typedef=
s in
> 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 ha=
ndle
> the type issues?
>
>
> _______________________________________________
> Insight-developers mailing list
> Insight-developers at itk . org
> http://www . itk . org/mailman/listinfo/insight-developers
> _______________________________________________
> Insight-developers mailing list
> Insight-developers at itk . org
> http://www . itk . org/mailman/listinfo/insight-developers