public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug ada/34496] New: [4.2 regression] prefixed notation allows changing the value of a constant
@ 2007-12-16 13:57 ludovic at ludovic-brenta dot org
2008-01-25 20:31 ` [Bug ada/34496] [4.2 Regression] " rguenth at gcc dot gnu dot org
` (4 more replies)
0 siblings, 5 replies; 6+ messages in thread
From: ludovic at ludovic-brenta dot org @ 2007-12-16 13:57 UTC (permalink / raw)
To: gcc-bugs
with text_io;
procedure test1 is
package pak3 is
type T1 is tagged record
x0: integer;
end record;
procedure p1 (x1: access T1; val: integer);
x2: aliased constant T1 := (x0 => 3);
x3: access constant T1 := x2'access;
end pak3;
package body pak3 is
procedure p1 (x1: access T1; val: integer) is
begin
x1.x0 := val;
end p1;
end pak3;
begin
text_io.put_line(integer'image(pak3.x2.x0));
pak3.x2.p1(5); -- line 25
text_io.put_line(integer'image(pak3.x2.x0));
pak3.x3.all.p1(7); -- line 27
-- pak3.x3.p1(7); -- this one is detected
text_io.put_line(integer'image(pak3.x2.x0));
end test1;
GCC 4.1.2:
$ gnatmake -gnat05 test1
gcc-4.1 -c -gnat05 test1.adb
test1.adb:25:08: expected an access type with designated type "T1" defined at
line 5
test1.adb:25:08: found type "T1" defined at line 5
test1.adb:27:12: expected an access type with designated type "T1" defined at
line 5
test1.adb:27:12: found type "T1" defined at line 5
The error messages are not very good (they should say something like "found
type "constant T1"") but the program is indeed illegal.
GCC 4.2.2:
$ gnatmake -gnat05 test1
gcc-4.2 -c -gnat05 test1.adb
gnatbind -x test1.ali
gnatlink test1.ali
$ ./test1
3
5
7
--
Summary: [4.2 regression] prefixed notation allows changing the
value of a constant
Product: gcc
Version: 4.2.0
Status: UNCONFIRMED
Severity: normal
Priority: P3
Component: ada
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: ludovic at ludovic-brenta dot org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=34496
^ permalink raw reply [flat|nested] 6+ messages in thread
* [Bug ada/34496] [4.2 Regression] prefixed notation allows changing the value of a constant
2007-12-16 13:57 [Bug ada/34496] New: [4.2 regression] prefixed notation allows changing the value of a constant ludovic at ludovic-brenta dot org
@ 2008-01-25 20:31 ` rguenth at gcc dot gnu dot org
2008-02-01 17:02 ` jsm28 at gcc dot gnu dot org
` (3 subsequent siblings)
4 siblings, 0 replies; 6+ messages in thread
From: rguenth at gcc dot gnu dot org @ 2008-01-25 20:31 UTC (permalink / raw)
To: gcc-bugs
------- Comment #1 from rguenth at gcc dot gnu dot org 2008-01-25 20:27 -------
Regressions should have a target-milestone, Ada is not release critical.
Does this bug still happen on the trunk?
--
rguenth at gcc dot gnu dot org changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|UNCONFIRMED |WAITING
Known to work| |4.1.2
Priority|P3 |P4
Summary|[4.2 regression] prefixed |[4.2 Regression] prefixed
|notation allows changing the|notation allows changing the
|value of a constant |value of a constant
Target Milestone|--- |4.2.3
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=34496
^ permalink raw reply [flat|nested] 6+ messages in thread
* [Bug ada/34496] [4.2 Regression] prefixed notation allows changing the value of a constant
2007-12-16 13:57 [Bug ada/34496] New: [4.2 regression] prefixed notation allows changing the value of a constant ludovic at ludovic-brenta dot org
2008-01-25 20:31 ` [Bug ada/34496] [4.2 Regression] " rguenth at gcc dot gnu dot org
@ 2008-02-01 17:02 ` jsm28 at gcc dot gnu dot org
2008-03-20 1:02 ` [Bug ada/34496] [4.2/4.3 " ludovic at ludovic-brenta dot org
` (2 subsequent siblings)
4 siblings, 0 replies; 6+ messages in thread
From: jsm28 at gcc dot gnu dot org @ 2008-02-01 17:02 UTC (permalink / raw)
To: gcc-bugs
------- Comment #2 from jsm28 at gcc dot gnu dot org 2008-02-01 16:55 -------
4.2.3 is being released now, changing milestones of open bugs to 4.2.4.
--
jsm28 at gcc dot gnu dot org changed:
What |Removed |Added
----------------------------------------------------------------------------
Target Milestone|4.2.3 |4.2.4
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=34496
^ permalink raw reply [flat|nested] 6+ messages in thread
* [Bug ada/34496] [4.2/4.3 Regression] prefixed notation allows changing the value of a constant
2007-12-16 13:57 [Bug ada/34496] New: [4.2 regression] prefixed notation allows changing the value of a constant ludovic at ludovic-brenta dot org
2008-01-25 20:31 ` [Bug ada/34496] [4.2 Regression] " rguenth at gcc dot gnu dot org
2008-02-01 17:02 ` jsm28 at gcc dot gnu dot org
@ 2008-03-20 1:02 ` ludovic at ludovic-brenta dot org
2008-05-09 9:49 ` sam at gcc dot gnu dot org
2008-05-09 13:18 ` andreasmeier80 at gmx dot de
4 siblings, 0 replies; 6+ messages in thread
From: ludovic at ludovic-brenta dot org @ 2008-03-20 1:02 UTC (permalink / raw)
To: gcc-bugs
------- Comment #3 from ludovic at ludovic-brenta dot org 2008-03-20 01:01 -------
Still present in 4.3.0:
$ gnatmake -gnat05 test1
gcc-4.3 -c -gnat05 test1.adb
gnatbind -x test1.ali
gnatlink test1.ali
$ ./test1
3
raised STORAGE_ERROR : stack overflow (or erroneous memory access)
I am not concerned about the stack overflow because the program is illegal
anyway.
--
ludovic at ludovic-brenta dot org changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|WAITING |UNCONFIRMED
Known to fail| |4.2.2 4.3.0
Summary|[4.2 Regression] prefixed |[4.2/4.3 Regression]
|notation allows changing the|prefixed notation allows
|value of a constant |changing the value of a
| |constant
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=34496
^ permalink raw reply [flat|nested] 6+ messages in thread
* [Bug ada/34496] [4.2/4.3 Regression] prefixed notation allows changing the value of a constant
2007-12-16 13:57 [Bug ada/34496] New: [4.2 regression] prefixed notation allows changing the value of a constant ludovic at ludovic-brenta dot org
` (2 preceding siblings ...)
2008-03-20 1:02 ` [Bug ada/34496] [4.2/4.3 " ludovic at ludovic-brenta dot org
@ 2008-05-09 9:49 ` sam at gcc dot gnu dot org
2008-05-09 13:18 ` andreasmeier80 at gmx dot de
4 siblings, 0 replies; 6+ messages in thread
From: sam at gcc dot gnu dot org @ 2008-05-09 9:49 UTC (permalink / raw)
To: gcc-bugs
------- Comment #4 from sam at gcc dot gnu dot org 2008-05-09 09:48 -------
This appears to be fixed in SVN trunk:
25. pak3.x2.p1(5); -- line 25
|
>>> actual for "x1" must be a variable
27. pak3.x3.all.p1(7); -- line 27
|
>>> actual for "x1" must be a variable
--
sam at gcc dot gnu dot org changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|UNCONFIRMED |RESOLVED
Resolution| |FIXED
Target Milestone|4.2.4 |4.4.0
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=34496
^ permalink raw reply [flat|nested] 6+ messages in thread
* [Bug ada/34496] [4.2/4.3 Regression] prefixed notation allows changing the value of a constant
2007-12-16 13:57 [Bug ada/34496] New: [4.2 regression] prefixed notation allows changing the value of a constant ludovic at ludovic-brenta dot org
` (3 preceding siblings ...)
2008-05-09 9:49 ` sam at gcc dot gnu dot org
@ 2008-05-09 13:18 ` andreasmeier80 at gmx dot de
4 siblings, 0 replies; 6+ messages in thread
From: andreasmeier80 at gmx dot de @ 2008-05-09 13:18 UTC (permalink / raw)
To: gcc-bugs
------- Comment #5 from andreasmeier80 at gmx dot de 2008-05-09 13:18 -------
Perhaps it is a good idea to add the testcase to the testsuite
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=34496
^ permalink raw reply [flat|nested] 6+ messages in thread
end of thread, other threads:[~2008-05-09 13:18 UTC | newest]
Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2007-12-16 13:57 [Bug ada/34496] New: [4.2 regression] prefixed notation allows changing the value of a constant ludovic at ludovic-brenta dot org
2008-01-25 20:31 ` [Bug ada/34496] [4.2 Regression] " rguenth at gcc dot gnu dot org
2008-02-01 17:02 ` jsm28 at gcc dot gnu dot org
2008-03-20 1:02 ` [Bug ada/34496] [4.2/4.3 " ludovic at ludovic-brenta dot org
2008-05-09 9:49 ` sam at gcc dot gnu dot org
2008-05-09 13:18 ` andreasmeier80 at gmx dot de
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).