From ca90605678cb724b9fc521e42abd644162d686c3 Mon Sep 17 00:00:00 2001
From: Guido van Rossum <guido@python.org>
Date: Thu, 10 Dec 1998 16:56:22 +0000
Subject: Add more SET_LINENO instructions in long argument lists

---
 Python/compile.c | 8 +++++++-
 1 file changed, 7 insertions(+), 1 deletion(-)

diff --git a/Python/compile.c b/Python/compile.c
index 19f18e6..3903524 100644
--- a/Python/compile.c
+++ b/Python/compile.c
@@ -1168,11 +1168,17 @@ com_call_function(c, n)
 	else {
 		PyObject *keywords = NULL;
 		int i, na, nk;
+		int lineno = n->n_lineno;
 		REQ(n, arglist);
 		na = 0;
 		nk = 0;
 		for (i = 0; i < NCH(n); i += 2) {
-			com_argument(c, CHILD(n, i), &keywords);
+			node *ch = CHILD(n, i);
+			if (ch->n_lineno != lineno) {
+				lineno = ch->n_lineno;
+				com_addoparg(c, SET_LINENO, lineno);
+			}
+			com_argument(c, ch, &keywords);
 			if (keywords == NULL)
 				na++;
 			else
-- 
cgit v0.12

