Gabriel Genellina wrote:
Ok, I'll file one then.
>
It's not so clear what's the intended usage - chars are also integers
in C. (I prefer the current behavior, but certainly it may be wrong in
several places).
>
Yes, true, but if you intend to use it as an integer, wouldn't you use a
numeric value instead of a character literal?
En Tue, 10 Jun 2008 09:44:13 -0300, Gabriel Rossetti
<gabriel.rosset ti@arimaz.comes cribió:
>
>
Very probably - bug reports outside the tracker are likely to go
unnoticed or forgotten.
>
<gabriel.rosset ti@arimaz.comes cribió:
>
>I wanted to use the h2py.py script (Tools/scripts/h2py.py) and it
>didn't like char litterals :
>>
>Skipping: PC_ERROR = ord()
>>
>where my *.h file contained :
>>
>#define PC_ERROR '0'
>>
>I searched the web and found a post with the same error :
>>
>http://mail.python.org/pipermail/pyt...er/340608.html
>>
>but it got no replies, I tried the fix and it works. I have the
>following questions:
>>
>1) Why did it not get any attention, is something wrong with it?
>2) If nothing is wrong, did the fix not get applied because a bug
>report wasn't filed?
>didn't like char litterals :
>>
>Skipping: PC_ERROR = ord()
>>
>where my *.h file contained :
>>
>#define PC_ERROR '0'
>>
>I searched the web and found a post with the same error :
>>
>http://mail.python.org/pipermail/pyt...er/340608.html
>>
>but it got no replies, I tried the fix and it works. I have the
>following questions:
>>
>1) Why did it not get any attention, is something wrong with it?
>2) If nothing is wrong, did the fix not get applied because a bug
>report wasn't filed?
Very probably - bug reports outside the tracker are likely to go
unnoticed or forgotten.
>
>3) Isn't turning a char literal into the ordinal value not contrary
>to what a C programmer had in mind when he/she defined it? I mean if
>you define a char literal then in python you would have used a string
>value :
>>
>#define PC_ERROR '0'
>>
>would become :
>>
>PC_ERROR = '0'
>>
>in python, and if you intended to use the char type for an 8 bit
>numerical value you would have done :
>>
>#define PC_ERROR 0x30
>>
>where 0x30 is the '0' ascii hex value, so shouldn'it the line in the
>diff (see the post) be :
>>
>body = p_char.sub("'\\ 1'", body)
>>
>instead of :
>>
>body = p_char.sub("ord ('\\1')", body)
>to what a C programmer had in mind when he/she defined it? I mean if
>you define a char literal then in python you would have used a string
>value :
>>
>#define PC_ERROR '0'
>>
>would become :
>>
>PC_ERROR = '0'
>>
>in python, and if you intended to use the char type for an 8 bit
>numerical value you would have done :
>>
>#define PC_ERROR 0x30
>>
>where 0x30 is the '0' ascii hex value, so shouldn'it the line in the
>diff (see the post) be :
>>
>body = p_char.sub("'\\ 1'", body)
>>
>instead of :
>>
>body = p_char.sub("ord ('\\1')", body)
It's not so clear what's the intended usage - chars are also integers
in C. (I prefer the current behavior, but certainly it may be wrong in
several places).
>
numeric value instead of a character literal?