diff options
author | Arnaud Charlet <charlet@adacore.com> | 2020-06-29 04:18:27 -0400 |
---|---|---|
committer | Pierre-Marie de Rodat <derodat@adacore.com> | 2020-10-16 03:31:32 -0400 |
commit | cfe989ca49dab9a3fda9e5401a932db168848304 (patch) | |
tree | 0784af1b59e25c05a9b3e2d216b67a5c7ec56cc5 /gcc | |
parent | 56bedb147ec7829c11f20fb613ef5780ad106e4d (diff) | |
download | gcc-cfe989ca49dab9a3fda9e5401a932db168848304.zip gcc-cfe989ca49dab9a3fda9e5401a932db168848304.tar.gz gcc-cfe989ca49dab9a3fda9e5401a932db168848304.tar.bz2 |
[Ada] Convert from UTF_16 to UTF_8 fails for large values
gcc/ada/
PR ada/95953
* libgnat/a-suenco.adb (Convert): Fix handling of third UTF-8
byte.
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/ada/libgnat/a-suenco.adb | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/gcc/ada/libgnat/a-suenco.adb b/gcc/ada/libgnat/a-suenco.adb index 6d30f84..0b10a63 100644 --- a/gcc/ada/libgnat/a-suenco.adb +++ b/gcc/ada/libgnat/a-suenco.adb @@ -398,7 +398,7 @@ package body Ada.Strings.UTF_Encoding.Conversions is or Shift_Right (yyyyyyyy, 4)); Result (Len + 3) := Character'Val - (2#10_000000# or Shift_Left (yyyyyyyy and 2#1111#, 4) + (2#10_000000# or Shift_Left (yyyyyyyy and 2#1111#, 2) or Shift_Right (xxxxxxxx, 6)); Result (Len + 4) := Character'Val |