diff options
author | Paul McGuire <ptmcg@austin.rr.com> | 2016-05-11 15:15:17 +0000 |
---|---|---|
committer | Paul McGuire <ptmcg@austin.rr.com> | 2016-05-11 15:15:17 +0000 |
commit | cda415c22f106f4527c374a9e9cf61ae45e54d06 (patch) | |
tree | 697d60c28c76535e820b24d33dbd74f2e455f60c | |
parent | 24815a032cb96b5df1f80d265900f8a91634f674 (diff) | |
download | pyparsing-git-cda415c22f106f4527c374a9e9cf61ae45e54d06.tar.gz |
traceback module variations between Py3.5.0 and Py3.5.1
-rw-r--r-- | src/pyparsing.py | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/src/pyparsing.py b/src/pyparsing.py index 917be82..c75aff2 100644 --- a/src/pyparsing.py +++ b/src/pyparsing.py @@ -788,9 +788,12 @@ def _trim_arity(func, maxargs=2): foundArity = [False]
# traceback return data structure changed in Py3.5 - normalize back to plain tuples
- if tuple(sys.version_info) >= (3,5):
+ ver = tuple(sys.version_info)[:3]
+ if ver[:2] >= (3,5):
def extract_stack():
- frame_summary = traceback.extract_stack()[-3]
+ # special handling for Python 3.5.0 - extra deep call stack by 1
+ offset = -3 if ver == (3,5,0) else -2
+ frame_summary = traceback.extract_stack()[offset]
return [(frame_summary.filename, frame_summary.lineno)]
def extract_tb(tb):
frames = traceback.extract_tb(tb)
|