summaryrefslogtreecommitdiff
path: root/numpy/f2py
diff options
context:
space:
mode:
Diffstat (limited to 'numpy/f2py')
-rw-r--r--numpy/f2py/auxfuncs.py2
-rw-r--r--numpy/f2py/capi_maps.py4
-rwxr-xr-xnumpy/f2py/crackfortran.py96
-rwxr-xr-xnumpy/f2py/f2py2e.py2
4 files changed, 52 insertions, 52 deletions
diff --git a/numpy/f2py/auxfuncs.py b/numpy/f2py/auxfuncs.py
index 608ae5566..433fa1ccf 100644
--- a/numpy/f2py/auxfuncs.py
+++ b/numpy/f2py/auxfuncs.py
@@ -613,7 +613,7 @@ def replace(str,d,defaultsep=''):
return map(lambda d,f=replace,sep=defaultsep,s=str:f(s,d,sep),d)
if type(str)==types.ListType:
return map(lambda s,f=replace,sep=defaultsep,d=d:f(s,d,sep),str)
- for k in 2*d.keys():
+ for k in 2*list(d.keys()):
if k=='separatorsfor':
continue
if 'separatorsfor' in d and k in d['separatorsfor']:
diff --git a/numpy/f2py/capi_maps.py b/numpy/f2py/capi_maps.py
index 1aa67ff74..a7b513ee9 100644
--- a/numpy/f2py/capi_maps.py
+++ b/numpy/f2py/capi_maps.py
@@ -192,7 +192,7 @@ if os.path.isfile('.f2py_f2cmap'):
f2cmap_all[k][k1] = d[k][k1]
outmess('\tMapping "%s(kind=%s)" to "%s"\n' % (k,k1,d[k][k1]))
else:
- errmess("\tIgnoring map {'%s':{'%s':'%s'}}: '%s' must be in %s\n"%(k,k1,d[k][k1],d[k][k1],c2py_map.keys()))
+ errmess("\tIgnoring map {'%s':{'%s':'%s'}}: '%s' must be in %s\n"%(k,k1,d[k][k1],d[k][k1],list(c2py_map.keys())))
outmess('Succesfully applied user defined changes from .f2py_f2cmap\n')
except Exception as msg:
errmess('Failed to apply user defined changes from .f2py_f2cmap: %s. Skipping.\n' % (msg))
@@ -491,7 +491,7 @@ def sign2map(a,var):
ret['cblatexdocstr']=lcb2_map[lcb_map[a]]['latexdocstr']
else:
ret['cbname']=a
- errmess('sign2map: Confused: external %s is not in lcb_map%s.\n'%(a,lcb_map.keys()))
+ errmess('sign2map: Confused: external %s is not in lcb_map%s.\n'%(a,list(lcb_map.keys())))
if isstring(var):
ret['length']=getstrlength(var)
if isarray(var):
diff --git a/numpy/f2py/crackfortran.py b/numpy/f2py/crackfortran.py
index 97a58813e..98872516e 100755
--- a/numpy/f2py/crackfortran.py
+++ b/numpy/f2py/crackfortran.py
@@ -680,7 +680,7 @@ def appenddecl(decl,decl2,force=1):
if not decl: decl={}
if not decl2: return decl
if decl is decl2: return decl
- for k in decl2.keys():
+ for k in list(decl2.keys()):
if k=='typespec':
if force or k not in decl:
decl[k]=decl2[k]
@@ -836,7 +836,7 @@ def analyzeline(m,case,line):
groupcache[groupcounter]['from']='%s:%s'%(groupcache[groupcounter-1]['from'],currentfilename)
else:
groupcache[groupcounter]['from']='%s:%s'%(groupcache[groupcounter-1]['from'],groupcache[groupcounter-1]['name'])
- for k in groupcache[groupcounter].keys():
+ for k in list(groupcache[groupcounter].keys()):
if not groupcache[groupcounter][k]:
del groupcache[groupcounter][k]
@@ -1031,7 +1031,7 @@ def analyzeline(m,case,line):
decl['kindselector']=kindselect
decl['charselector']=charselect
decl['typename']=typename
- for k in decl.keys():
+ for k in list(decl.keys()):
if not decl[k]: del decl[k]
for r in markoutercomma(m1.group('after')).split('@,@'):
if '-' in r:
@@ -1205,7 +1205,7 @@ def cracktypespec0(typespec,ll):
outmess('cracktypespec0: no kind/char_selector pattern found for line.\n')
return
d=m1.groupdict()
- for k in d.keys(): d[k]=unmarkouterparen(d[k])
+ for k in list(d.keys()): d[k]=unmarkouterparen(d[k])
if typespec in ['complex','integer','logical','real','character','type']:
selector=d['this']
ll=d['after']
@@ -1285,7 +1285,7 @@ def updatevars(typespec,selector,attrspec,entitydecl):
if 'kindselector' not in edecl:
edecl['kindselector']=copy.copy(kindselect)
elif kindselect:
- for k in kindselect.keys():
+ for k in list(kindselect.keys()):
if k in edecl['kindselector'] and (not kindselect[k]==edecl['kindselector'][k]):
outmess('updatevars: attempt to change the kindselector "%s" of "%s" ("%s") to "%s". Ignoring.\n' % (k,ename,edecl['kindselector'][k],kindselect[k]))
else: edecl['kindselector'][k]=copy.copy(kindselect[k])
@@ -1296,7 +1296,7 @@ def updatevars(typespec,selector,attrspec,entitydecl):
errmess('updatevars:%s: attempt to change empty charselector to %r. Ignoring.\n' \
%(ename,charselect))
elif charselect:
- for k in charselect.keys():
+ for k in list(charselect.keys()):
if k in edecl['charselector'] and (not charselect[k]==edecl['charselector'][k]):
outmess('updatevars: attempt to change the charselector "%s" of "%s" ("%s") to "%s". Ignoring.\n' % (k,ename,edecl['charselector'][k],charselect[k]))
else: edecl['charselector'][k]=copy.copy(charselect[k])
@@ -1322,7 +1322,7 @@ def updatevars(typespec,selector,attrspec,entitydecl):
d1=m1.groupdict()
for lk in ['len','array','init']:
if d1[lk+'2'] is not None: d1[lk]=d1[lk+'2']; del d1[lk+'2']
- for k in d1.keys():
+ for k in list(d1.keys()):
if d1[k] is not None: d1[k]=unmarkouterparen(d1[k])
else: del d1[k]
if 'len' in d1 and 'array' in d1:
@@ -1364,7 +1364,7 @@ def updatevars(typespec,selector,attrspec,entitydecl):
edecl['=']=d1['init']
else:
outmess('updatevars: could not crack entity declaration "%s". Ignoring.\n'%(ename+m.group('after')))
- for k in edecl.keys():
+ for k in list(edecl.keys()):
if not edecl[k]:
del edecl[k]
groupcache[groupcounter]['vars'][ename]=edecl
@@ -1386,9 +1386,9 @@ def cracktypespec(typespec,selector):
kindselect=kindselect.groupdict()
kindselect['*']=kindselect['kind2']
del kindselect['kind2']
- for k in kindselect.keys():
+ for k in list(kindselect.keys()):
if not kindselect[k]: del kindselect[k]
- for k,i in kindselect.items():
+ for k,i in list(kindselect.items()):
kindselect[k] = rmbadname1(i)
elif typespec=='character':
charselect=charselector.match(selector)
@@ -1407,9 +1407,9 @@ def cracktypespec(typespec,selector):
charselect[lk]=lenkind[lk]
del lenkind[lk+'2']
del charselect['lenkind']
- for k in charselect.keys():
+ for k in list(charselect.keys()):
if not charselect[k]: del charselect[k]
- for k,i in charselect.items():
+ for k,i in list(charselect.items()):
charselect[k] = rmbadname1(i)
elif typespec=='type':
typename=re.match(r'\s*\(\s*(?P<name>\w+)\s*\)',selector,re.I)
@@ -1449,7 +1449,7 @@ def setkindselector(decl,sel,force=0):
if 'kindselector' not in decl:
decl['kindselector']=sel
return decl
- for k in sel.keys():
+ for k in list(sel.keys()):
if force or k not in decl['kindselector']:
decl['kindselector'][k]=sel[k]
return decl
@@ -1462,7 +1462,7 @@ def setcharselector(decl,sel,force=0):
if 'charselector' not in decl:
decl['charselector']=sel
return decl
- for k in sel.keys():
+ for k in list(sel.keys()):
if force or k not in decl['charselector']:
decl['charselector'][k]=sel[k]
return decl
@@ -1496,7 +1496,7 @@ def get_useparameters(block, param_map=None):
usedict = get_usedict(block)
if not usedict:
return param_map
- for usename,mapping in usedict.items():
+ for usename,mapping in list(usedict.items()):
usename = usename.lower()
if usename not in f90modulevars:
outmess('get_useparameters: no module %s info used by %s\n' % (usename, block.get('name')))
@@ -1508,7 +1508,7 @@ def get_useparameters(block, param_map=None):
# XXX: apply mapping
if mapping:
errmess('get_useparameters: mapping for %s not impl.' % (mapping))
- for k,v in params.items():
+ for k,v in list(params.items()):
if k in param_map:
outmess('get_useparameters: overriding parameter %s with'\
' value from module %s' % (`k`,`usename`))
@@ -1534,7 +1534,7 @@ def postcrack2(block,tab='',param_map=None):
if param_map is not None and 'vars' in block:
vars = block['vars']
- for n in vars.keys():
+ for n in list(vars.keys()):
var = vars[n]
if 'kindselector' in var:
kind = var['kindselector']
@@ -1587,11 +1587,11 @@ def postcrack(block,args=None,tab=''):
## fromuser = []
if 'use' in block:
useblock=block['use']
- for k in useblock.keys():
+ for k in list(useblock.keys()):
if '__user__' in k:
userisdefined.append(k)
## if 'map' in useblock[k]:
-## for n in useblock[k]['map'].values():
+## for n in useblock[k]['map'].itervalues():
## if n not in fromuser: fromuser.append(n)
else: useblock={}
name=''
@@ -1648,7 +1648,7 @@ def postcrack(block,args=None,tab=''):
def sortvarnames(vars):
indep = []
dep = []
- for v in vars.keys():
+ for v in list(vars.keys()):
if 'depend' in vars[v] and vars[v]['depend']:
dep.append(v)
#print '%s depends on %s'%(v,vars[v]['depend'])
@@ -1682,7 +1682,7 @@ def sortvarnames(vars):
def analyzecommon(block):
if not hascommon(block): return block
commonvars=[]
- for k in block['common'].keys():
+ for k in list(block['common'].keys()):
comvars=[]
for e in block['common'][k]:
m=re.match(r'\A\s*\b(?P<name>.*?)\b\s*(\((?P<dims>.*?)\)|)\s*\Z',e,re.I)
@@ -1752,7 +1752,7 @@ def buildimplicitrules(block):
if verbose>1:
outmess('buildimplicitrules: no implicit rules for routine %s.\n'%`block['name']`)
else:
- for k in block['implicit'].keys():
+ for k in list(block['implicit'].keys()):
if block['implicit'][k].get('typespec') not in ['static','automatic']:
implicitrules[k]=block['implicit'][k]
else:
@@ -1934,7 +1934,7 @@ def _get_depend_dict(name, vars, deps):
return words
def _calc_depend_dict(vars):
- names = vars.keys()
+ names = list(vars.keys())
depend_dict = {}
for n in names:
_get_depend_dict(n, vars, depend_dict)
@@ -1945,12 +1945,12 @@ def get_sorted_names(vars):
"""
depend_dict = _calc_depend_dict(vars)
names = []
- for name in depend_dict.keys():
+ for name in list(depend_dict.keys()):
if not depend_dict[name]:
names.append(name)
del depend_dict[name]
while depend_dict:
- for name, lst in depend_dict.items():
+ for name, lst in list(depend_dict.items()):
new_lst = [n for n in lst if n in depend_dict]
if not new_lst:
names.append(name)
@@ -2067,7 +2067,7 @@ def _eval_scalar(value,params):
except Exception as msg:
errmess('"%s" in evaluating %r '\
'(available names: %s)\n' \
- % (msg,value,params.keys()))
+ % (msg,value,list(params.keys())))
return value
def analyzevars(block):
@@ -2081,7 +2081,7 @@ def analyzevars(block):
del vars['']
if 'attrspec' in block['vars']['']:
gen=block['vars']['']['attrspec']
- for n in vars.keys():
+ for n in list(vars.keys()):
for k in ['public','private']:
if k in gen:
vars[n]=setattrspec(vars[n],k)
@@ -2093,14 +2093,14 @@ def analyzevars(block):
svars.append(a)
except KeyError:
pass
- for n in vars.keys():
+ for n in list(vars.keys()):
if n not in args: svars.append(n)
params = get_parameters(vars, get_useparameters(block))
dep_matches = {}
name_match = re.compile(r'\w[\w\d_$]*').match
- for v in vars.keys():
+ for v in list(vars.keys()):
m = name_match(v)
if m:
n = v[m.start():m.end()]
@@ -2109,13 +2109,13 @@ def analyzevars(block):
except KeyError:
dep_matches[n] = re.compile(r'.*\b%s\b'%(v),re.I).match
for n in svars:
- if n[0] in attrrules.keys():
+ if n[0] in list(attrrules.keys()):
vars[n]=setattrspec(vars[n],attrrules[n[0]])
if 'typespec' not in vars[n]:
if not('attrspec' in vars[n] and 'external' in vars[n]['attrspec']):
if implicitrules:
ln0 = n[0].lower()
- for k in implicitrules[ln0].keys():
+ for k in list(implicitrules[ln0].keys()):
if k=='typespec' and implicitrules[ln0][k]=='undefined':
continue
if k not in vars[n]:
@@ -2194,7 +2194,7 @@ def analyzevars(block):
star=':'
if d in params:
d = str(params[d])
- for p in params.keys():
+ for p in list(params.keys()):
m = re.match(r'(?P<before>.*?)\b'+p+r'\b(?P<after>.*)',d,re.I)
if m:
#outmess('analyzevars:replacing parameter %s in %s (dimension of %s) with %s\n'%(`p`,`d`,`n`,`params[p]`))
@@ -2208,7 +2208,7 @@ def analyzevars(block):
d = '*'
if len(dl)==1 and not dl[0]==star: dl = ['1',dl[0]]
if len(dl)==2:
- d,v,di = getarrlen(dl,block['vars'].keys())
+ d,v,di = getarrlen(dl,list(block['vars'].keys()))
if d[:4] == '1 * ': d = d[4:]
if di and di[-4:] == '/(1)': di = di[:-4]
if v: savelindims[d] = v,di
@@ -2255,7 +2255,7 @@ def analyzevars(block):
d = savelindims[d][0]
else:
for r in block['args']:
- #for r in block['vars'].keys():
+ #for r in block['vars'].iterkeys():
if r not in vars:
continue
if re.match(r'.*?\b'+r+r'\b',d,re.I):
@@ -2323,13 +2323,13 @@ def analyzevars(block):
vars[n]['attrspec'].append('optional')
if 'depend' not in vars[n]:
vars[n]['depend']=[]
- for v,m in dep_matches.items():
+ for v,m in list(dep_matches.items()):
if m(vars[n]['=']): vars[n]['depend'].append(v)
if not vars[n]['depend']: del vars[n]['depend']
if isscalar(vars[n]):
vars[n]['='] = _eval_scalar(vars[n]['='],params)
- for n in vars.keys():
+ for n in list(vars.keys()):
if n==block['name']: # n is block name
if 'note' in vars[n]:
block['note']=vars[n]['note']
@@ -2365,12 +2365,12 @@ def analyzevars(block):
neededvars=copy.copy(block['args']+block['commonvars'])
else:
neededvars=copy.copy(block['args'])
- for n in vars.keys():
+ for n in list(vars.keys()):
if l_or(isintent_callback,isintent_aux)(vars[n]):
neededvars.append(n)
if 'entry' in block:
- neededvars.extend(block['entry'].keys())
- for k in block['entry'].keys():
+ neededvars.extend(list(block['entry'].keys()))
+ for k in list(block['entry'].keys()):
for n in block['entry'][k]:
if n not in neededvars:
neededvars.append(n)
@@ -2384,8 +2384,8 @@ def analyzevars(block):
if name in vars and 'intent' in vars[name]:
block['intent'] = vars[name]['intent']
if block['block'] == 'type':
- neededvars.extend(vars.keys())
- for n in vars.keys():
+ neededvars.extend(list(vars.keys()))
+ for n in list(vars.keys()):
if n not in neededvars:
del vars[n]
return vars
@@ -2435,7 +2435,7 @@ def analyzeargs(block):
args.append(a)
block['args']=args
if 'entry' in block:
- for k,args1 in block['entry'].items():
+ for k,args1 in list(block['entry'].items()):
for a in args1:
if a not in block['vars']:
block['vars'][a]={}
@@ -2536,7 +2536,7 @@ def crack2fortrangen(block,tab='\n', as_interface=False):
args='(%s)'%','.join(argsl)
f2pyenhancements = ''
if 'f2pyenhancements' in block:
- for k in block['f2pyenhancements'].keys():
+ for k in list(block['f2pyenhancements'].keys()):
f2pyenhancements = '%s%s%s %s'%(f2pyenhancements,tab+tabchar,k,block['f2pyenhancements'][k])
intent_lst = block.get('intent',[])[:]
if blocktype=='function' and 'callback' in intent_lst:
@@ -2566,7 +2566,7 @@ def crack2fortrangen(block,tab='\n', as_interface=False):
mess='! in %s'%block['from']
if 'entry' in block:
entry_stmts = ''
- for k,i in block['entry'].items():
+ for k,i in list(block['entry'].items()):
entry_stmts = '%s%sentry %s(%s)' \
% (entry_stmts,tab+tabchar,k,','.join(i))
body = body + entry_stmts
@@ -2577,7 +2577,7 @@ def crack2fortrangen(block,tab='\n', as_interface=False):
def common2fortran(common,tab=''):
ret=''
- for k in common.keys():
+ for k in list(common.keys()):
if k=='_BLNK_':
ret='%s%scommon %s'%(ret,tab,','.join(common[k]))
else:
@@ -2586,7 +2586,7 @@ def common2fortran(common,tab=''):
def use2fortran(use,tab=''):
ret=''
- for m in use.keys():
+ for m in list(use.keys()):
ret='%s%suse %s,'%(ret,tab,m)
if use[m]=={}:
if ret and ret[-1]==',': ret=ret[:-1]
@@ -2595,7 +2595,7 @@ def use2fortran(use,tab=''):
ret='%s only:'%(ret)
if 'map' in use[m] and use[m]['map']:
c=' '
- for k in use[m]['map'].keys():
+ for k in list(use[m]['map'].keys()):
if k==use[m]['map'][k]:
ret='%s%s%s'%(ret,c,k); c=','
else:
@@ -2637,7 +2637,7 @@ def vars2fortran(block,vars,args,tab='', as_interface=False):
if 'varnames' in block:
nout.extend(block['varnames'])
if not as_interface:
- for a in vars.keys():
+ for a in list(vars.keys()):
if a not in nout:
nout.append(a)
for a in nout:
diff --git a/numpy/f2py/f2py2e.py b/numpy/f2py/f2py2e.py
index 0886e8ebf..899de4753 100755
--- a/numpy/f2py/f2py2e.py
+++ b/numpy/f2py/f2py2e.py
@@ -469,7 +469,7 @@ def run_compile():
if s[:len(v)]==v:
from numpy.distutils import fcompiler
fcompiler.load_all_fcompiler_classes()
- allowed_keys = fcompiler.fcompiler_class.keys()
+ allowed_keys = list(fcompiler.fcompiler_class.keys())
nv = ov = s[len(v):].lower()
if ov not in allowed_keys:
vmap = {} # XXX