Another one:
PROCEDURE CC1204A IS
BEGIN
DECLARE
TYPE ARR IS ARRAY (natural RANGE <>) OF CHARACTER;
TYPE RECD (C : natural := 1) IS
RECORD
C1 : ARR (1..C);
END RECORD;
X1 : RECD;
GENERIC
P2 : IN RECD;
PROCEDURE PROC;
PROCEDURE PROC IS
BEGIN
null;
END PROC;
BEGIN
DECLARE
PROCEDURE PR IS NEW PROC
( P2 => X1 );
BEGIN
null;
END;
END;
END CC1204A;
Again see PR 22368 for the patch which I used to find this.
--
Summary: Ada produces mis-match (non compatible) types in
MODIFY_EXPR
Product: gcc
Version: 4.1.0
Status: UNCONFIRMED
Severity: normal
Priority: P2
Component: ada
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: pinskia at gcc dot gnu dot org
CC: bosch at gcc dot gnu dot org,gcc-bugs at gcc dot gnu dot
org
OtherBugsDependingO 22368
nThis:
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=22418