MemoryError with parser.suite and wrong encoding declaration

S

Sylvain Thenault

Hi there !
I've noticed the following problem with python >= 2.3 (actually 2.3.4 and
2.4):

syt@musca:test$ python
Python 2.3.4 (#2, Sep 24 2004, 08:39:09)
[GCC 3.3.4 (Debian 1:3.3.4-12)] on linux2
Type "help", "copyright", "credits" or "license" for more information.Traceback (most recent call last):
<parser.st object at 0xb7e5e060>

Shouldn't parser.suite just ignore the wrong encoding declaration, or at
least raise a more appropriate exception. IMHO the first solution
would be better, since that's the behaviour of the (C) python interpreter.
 
T

Thomas Heller

Sylvain Thenault said:
Hi there !
I've noticed the following problem with python >= 2.3 (actually 2.3.4 and
2.4):

syt@musca:test$ python
Python 2.3.4 (#2, Sep 24 2004, 08:39:09)
[GCC 3.3.4 (Debian 1:3.3.4-12)] on linux2
Type "help", "copyright", "credits" or "license" for more information.Traceback (most recent call last):
<parser.st object at 0xb7e5e060>

Shouldn't parser.suite just ignore the wrong encoding declaration, or at
least raise a more appropriate exception. IMHO the first solution
would be better, since that's the behaviour of the (C) python interpreter.

Ignore the wrong declaration? All Python's that I have (on windows,
at least) raise a SyntaxError:

File "x.py", line 1
SyntaxError: 'unknown encoding: IBO-8859-1'

See also:

http://www.python.org/sf/979739

Thomas
 
S

Sylvain Thenault

Sylvain Thenault said:
Hi there !
I've noticed the following problem with python >= 2.3 (actually 2.3.4
and 2.4):

syt@musca:test$ python
Python 2.3.4 (#2, Sep 24 2004, 08:39:09) [GCC 3.3.4 (Debian 1:3.3.4-12)]
on linux2 Type "help", "copyright", "credits" or "license" for more
information.
import parser
parser.suite('# -*- coding: IBO-8859-1 -*-')
Traceback (most recent call last):
File said:
parser.suite('# -*- coding: ISO-8859-1 -*-')
<parser.st object at 0xb7e5e060>

Shouldn't parser.suite just ignore the wrong encoding declaration, or at
least raise a more appropriate exception. IMHO the first solution would
be better, since that's the behaviour of the (C) python interpreter.

Ignore the wrong declaration? All Python's that I have (on windows, at
least) raise a SyntaxError:

File "x.py", line 1
SyntaxError: 'unknown encoding: IBO-8859-1'

hum, right (with python >= 2.3 which is the first release using those
declaration...). I was sure to have checked this but I've obviously
missed something. Maybe the fact that being able to parse it anyway is
the solution I wish has driven me to write this ;) I would like this
behaviour so that pylint can check a module with a wrong encoding
declaration anyway. But at least, SyntaxError would be better than
MemoryError.

thanks
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Similar Threads


Members online

Forum statistics

Threads
473,754
Messages
2,569,525
Members
44,997
Latest member
mileyka

Latest Threads

Top