Community
cancel
Showing results for 
Search instead for 
Did you mean: 
Highlighted
Beginner
31 Views

Error in compiling submodule tree.

Jump to solution

Good day everyone.

I have a problem in compiling a module-submodule tree where submodules include other submodules. For instance the following snippet fails to compile with ifort 17.1:

module leader
end module leader
submodule(leader) officer
end submodule         officer
submodule(officer) member
end submodule          member

giving the following error message:

error #8765: Error in opening the compiled ancestor module file.   [OFFICER]
      submodule(officer) member
----------------^

Am I missing something here? Or is this a bug?

Thanks in advance!

0 Kudos

Accepted Solutions
Highlighted
Honored Contributor I
31 Views

Oh, I didn't immediately notice but you're missing a part of the submodule identification, the inclusion of the ancestor and its parent:

module leader
end module leader

submodule (leader) officer
end submodule officer

submodule (leader:officer) member
! note the above ancestor:parent identification
end submodule member

 

View solution in original post

0 Kudos
4 Replies
Highlighted
Honored Contributor I
31 Views

I think your problem is the empty CONTAINS section in the 'officer' submodule; try a case where module procedures are present at each level.

0 Kudos
Highlighted
Beginner
31 Views

My full code is full of procedures at every level. Also notice that the submodule officer  that extends the primary module compiles fine. It's the second submodule that extends the first one that gives the error, i.e. having a submodule as parent is the only problem. Based on the error, it seems that the parent smod is either generated after lookup by the compiler or the look up name it expects ends in .mod instead of .smod (i.e. bug).

0 Kudos
Highlighted
Honored Contributor I
32 Views

Oh, I didn't immediately notice but you're missing a part of the submodule identification, the inclusion of the ancestor and its parent:

module leader
end module leader

submodule (leader) officer
end submodule officer

submodule (leader:officer) member
! note the above ancestor:parent identification
end submodule member

 

View solution in original post

0 Kudos
Highlighted
Beginner
31 Views

That does it, thanks you.

0 Kudos