On Fri, Jan 28, 2011 at 12:20 AM, Vitja Makarov <vitja.maka...@gmail.com> wrote:
> 2011/1/28 Robert Bradshaw <rober...@math.washington.edu>:
>> On Thu, Jan 27, 2011 at 10:46 PM, Vitja Makarov <vitja.maka...@gmail.com> 
>> wrote:
>>> 2011/1/28 Vitja Makarov <vitja.maka...@gmail.com>:
>>>> 2011/1/28 Stefan Behnel <stefan...@behnel.de>:
>>>>> Vitja Makarov, 28.01.2011 07:19:
>>>>>> 2011/1/27 Stefan Behnel:
>>>>>>> Vitja Makarov, 27.01.2011 11:19:
>>>>>>>> https://github.com/vitek/cython/blob/master/Cython/Compiler/ExprNodes.py#L4995
>>>>>>>>
>>>>>>>> ....
>>>>>>>>       def analyse_types(self, env):
>>>>>>>>           if not self.label_num:
>>>>>>>>               error(self.pos, "'yield' not supported here")
>>>>>>>> ....
>>>>>>>>
>>>>>>>> This error message should be replaced with assertion on self.label_num
>>>>>>>> or internal error.
>>>>>>>
>>>>>>> Yes, if handled by the transform already.
>>>>>>>
>>>>>>
>>>>>> I tried to handle IfStatNode terminator here:
>>>>>>
>>>>>> https://github.com/vitek/cython/commits/uninitialized
>>>>>>
>>>>>
>>>>>
>>>>>> About tests I the easiest way is to add compiler directive -Werror
>>>>>
>>>>> We already have an "errors are fatal" option, but I like this one.
>>>>>
>>>>
>>>> This one means treat warnings as errors.
>>>>
>>>>>
>>>>>> And add it in cython header comment
>>>>>>
>>>>>> # cython: werror=True
>>>>>
>>>>> Or rather "warnings_are_errors=True".
>>>>
>>>>> Cython/Options.py:
>>>>>     'warn': None,
>>>>>     'warn.undeclared': False,
>>>>
>>>> Or better warn.errors
>>>>
>>>> But I'm wondering how to get access to
>>>>   env.directives
>>>>
>>>> inside Erros.warning
>>>>
>>>
>>> So maybe it would be better to have -Werror command line switch?
>>
>> Directives can be enabled from the command line, so I'd rather it be a
>> directive. +1 to warnings_are_errors  over the more cryptic (for those
>> not familiar with gcc) werror.
>>
>
> Command line options are stored in Cython.Options,
> Compiler directives in environment is it accessible from Cython.Errors?

That is a good point. No, Cython.Errors is "global" wheras directives
(may) have smaller scope. As it's not anything that influences the
behavior of the program itself, I'm less adamant that there be a way
to express it in the source code file.

- Robert
_______________________________________________
Cython-dev mailing list
Cython-dev@codespeak.net
http://codespeak.net/mailman/listinfo/cython-dev

Reply via email to