This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug ada/24212] New: Non conformity with the Ada95 language standard.
- From: "grimalseverine at yahoo dot fr" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: 5 Oct 2005 10:22:51 -0000
- Subject: [Bug ada/24212] New: Non conformity with the Ada95 language standard.
- Reply-to: gcc-bugzilla at gcc dot gnu dot org
According to the standard, the instruction S'Remainder(X,Y) must raised a
Constraint_Error is raised if Y is zero (Annex A.5.3, point 47).
The following code, if build and launch (with gnat v3.15) returns 3.0 instead
of raising an exception.
package Test is
type T_Master is digits 8;
type T is new T_Master range 0.0 .. 10.0;
subtype S is T range 0.0 .. 1.0;
end Test;
with System;
with Ada.Text_Io; use Ada.Text_Io;
with Test; use Test;
procedure Main is
typ: T;
Fraction: T:=3.0;
package Float_Io is new Ada.Text_IO.Float_IO (T);
begin
Typ:=S'Remainder(Fraction,0.0); -- must raise a CONSTRAINT_ERROR
Put("remainder: ");
Float_Io.Put(Typ);
New_Line;
end Main;
--
Summary: Non conformity with the Ada95 language standard.
Product: gcc
Version: 3.2.2
Status: UNCONFIRMED
Severity: normal
Priority: P2
Component: ada
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: grimalseverine at yahoo dot fr
GCC build triplet: ?
GCC host triplet: ?
GCC target triplet: ?
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=24212