From fd7869b7ec5973478a4ea7900aad0fa593f1375b Mon Sep 17 00:00:00 2001 From: Rohit Goswami Date: Sat, 30 Apr 2022 14:52:52 +0000 Subject: MAINT: Hoist f2py condition outside try-except MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-authored-by: Pearu Peterson Co-authored-by: Melissa Weber Mendonça --- numpy/f2py/crackfortran.py | 17 +++++++++-------- 1 file changed, 9 insertions(+), 8 deletions(-) (limited to 'numpy') diff --git a/numpy/f2py/crackfortran.py b/numpy/f2py/crackfortran.py index db152698e..515bdd787 100755 --- a/numpy/f2py/crackfortran.py +++ b/numpy/f2py/crackfortran.py @@ -2428,18 +2428,19 @@ def get_parameters(vars, global_params={}): elif iscomplex(vars[n]): outmess(f'get_parameters[TODO]: ' f'implement evaluation of complex expression {v}\n') + + # Handle _dp for gh-6624 + # Also fixes gh-20460 + if real16pattern.search(v): + v = 8 + elif real8pattern.search(v): + v = 4 try: params[n] = eval(v, g_params, params) + except Exception as msg: - # Handle _dp for gh-6624 - if real16pattern.search(v): - v = 8 - elif real8pattern.search(v): - v = 4 params[n] = v - # Don't report if the parameter is numeric gh-20460 - if not real16pattern.search(v) and not real8pattern.search(v): - outmess('get_parameters: got "%s" on %s\n' % (msg, repr(v))) + outmess('get_parameters: got "%s" on %s\n' % (msg, repr(v))) if isstring(vars[n]) and isinstance(params[n], int): params[n] = chr(params[n]) nl = n.lower() -- cgit v1.2.1