Topic: Problem with modules
Hi Jeff,
I have another one for you.
In trying to build my project, notice that A_Struct_Mod.f90 compiles without errors
Compiling .\Source\A_PSInfo_Mod.f90
Compiling .\Source\A_Struct_Mod.f90
Compiling .\Source\AllBlank.f90
.
.
.
However, when it trys to compile ElevGet.f90, I get the error listed below:
.
.
.
Compiling .\Source\DNorm.f90
Compiling .\Source\ElevGet.f90
.\Source\ElevGet.f90:68.29:
Vol = Interp(Etry, Expd%Elev, Expd%Volume, Expd%nStrPts)
1
Error: Symbol 'expd' at (1) has no IMPLICIT type
Error(E42): Last command making (.\Build\ElevGet.o) returned a bad status
Error(E02): Make execution terminated
* Failed *
This is the module that contains the "Type(Expanded) :: Expd" statement:
!
!
Module A_Struct_Mod
!
! Module to establish allocatable arrays and their associated variables.
!
! Used with the Vegetative Overtopping Protection program.
!
! Written by Don Hazlewood, November 26, 2003
!
Implicit None
!
Type Reservoir
Real(8), Allocatable :: Elev(:) ! Structure Elevation Table
Real(8), Allocatable :: PSDisch(:) ! Structure Prin. Spillway Discharge Table
Real(8), Allocatable :: Area(:) ! Structure Area in acres
Real(8), Allocatable :: Volume(:) ! Structure Volume in acre-feet
!
Integer(4) :: nStrPts ! Number of points in the Revervoir table
!
Character(10) :: Str_ID ! Structure Identifier
!
Real(8) :: StrInt ! Structure rating table interval
End Type Reservoir
Type (Reservoir) :: Str
!
Type Expanded
Real(8), Allocatable :: Elev(:) ! Expanded elevation table
Real(8), Allocatable :: PSDisch(:) ! Expanded PS discharge table
Real(8), Allocatable :: Area(:) ! Expanded structure Area table
Real(8), Allocatable :: Volume(:) ! Expanded structure volume table
!
Integer(4) :: nStrPts ! Number of points in expanded structure tables
End Type Expanded
Type (Expanded) :: Expd
!
Real(8) :: StrZero ! Elevation of zero reservoir storage
!
Logical(1) :: VolGiven ! True-volume given; False-not given
Logical(1) :: AreaGiven ! True-area given; False-not given
Logical(1) :: ElevChange ! True-elevation changed more than 0.01'; False-no
Logical(1) :: Breached ! Switch to indicate stress greater than 100%
!
End Module A_Struct_Mod
I have tried everything I can think of to get around this problem, but no luck. It has worked in the past, but after I changed Exp (which was the Type (Expanded) name originally) to avoid confusion with the EXP function, I started getting this error. It's almost like it isn't deleting the old compiled module.
This happen with 2.19 and 2.20 builds. Any suggestions?