Sounds like the majority of people would prefer to use { ~ }. We should 
probably codify that in our code style guidelines.

> On Sep 23, 2024, at 5:15 PM, Gerald Squelart via webkit-dev 
> <webkit-dev@lists.webkit.org> wrote:
> 
> +1 for { } as well, for all the mentioned good reasons.
> 
> But just to be complete, there's one exception that should probably be noted 
> if/when we document this:
> For classes that have a constructor taking `std::initializer_list<T>` and 
> other constructors that take `T` (+ conversions), using braced-initialization 
> will *always* call the initializer_list one! In this case, we'd need to use 
> parentheses if another constructor was wanted. E.g.: `std::vector<int> vb { 
> 3, 2 }` -> [ 3 2 ], vs `std::vector<int> vp(3, 2);` -> [ 2 2 2 ] (3 copies of 
> value 2)!
> At a glance, I haven't found WK classes that have both types of competing 
> constructors together, so hopefully this should be a rare issue. May be worth 
> another guideline, like "If you define a constructor taking 
> std::initializer_list<type>, avoid defining other constructors for similar 
> types"?
> 
> Cheers,
> Gerald
> 
>> On 24 Sep 2024, at 02:35, Geoff Garen via webkit-dev 
>> <webkit-dev@lists.webkit.org> wrote:
>> 
>> +1 for { } because I like catching bugs.
>> 
>> But also: If Chris is right that { } is the only way to handle types without 
>> constructors, and the goal is to pick one syntax, then { } is the only 
>> possible solution, because standardizing on = would require exceptions for 
>> types without constructors.
>> 
>> Thanks,
>> Geoff
>> 
>>> On Sep 20, 2024, at 2:29 PM, Yusuke Suzuki via webkit-dev 
>>> <webkit-dev@lists.webkit.org> wrote:
>>> 
>>> I prefer { } style.
>>> It can catch implicit narrowing bugs, which does not work with = style.
>>> 
>>> Best regards,
>>> - Yusuke
>>> 
>>>> On Sep 19, 2024, at 4:13 PM, Jean-Yves Avenard via webkit-dev 
>>>> <webkit-dev@lists.webkit.org> wrote:
>>>> 
>>>> 
>>>> 
>>>>> On 20 Sep 2024, at 7:55 AM, Ryosuke Niwa via webkit-dev 
>>>>> <webkit-dev@lists.webkit.org> wrote:
>>>>> 
>>>>> 
>>>>> Should we do:
>>>>> 
>>>>> struct Foo {
>>>>>     int bar = 0;
>>>>> }
>>>>> 
>>>>> Or
>>>>> 
>>>>> struct Foo {
>>>>>     int bar { 0 };
>>>>> }
>>>>> 
>>>>> We do both at the moment.
>>>>> 
>>>>> - R. Niwa
>>>> 
>>>> I think `int bar = 0` reads better.
>>>> 
>>>> I only ever see (and use) { } and I thought that was the proper coding 
>>>> style.
>>>> 
>>>> I’m surprised it’s not in our guidelines. 
>>>> 
>>>> Jean-Yves
>>>> _______________________________________________
>>>> webkit-dev mailing list
>>>> webkit-dev@lists.webkit.org
>>>> https://lists.webkit.org/mailman/listinfo/webkit-dev
>>> _______________________________________________
>>> webkit-dev mailing list
>>> webkit-dev@lists.webkit.org
>>> https://lists.webkit.org/mailman/listinfo/webkit-dev
>> 
>> _______________________________________________
>> webkit-dev mailing list
>> webkit-dev@lists.webkit.org
>> https://lists.webkit.org/mailman/listinfo/webkit-dev
> 
> _______________________________________________
> webkit-dev mailing list
> webkit-dev@lists.webkit.org
> https://lists.webkit.org/mailman/listinfo/webkit-dev

_______________________________________________
webkit-dev mailing list
webkit-dev@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-dev

Reply via email to