- To: Jean Zaidan <jeanz at cae dot ca>
- Subject: Re: g77 data.c:987: failed assertion
- From: Toon Moene <toon at moene dot indiv dot nluug dot nl>
- Date: Sun, 06 Feb 2000 20:20:03 +0100
- Organization: Moene Computational Physics, Maartensdijk, The Netherlands
- References: <C49F4AC93378D3118E81009027B0FF3A7D71C5@caemsx02.cae.ca>
Jean Zaidan wrote:
> I encountered troubles when running g77 on Redhat 6.1 PC version.
>
> The following is an output of my attempt of compiling fortan code (try.f
> listed below) using
> g77 try.f :
>
> data.c:987: failed assertion `ffeinfo_kindtype (ffebld_info (subscript)) ==
> FFEINFO_kindtypeINTEGER1'
> f77: Internal compiler error: program f771 got fatal signal 6
> Fortran Code ( try.f ):
> ===============
> INTEGER*1 DF_DEC, NUM_DFS
> DATA
> . VTB(1,DF_DEC) /T/ , VTB(2,DF_DEC) /T/
> Can anyone help?
Apparently, the Fortran Frontend dies when it discovers that the type of
the indexing PARAMETERs (named constants for C freaks) is not "default
integer" (that's what the assertion error says).
Of course, there's nothing specifically wrong with doing the indexing
this way (it is non-standard, because INTEGER*1 is non-standard, but
INTEGER*1 _is_ supported in other contexts). Hence, for all clarity:
this _is_ a compiler bug.
You can get this example working by removing the "*1" on the INTEGER*1
declaration of DF_DEC and NUM_DFS.
Hope this helps,
--
Toon Moene (toon@moene.indiv.nluug.nl)
Saturnushof 14, 3738 XG Maartensdijk, The Netherlands
Phone: +31 346 214290; Fax: +31 346 214286
GNU Fortran: http://gcc.gnu.org/onlinedocs/g77_news.html