[Bug fortran/52846] [F2008] Support submodules - part 3/3

Mikael Morin mikael.morin@sfr.fr
Mon Aug 3 15:40:00 GMT 2015


Le 03/08/2015 14:36, Paul Richard Thomas a écrit :
> Dear Mikael,
>
> Thanks for your green light!
>
> I have been mulling over the trans-decl part of the patch and having
> been wondering if it is necessary.
You mean marking entities as public?  Or setting the hidden visibility 
attribute?  Or both?
I think both are necessary.

> Without optimization, private
> entities can be linked to. Given the discussion concerning the
> combination of submodules and private entities, I wonder if this is
> not sufficient? Within submodule scope, an advisory could be given for
> undefined references to suggest recompiling the module without
> optimization or making the entities public.
>
About recompiling without optimization:
If the module contains no code, I guess that would be OK.
But otherwise, it would be pretty bad.
And one would have to do the same for submodules of a submodule: the 
parent submodule would be compiled without optimization. :-(

About making the entities public:
I think the goal of submodules is providing a way to specify a 
(hopefully) stable interface free of any internal implementation details 
that users would start playing with if the opportunity was given to 
them.  Making all entities public would go against that.


I've been reading about the hidden visibility attribute since you 
submitted the 3/3 patch(es).  I think it's the right thing. :-)

Mikael



More information about the Fortran mailing list