IMPLICIT <implicit-spec-list>
IMPLICIT NONE
<implicit-spec> = <declaration-type-spec> ( <letter-spec-list> )
<letter-spec> = <letter> [ - <letter> ]
Definition at line 600 of file typedecl_statements.py.
def fparser.one.typedecl_statements.Implicit.analyze |
( |
|
self | ) |
|
Analyze the Implicit statments constructed by the parser and
set-up the associated implicit_rules belonging to the parent
of this object in the AST.
Definition at line 659 of file typedecl_statements.py.
References fparser.one.statements.StatementWithNamelist.items, fparser.one.statements.Assign.items, fparser.one.statements.Call.items, fparser.one.statements.ComputedGoto.items, fparser.one.statements.AssignedGoto.items, fparser.one.statements.Print.items, fparser.one.statements.Read0.items, fparser.one.typedecl_statements.Implicit.items, fparser.one.statements.Read1.items, fparser.one.statements.Write.items, fparser.one.statements.Allocate.items, fparser.one.statements.Deallocate.items, fparser.one.statements.ModuleProcedure.items, fparser.one.statements.Access.items, fparser.one.statements.Save.items, fparser.one.statements.Nullify.items, fparser.one.statements.Use.items, fparser.one.statements.Parameter.items, fparser.one.statements.Equivalence.items, fparser.one.statements.Dimension.items, fparser.one.statements.Target.items, fparser.one.statements.Pointer.items, fparser.one.statements.Inquire.items, fparser.one.statements.Namelist.items, fparser.one.statements.Common.items, fparser.one.statements.Intent.items, fparser.one.statements.Entry.items, fparser.one.statements.GenericBinding.items, fparser.one.statements.Allocatable.items, fparser.one.statements.Bind.items, fparser.one.statements.Case.items, fparser.one.statements.TypeIs.items, fparser.one.statements.ClassIs.items, fparser.one.statements.Enumerator.items, fparser.one.statements.Depend.items, fparser.common.base_classes.Variable.parent, fparser.two.utils.Base.parent, fparser.two.symbol_table.SymbolTable.parent, fparser.common.base_classes.Statement.parent, fparser.common.base_classes.Variable.warning(), fparser.common.base_classes.Statement.warning(), and fparser.common.readfortran.FortranReaderBase.warning().
661 Analyze the Implicit statments constructed by the parser and 662 set-up the associated implicit_rules belonging to the parent 663 of this object in the AST. 665 implicit_rules = self.parent.a.implicit_rules
669 "overriding previously set implicit rule mapping" 670 " %r." % (implicit_rules)
672 self.parent.a.implicit_rules =
None 674 if implicit_rules
is None:
675 self.warning(
"overriding previously set IMPLICIT NONE")
676 self.parent.a.implicit_rules = implicit_rules = {}
677 for stmt, specs
in self.items:
678 for start, end
in specs:
679 start_idx = string.ascii_lowercase.index(start.lower())
680 end_idx = string.ascii_lowercase.index(end.lower())
681 for lchar
in string.ascii_lowercase[start_idx : end_idx + 1]:
682 implicit_rules[lchar] = stmt