-- Start of processing for Skip_Wide
begin
- Discard := WC_Skip (Skip_Char, Wide_Character_Encoding_Method);
+ -- Capture invalid wide characters errors since we are going to discard
+ -- the result anyway. We just want to move past it.
+
+ begin
+ Discard := WC_Skip (Skip_Char, Wide_Character_Encoding_Method);
+ exception
+ when Constraint_Error =>
+ null;
+ end;
+
Wide_Char_Byte_Count := Wide_Char_Byte_Count + Nat (P - P_Init - 1);
end Skip_Wide;
-- Start of processing for Skip_Wide
begin
- Discard := WC_Skip (Skip_Char, Wide_Character_Encoding_Method);
+ -- Capture invalid wide characters errors since we are going to discard
+ -- the result anyway. We just want to move past it.
+
+ begin
+ Discard := WC_Skip (Skip_Char, Wide_Character_Encoding_Method);
+ exception
+ when Constraint_Error =>
+ null;
+ end;
+
Wide_Char_Byte_Count := Wide_Char_Byte_Count + Nat (P - P_Init - 1);
end Skip_Wide;
-- On entry, S (P) points to an ESC character for a wide character escape
-- sequence or to an upper half character if the encoding method uses the
-- upper bit, or to a left bracket if the brackets encoding method is in
- -- use. On exit, P is bumped past the wide character sequence. No error
- -- checking is done, since this is only used on escape sequences generated
- -- by Set_Wide, which are known to be correct.
+ -- use. On exit, P is bumped past the wide character sequence.
procedure Skip_Wide (S : Source_Buffer_Ptr; P : in out Source_Ptr);
-- Similar to the above procedure, but operates on a source buffer