summaryrefslogtreecommitdiff
path: root/numpy/f2py/lib/parsefortran.py
diff options
context:
space:
mode:
Diffstat (limited to 'numpy/f2py/lib/parsefortran.py')
-rw-r--r--numpy/f2py/lib/parsefortran.py11
1 files changed, 7 insertions, 4 deletions
diff --git a/numpy/f2py/lib/parsefortran.py b/numpy/f2py/lib/parsefortran.py
index 71355a9ad..21eec49fe 100644
--- a/numpy/f2py/lib/parsefortran.py
+++ b/numpy/f2py/lib/parsefortran.py
@@ -42,10 +42,13 @@ class FortranParser:
except KeyboardInterrupt:
raise
except:
- message = self.reader.format_message('FATAL ERROR',
- 'while processing line',
- self.reader.linecount, self.reader.linecount)
- self.reader.show_message(message, sys.stdout)
+ reader = self.reader
+ while reader is not None:
+ message = reader.format_message('FATAL ERROR',
+ 'while processing line',
+ reader.linecount, reader.linecount)
+ reader.show_message(message, sys.stdout)
+ reader = reader.reader
traceback.print_exc(file=sys.stdout)
self.reader.show_message(red_text('STOPPED PARSING'), sys.stdout)