On 8 August 2017 at 09:51, Prathamesh Kulkarni
<prathamesh.kulka...@linaro.org> wrote:
> On 1 August 2017 at 00:10, Prathamesh Kulkarni
> <prathamesh.kulka...@linaro.org> wrote:
>> On 11 July 2017 at 17:59, Prathamesh Kulkarni
>> <prathamesh.kulka...@linaro.org> wrote:
>>> On 13 June 2017 at 01:47, Joseph Myers <jos...@codesourcery.com> wrote:
>>>> This is OK with one fix:
>>>>
>>>>> +C ObjC Var(warn_enum_conversion) Init(0) Warning LangEnabledBy(C 
>>>>> Objc,Wall)
>>>>
>>>> I believe the LangEnabledBy arguments are case-sensitive, so you need to
>>>> have ObjC not Objc there for it to work correctly.  (*.opt parsing isn't
>>>> very good at detecting typos and giving errors rather than silently
>>>> ignoring things.)
>>> Hi,
>>> Sorry for the late response, I was on a vacation.
>>> The attached patch is rebased and bootstrap+tested on 
>>> x86_64-unknown-linux-gnu.
>>> I have modified it slightly to not warn for enums with different names
>>> but having same value ranges.
>>> For eg:
>>> enum e1 { e1_1, e1_2 };
>>> enum e2 { e2_1, e2_2 };
>>>
>>> enum e1 x = e2_1;
>>> With this version, there would be no warning for the above assignment
>>> since both e1 and e2 have
>>> same value ranges.  Is that OK ?
>>>
>>> The patch has following fallouts in the testsuite:
>>>
>>> a) libgomp:
>>> I initially assume it was a false positive because I thought enum
>>> gomp_schedule_type
>>> and enum omp_sched_t have same value-ranges but it looks like omp_sched_t
>>> has range [1, 4] while gomp_schedule_type has range [0, 4] with one
>>> extra element.
>>> Is the warning then correct for this case ?
>>>
>>> b) libgfortran:
>>> i) Implicit conversion from unit_mode to file_mode
>>> ii) Implicit conversion from unit_sign_s to unit_sign.
>>> I suppose the warning is OK for these cases since unit_mode, file_mode
>>> have different value-ranges and similarly for unit_sign_s, unit_sign ?
>>>
>>> Also I tested the warning by compiling the kernel for x86_64 with
>>> allmodconifg (attached), and there
>>> have been quite few instances of the warning (attached). I have been
>>> through few cases which I don't think are false positives
>>> but I wonder then whether we should relegate the warning to Wextra instead ?
>> ping: https://gcc.gnu.org/ml/gcc-patches/2017-07/msg00514.html
> ping * 2 https://gcc.gnu.org/ml/gcc-patches/2017-07/msg00514.html
ping * 3 https://gcc.gnu.org/ml/gcc-patches/2017-07/msg00514.html

Thanks,
Prathamesh
>
> Thanks,
> Prathamesh
>>
>> Thanks,
>> Prathamesh
>>>
>>> Thanks,
>>> Prathamesh
>>>>
>>>> --
>>>> Joseph S. Myers
>>>> jos...@codesourcery.com

Reply via email to