This is the mail archive of the gcc-help@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

internal compiler error


hello,
i converted some files of my project from fixed-format (.f77) to free-format (.f90) and divided the code into some subroutines.
Unfortunately now, there occurs a problem and i dont know how to solve:

gfortran -x f95-cpp-input -ffast-math -m64 -w -O2 -frecord-marker=4  -DtwoD -UnoTecplotLib -Dturbvel -Dcaa -Dpurser -Dpartini -Dsweeping -Dltble -Dfiltering -c ../MainSubs/PianoInterface.f90 2>&1 |tee PianoInterface.err
../MainSubs/PianoInterface.f90: In function ?initpiano?:
../MainSubs/PianoInterface.f90:494: internal compiler error: in gfc_conv_function_val, at fortran/trans-expr.c:1177
Please submit a full bug report,
with preprocessed source if appropriate.
See <URL:http://bugs.opensuse.org> for instructions.

Here is an extract from my code(../MainSubs/PianoInterface.f90): (lines 458-498)




-----------------------------------------------------------------------
!---- get necessary information from logic file and ...
!=======================================================================
      call ReadLogic(Fil%Log, GlobDirLast, SegMap)
      write(PipOut, 401) &
#ifdef parallel
     &                   'Processor', MyCPU, ': ', &
#endif
     &                   'logic read in and distributed ...'
      call Wait

!-----------------------------------------------------------------------
!---- ... distributes the work
!=======================================================================
      call Distribute(DirIn//Fil%Proc, Box2Process, Glob2Local, &
     &                Loc2Global, MaxBox, GlobMaxBox, DirLast, &
     &                GlobDirLast)
      write(PipOut, 401) &
#ifdef parallel
     &                   'Processor', MyCPU, ': ', &
#endif
     &                   'all blocks are distributed ...'
      call Wait   

!-----------------------------------------------------------------------
!---- checks all readed parameters for consistency
!=======================================================================
      call CheckPara(SrcPeriod, dtSource, thermo, &
     &               NoInit, Init, AreaVar, MicsVar, NoDamp, Damp, &
     &               NoCirc, Circles, NoSrcFile, RPMpara, sponge, SBT)

      write(PipOut, 401) &
#ifdef parallel
     &                   'Processor', MyCPU, ': ', &
#endif
     &                   'check of parameters passed ...'
      call Wait      !!!!!!!!!!(THIS IS LINE 494!!!!!!)!!!!!

!---- detect type of running machine and initialize parameters in C-world
!-----------------------------------------------------------------------
      box = TestMachine(Dim, FormInt, FormFlt, FormDbl, zero,Debug%Read)



It seems to be a bit arbitrary, because the two times the fuction wait is called before, it works.
I use "GNU Fortran 95 (GCC) 4.1.2 20070115 (SUSE Linux)" and "x86_64 GNU/Linux".
Hopefully this is the correct mailing-list and you know how to solve the problem.

Thank you in advance
Malte Mauelshagen

-----------------------------------------------------------------------------
German Aerospace Center (DLR)
Member of the Helmholtz-Association
Institute of Aerodynamics and Flow Technology


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]