@@ -39,22 +39,23 @@ class PYBEHAVIOR:
39
39
else :
40
40
optimize_if_debug = not pep626
41
41
42
- # Is "if not __debug__" optimized away?
43
- optimize_if_not_debug = (not PYPY ) and (PYVERSION >= (3 , 7 , 0 , 'alpha' , 4 ))
42
+ # Is "if not __debug__" optimized away? The exact details have changed
43
+ # across versions.
44
+ optimize_if_not_debug = 0
44
45
if pep626 :
45
- optimize_if_not_debug = False
46
- if PYPY :
47
- optimize_if_not_debug = True
48
-
49
- # Is "if not __debug__" optimized away even better?
50
- optimize_if_not_debug2 = ( not PYPY ) and ( PYVERSION >= ( 3 , 8 , 0 , 'beta' , 1 ))
51
- if pep626 :
52
- optimize_if_not_debug2 = False
53
- if PYPY and ( PYVERSION >= ( 3 , 9 )) :
54
- optimize_if_not_debug2 = True
55
-
56
- # Yet another way to optimize "if not __debug__"?
57
- optimize_if_not_debug3 = ( PYPY and ( 3 , 8 ) <= PYVERSION <= ( 3 , 9 ))
46
+ optimize_if_not_debug = 1
47
+ elif PYPY :
48
+ if PYVERSION >= ( 3 , 9 ):
49
+ optimize_if_not_debug = 2
50
+ elif PYVERSION [: 2 ] == ( 3 , 8 ):
51
+ optimize_if_not_debug = 3
52
+ elif PYVERSION [: 2 ] <= ( 3 , 7 ) :
53
+ optimize_if_not_debug = 1
54
+ else :
55
+ if PYVERSION >= ( 3 , 8 , 0 , 'beta' , 1 ):
56
+ optimize_if_not_debug = 2
57
+ elif PYVERSION >= ( 3 , 7 , 0 , 'alpha' , 4 ):
58
+ optimize_if_not_debug = 1
58
59
59
60
# Can co_lnotab have negative deltas?
60
61
negative_lnotab = not (PYPY and PYPYVERSION < (7 , 2 ))
0 commit comments