霍勒瑞斯转换

时间:2017-08-14 07:01:14

标签: compiler-errors fortran gfortran

我正在尝试编译一些非常旧的Fortran(Fortran66)代码并遇到一些问题,我希望有人可以评论或帮助我解决错误。特别是,这个旧代码使用了大量的Hollerith常量(是的......它真的是旧代码)用于文本/字符。不用说,我收到一些警告信息,代码无法编译。编辑尝试将其更改为更现代的文本声明几乎是不可能的,因为我只是不确定哪些代码会破坏。

我不是这方面的专家,所以不知道如何解决这个问题。我很感激一些建议。

以下是样本声明声明

  IMPLICIT REAL*8 (A-H,O-Z)
  PARAMETER (MRTOT =10000000, MITOT =1000000, MNUMNP=18500)
  REAL*8 IHED( 9),CPSTM,CPETM,STTIM,EDTIM,ACCTIM,USETIM
  CHARACTER MNBLR*1, DUMMY*80
  CHARACTER*9 FILE1,FILE2
  CHARACTER*80 TITLE,FMT
  DIMENSION    RA(6000),T(12), NDOTLT(1000)
  DIMENSION IPR1(2,10),IPR2(2,10),UATMX(MNUMNP,2),VATMX(MNUMNP,2)
  EQUIVALENCE (IA,RA)
  DATA IPR2/20*0/,IPR1/20*0/
  DATA IIIEND/3HEND /,IIIEXE/3HEXE/,IIIEIG/3HEIG /
  COMMON /R/A ( MRTOT )
  COMMON /I/IA( MITOT )
  COMMON /JOINO/LPEL
  COMMON /HENNI/DACCUM( MNUMNP, 2 )
  character*5 input

和一些错误消息:

    DATA IIIEND/3HEND /,IIIEXE/3HEXE/,IIIEIG/3HEIG /
1
Warning: Legacy Extension: Hollerith constant at (1)
dynamic.f:618:72: Error: Syntax error in argument list at (1)
dynamic.f:23:49:
DATA IIIEND/3HEND /,IIIEXE/3HEXE/,IIIEIG/3HEIG /
1
Warning: Extension: Conversion from HOLLERITH to INTEGER(4) at (1)

0 个答案:

没有答案