New submission from James Lingard <j...@aristanetworks.com>:

The following python file:

  lambda a, a: 0

when executed gives the following backtrace:

    File "/tmp/test.py", line 0
  SyntaxError: duplicate argument 'a' in function definition

Note that the line number is 0, not 1.  (It's always 0, regardless of
the position in the file).

---

Note that this doesn't happen for other similar errors in lambda
functions, for example the file:

  lambda a=0, a: 0

leads to the following error message:

    File "/tmp/test.py", line 1
      lambda a=0, a: 0
  SyntaxError: non-default argument follows default argument

and it also doesn't happen for the same error in a 'def':

  def f(a, a): pass

leads to the following error message:

    File "/tmp/test.py", line 1
      def f(a, a): pass
  SyntaxError: duplicate argument 'a' in function definition

---

Tested on Python 2.6 (r26:66714, Jun  8 2009, 16:07:29).

----------
components: Interpreter Core
messages: 95518
nosy: james.lingard
severity: normal
status: open
title: Traceback contains incorrect line number for duplicate argument in 
lambda definition
type: behavior
versions: Python 2.6

_______________________________________
Python tracker <rep...@bugs.python.org>
<http://bugs.python.org/issue7364>
_______________________________________
_______________________________________________
Python-bugs-list mailing list
Unsubscribe: 
http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com

Reply via email to