RoseFE_SourceProcessing
changeset 546:33a001c70b43
more details in errors
| author | m_utkej@utke2.site |
|---|---|
| date | Fri Dec 04 16:53:40 2009 -0600 (2009-12-04) |
| parents | 65e48f1c388d |
| children | 25572a032a09 |
| files | PyFort/stmt2unit.py |
line diff
1.1 --- a/PyFort/stmt2unit.py Fri Dec 04 16:52:31 2009 -0600 1.2 +++ b/PyFort/stmt2unit.py Fri Dec 04 16:53:40 2009 -0600 1.3 @@ -77,7 +77,12 @@ 1.4 localSymtab.enter_name(name,newSymtabEntry) 1.5 unitSymbolEntry,sTable=localSymtab.lookup_name_level(curr.val.name()) 1.6 if (unitSymbolEntry and unitSymbolEntry.entryKind==SymtabEntry.FunctionEntryKind and unitSymbolEntry.genericInfo and unitSymbolEntry.genericInfo.genericName): 1.7 - argsTypeDict=localSymtab.lookup_name(unitSymbolEntry.genericInfo.genericName).genericInfo.resolvableTo[curr.val.name()] 1.8 + genericSymbolEntry=localSymtab.lookup_name(unitSymbolEntry.genericInfo.genericName) 1.9 + if (genericSymbolEntry is None): 1.10 + raise SymtabError('cannot find generic '+unitSymbolEntry.genericInfo.genericName+' for specific '+curr.val.name()+' entry: '+unitSymbolEntry.debug(curr.val.name())) 1.11 + if (genericSymbolEntry.genericInfo is None or (not curr.val.name().lower() in genericSymbolEntry.genericInfo.resolvableTo)): 1.12 + raise SymtabError('no info available for specific '+curr.val.name()+' in generic entry: '+genericSymbolEntry.debug(unitSymbolEntry.genericInfo.genericName)) 1.13 + argsTypeDict=localSymtab.lookup_name(unitSymbolEntry.genericInfo.genericName).genericInfo.resolvableTo[curr.val.name().lower()] 1.14 if (argsTypeDict is None): 1.15 raise SymtabError('no arguments set for specific '+curr.val.name()+' under generic '+ unitSymbolEntry.genericInfo.genericName+' entry: '+localSymtab.lookup_name(unitSymbolEntry.genericInfo.genericName).debug(unitSymbolEntry.genericInfo.genericName)) 1.16 if name.lower() in argsTypeDict:
