Only use PyCode_Addr2Line to get tb_lineno when Py_OptimizeFlag is set.
diff --git a/Python/traceback.c b/Python/traceback.c
index 9633db1..14e4905 100644
--- a/Python/traceback.c
+++ b/Python/traceback.c
@@ -243,8 +243,9 @@
 	}
 	while (tb != NULL && !PyOS_InterruptOccurred()) {
 		if (depth <= limit) {
-			tb->tb_lineno = PyCode_Addr2Line(tb->tb_frame->f_code,
-							 tb->tb_lasti);
+			if (Py_OptimizeFlag)
+				tb->tb_lineno = PyCode_Addr2Line(
+					tb->tb_frame->f_code, tb->tb_lasti);
 			tb_displayline(f,
 			    PyString_AsString(
 				    tb->tb_frame->f_code->co_filename),