[cfe-dev] Narrowing in initalizer lists
Richard Smith
richard at metafoo.co.uk
Fri Oct 14 11:13:02 PDT 2011
Hi,
On Fri, October 14, 2011 14:08, Christopher Jefferson wrote:
> I just wanted to quickly check this bug (which occurs in boost).
>
> clang -std=c++0x forbids:
>
> int f(); unsigned int vals[] = {f(),f()};
>
> As in initalizer lists, int cannot be narrowed to int.
int cannot be narrowed to *unsigned* int.
> Just wanted to double check, is clang definitely in the right here?
Yes. This is a narrowing conversion, even though the conversion from int to
unsigned int has a well-defined meaning for all values of type int.
Richard
More information about the cfe-dev
mailing list