On Mai 17 2017, Martin Sebor <mse...@gmail.com> wrote:

> diff --git a/gcc/testsuite/g++.dg/ext/utf16-4.C 
> b/gcc/testsuite/g++.dg/ext/utf16-4.C
> index e8d6531..2c4377c 100644
> --- a/gcc/testsuite/g++.dg/ext/utf16-4.C
> +++ b/gcc/testsuite/g++.dg/ext/utf16-4.C
> @@ -10,9 +10,9 @@ const static char16_t       c2 = u'\U00064321';     /* { 
> dg-warning "constant too long" }
>  const static char16_t        c3 = 'a';
>  const static char16_t        c4 = U'a';
>  const static char16_t        c5 = U'\u2029';
> -const static char16_t        c6 = U'\U00064321';     /* { dg-warning 
> "implicitly truncated" } */
> +const static char16_t        c6 = U'\U00064321';     /* { dg-warning 
> "conversion from .char32_t. to .char16_t. changes value from .410401. to 
> .17185." } */
>  const static char16_t        c7 = L'a';
>  const static char16_t        c8 = L'\u2029';
> -const static char16_t        c9 = L'\U00064321';     /* { dg-warning 
> "implicitly truncated" "" { target { 4byte_wchar_t } } } */
> +const static char16_t        c9 = L'\U00064321';     /* { dg-warning 
> "unsigned conversion from .wchar_t. to .char16_t. changes value from .410401. 
> to .17185." "" { target { 4byte_wchar_t } } } */

That fails on aarch64.

FAIL: g++.dg/ext/utf16-4.C  -std=c++11  (test for warnings, line 16)
FAIL: g++.dg/ext/utf16-4.C  -std=c++11 (test for excess errors)
Excess errors:
/opt/gcc/gcc-20170528/gcc/testsuite/g++.dg/ext/utf16-4.C:16:28: warning: 
conversion from 'wchar_t' to 'char16_t' changes value from '410401' to '17185' 
[-Woverflow]

Andreas.

-- 
Andreas Schwab, sch...@linux-m68k.org
GPG Key fingerprint = 58CA 54C7 6D53 942B 1756  01D3 44D5 214B 8276 4ED5
"And now for something completely different."

Reply via email to