public inbox for gcc-bugs@sourceware.org help / color / mirror / Atom feed
* [Bug ada/22328] Ada produces mis-match (non compatible) types in MODIFY_EXPR [not found] <bug-22328-6528@http.gcc.gnu.org/bugzilla/> @ 2005-10-21 15:46 ` cvs-commit at gcc dot gnu dot org 2005-10-21 15:49 ` cvs-commit at gcc dot gnu dot org 2005-10-21 15:54 ` ebotcazou at gcc dot gnu dot org 2 siblings, 0 replies; 9+ messages in thread From: cvs-commit at gcc dot gnu dot org @ 2005-10-21 15:46 UTC (permalink / raw) To: gcc-bugs [-- Warning: decoded text below may be mangled, UTF-8 assumed --] [-- Attachment #1: Type: text/plain, Size: 1376 bytes --] ------- Comment #10 from cvs-commit at gcc dot gnu dot org 2005-10-21 15:46 ------- Subject: Bug 22328 CVSROOT: /cvs/gcc Module name: gcc Changes by: ebotcazou@gcc.gnu.org 2005-10-21 15:46:19 Modified files: gcc/ada : ChangeLog utils2.c gigi.h trans.c Log message: PR ada/21937 PR ada/22328 PR ada/22381 PR ada/22383 PR ada/22419 PR ada/22420 * utils2.c (build_return_expr): New helper function. * gigi.h (build_return_expr): Declare it. * trans.c (Subprogram_Body_to_gnu): Use build_return_expr instead of manually building the RETURN_EXPR tree. (call_to_gnu): Pass MODIFY_EXPR through build_binary_op. (gnat_to_gnu) <N_Return_Statement>: Pass MODIFY_EXPR through build_binary_op for the "target pointer" case. Use build_return_expr instead of manually building the RETURN_EXPR tree. Patches: http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/ada/ChangeLog.diff?cvsroot=gcc&r1=1.685&r2=1.686 http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/ada/utils2.c.diff?cvsroot=gcc&r1=1.50&r2=1.51 http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/ada/gigi.h.diff?cvsroot=gcc&r1=1.38&r2=1.39 http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/ada/trans.c.diff?cvsroot=gcc&r1=1.102&r2=1.103 -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=22328 ^ permalink raw reply [flat|nested] 9+ messages in thread
* [Bug ada/22328] Ada produces mis-match (non compatible) types in MODIFY_EXPR [not found] <bug-22328-6528@http.gcc.gnu.org/bugzilla/> 2005-10-21 15:46 ` [Bug ada/22328] Ada produces mis-match (non compatible) types in MODIFY_EXPR cvs-commit at gcc dot gnu dot org @ 2005-10-21 15:49 ` cvs-commit at gcc dot gnu dot org 2005-10-21 15:54 ` ebotcazou at gcc dot gnu dot org 2 siblings, 0 replies; 9+ messages in thread From: cvs-commit at gcc dot gnu dot org @ 2005-10-21 15:49 UTC (permalink / raw) To: gcc-bugs [-- Warning: decoded text below may be mangled, UTF-8 assumed --] [-- Attachment #1: Type: text/plain, Size: 1557 bytes --] ------- Comment #11 from cvs-commit at gcc dot gnu dot org 2005-10-21 15:48 ------- Subject: Bug 22328 CVSROOT: /cvs/gcc Module name: gcc Branch: gcc-4_0-branch Changes by: ebotcazou@gcc.gnu.org 2005-10-21 15:47:47 Modified files: gcc/ada : ChangeLog utils2.c gigi.h trans.c Log message: PR ada/21937 PR ada/22328 PR ada/22381 PR ada/22383 PR ada/22419 PR ada/22420 * utils2.c (build_return_expr): New helper function. * gigi.h (build_return_expr): Declare it. * trans.c (Subprogram_Body_to_gnu): Use build_return_expr instead of manually building the RETURN_EXPR tree. (call_to_gnu): Pass MODIFY_EXPR through build_binary_op. (gnat_to_gnu) <N_Return_Statement>: Pass MODIFY_EXPR through build_binary_op for the "target pointer" case. Use build_return_expr instead of manually building the RETURN_EXPR tree. Patches: http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/ada/ChangeLog.diff?cvsroot=gcc&only_with_tag=gcc-4_0-branch&r1=1.638.4.16&r2=1.638.4.17 http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/ada/utils2.c.diff?cvsroot=gcc&only_with_tag=gcc-4_0-branch&r1=1.44.6.1&r2=1.44.6.2 http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/ada/gigi.h.diff?cvsroot=gcc&only_with_tag=gcc-4_0-branch&r1=1.33.10.1&r2=1.33.10.2 http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/ada/trans.c.diff?cvsroot=gcc&only_with_tag=gcc-4_0-branch&r1=1.90.6.3&r2=1.90.6.4 -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=22328 ^ permalink raw reply [flat|nested] 9+ messages in thread
* [Bug ada/22328] Ada produces mis-match (non compatible) types in MODIFY_EXPR [not found] <bug-22328-6528@http.gcc.gnu.org/bugzilla/> 2005-10-21 15:46 ` [Bug ada/22328] Ada produces mis-match (non compatible) types in MODIFY_EXPR cvs-commit at gcc dot gnu dot org 2005-10-21 15:49 ` cvs-commit at gcc dot gnu dot org @ 2005-10-21 15:54 ` ebotcazou at gcc dot gnu dot org 2 siblings, 0 replies; 9+ messages in thread From: ebotcazou at gcc dot gnu dot org @ 2005-10-21 15:54 UTC (permalink / raw) To: gcc-bugs ------- Comment #12 from ebotcazou at gcc dot gnu dot org 2005-10-21 15:54 ------- See http://gcc.gnu.org/ml/gcc-patches/2005-10/msg01309.html -- ebotcazou at gcc dot gnu dot org changed: What |Removed |Added ---------------------------------------------------------------------------- Status|ASSIGNED |RESOLVED Resolution| |FIXED Target Milestone|--- |4.1.0 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=22328 ^ permalink raw reply [flat|nested] 9+ messages in thread
* [Bug ada/22328] New: Ada produces mistmatched (non compatible) types in MODIFY_EXPR @ 2005-07-06 19:28 pinskia at gcc dot gnu dot org 2005-07-07 18:31 ` [Bug ada/22328] Ada produces mis-match " pinskia at gcc dot gnu dot org ` (5 more replies) 0 siblings, 6 replies; 9+ messages in thread From: pinskia at gcc dot gnu dot org @ 2005-07-06 19:28 UTC (permalink / raw) To: gcc-bugs Take the following Ada code: package Test1 is type TSS_Name_Type is new String (1 .. 2); function Get_TSS_Name return TSS_Name_Type; end test1; package body Test1 is function Get_TSS_Name return TSS_Name_Type is begin return " "; end Get_TSS_Name; end Test1; --(reduced from exp_tss.ad?). We get types which are not considered compatible by lang_hooks.types_compatible_p. The types we get are for the right hand side (the STRING_CST): <array_type 0x42549828 test1__get_tss_name__T1b type <integer_type 0x4253bbc8 character sizes-gimplified public unsigned QI size <integer_cst 0x42508200 constant invariant visited 8> unit size <integer_cst 0x42508220 constant invariant 1> user align 8 symtab 0 alias set -1 precision 8 min <integer_cst 0x42535f80 0> max <integer_cst 0x42535fa0 255> RM size <integer_cst 0x42508200 8> pointer_to_this <pointer_type 0x4253be80 access_character>> sizes-gimplified HI size <integer_cst 0x42508360 type <integer_type 0x4250f1d0 bit_size_type> constant invariant 16> unit size <integer_cst 0x42508380 type <integer_type 0x4250f15c long int> constant invariant 2> user align 8 symtab 0 alias set 0 domain <integer_type 0x42549740 type <integer_type 0x4250f15c long int sizes-gimplified public visited sizetype SI size <integer_cst 0x425084a0 constant invariant 32> unit size <integer_cst 0x42508160 constant invariant 4> align 32 symtab 0 alias set -1 precision 32 min <integer_cst 0x425088c0 -2147483648> max <integer_cst 0x42508940 2147483647>> sizes-gimplified SI size <integer_cst 0x425084a0 32> unit size <integer_cst 0x42508160 4> align 32 symtab 0 alias set -1 precision 32 min <integer_cst 0x42508220 1> max <integer_cst 0x42508380 2> index type <integer_type 0x425496cc type <integer_type 0x4250f488 integer> SI size <integer_cst 0x425084a0 32> unit size <integer_cst 0x42508160 4> align 32 symtab 0 alias set -1 precision 32 min <integer_cst 0x42508a20 1> max <integer_cst 0x4251e080 2>>>> For the left hand side (<retval>): <array_type 0x42549488 test1__tss_name_type type <integer_type 0x4253bbc8 character sizes-gimplified public unsigned QI size <integer_cst 0x42508200 constant invariant visited 8> unit size <integer_cst 0x42508220 constant invariant 1> user align 8 symtab 0 alias set -1 precision 8 min <integer_cst 0x42535f80 0> max <integer_cst 0x42535fa0 255> RM size <integer_cst 0x42508200 8> pointer_to_this <pointer_type 0x4253be80 access_character>> sizes-gimplified visited nonaliased-component HI size <integer_cst 0x42508360 type <integer_type 0x4250f1d0 bit_size_type> constant invariant 16> unit size <integer_cst 0x42508380 type <integer_type 0x4250f15c long int> constant invariant 2> user align 8 symtab 0 alias set 0 domain <integer_type 0x425493a0 type <integer_type 0x4250f15c long int sizes-gimplified public visited sizetype SI size <integer_cst 0x425084a0 constant invariant 32> unit size <integer_cst 0x42508160 constant invariant 4> align 32 symtab 0 alias set -1 precision 32 min <integer_cst 0x425088c0 -2147483648> max <integer_cst 0x42508940 2147483647>> sizes-gimplified visited SI size <integer_cst 0x425084a0 32> unit size <integer_cst 0x42508160 4> align 32 symtab 0 alias set -1 precision 32 min <integer_cst 0x42508220 1> max <integer_cst 0x42508380 2> index type <integer_type 0x425492b8 test1__Ttss_name_typeP1___XDLU_1__2 type <integer_type 0x4250f488 integer> sizes-gimplified visited unsigned SI size <integer_cst 0x425084a0 32> unit size <integer_cst 0x42508160 4> user align 32 symtab 0 alias set -1 precision 32 min <integer_cst 0x42508a20 1> max <integer_cst 0x4251e080 2> RM size <integer_cst 0x4251e0a0 constant invariant 2>>> pointer_to_this <pointer_type 0x425499f8>> -- Summary: Ada produces mistmatched (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: gcc-bugs at gcc dot gnu dot org http://gcc.gnu.org/bugzilla/show_bug.cgi?id=22328 ^ permalink raw reply [flat|nested] 9+ messages in thread
* [Bug ada/22328] Ada produces mis-match (non compatible) types in MODIFY_EXPR 2005-07-06 19:28 [Bug ada/22328] New: Ada produces mistmatched " pinskia at gcc dot gnu dot org @ 2005-07-07 18:31 ` pinskia at gcc dot gnu dot org 2005-07-08 15:29 ` pinskia at gcc dot gnu dot org ` (4 subsequent siblings) 5 siblings, 0 replies; 9+ messages in thread From: pinskia at gcc dot gnu dot org @ 2005-07-07 18:31 UTC (permalink / raw) To: gcc-bugs -- What |Removed |Added ---------------------------------------------------------------------------- Summary|Ada produces missed match |Ada produces mis-match (non |(non compatible) types in |compatible) types in |MODIFY_EXPR |MODIFY_EXPR http://gcc.gnu.org/bugzilla/show_bug.cgi?id=22328 ^ permalink raw reply [flat|nested] 9+ messages in thread
* [Bug ada/22328] Ada produces mis-match (non compatible) types in MODIFY_EXPR 2005-07-06 19:28 [Bug ada/22328] New: Ada produces mistmatched " pinskia at gcc dot gnu dot org 2005-07-07 18:31 ` [Bug ada/22328] Ada produces mis-match " pinskia at gcc dot gnu dot org @ 2005-07-08 15:29 ` pinskia at gcc dot gnu dot org 2005-07-08 15:39 ` bosch at adacore dot com ` (3 subsequent siblings) 5 siblings, 0 replies; 9+ messages in thread From: pinskia at gcc dot gnu dot org @ 2005-07-08 15:29 UTC (permalink / raw) To: gcc-bugs -- What |Removed |Added ---------------------------------------------------------------------------- OtherBugsDependingO| |22368 nThis| | http://gcc.gnu.org/bugzilla/show_bug.cgi?id=22328 ^ permalink raw reply [flat|nested] 9+ messages in thread
* [Bug ada/22328] Ada produces mis-match (non compatible) types in MODIFY_EXPR 2005-07-06 19:28 [Bug ada/22328] New: Ada produces mistmatched " pinskia at gcc dot gnu dot org 2005-07-07 18:31 ` [Bug ada/22328] Ada produces mis-match " pinskia at gcc dot gnu dot org 2005-07-08 15:29 ` pinskia at gcc dot gnu dot org @ 2005-07-08 15:39 ` bosch at adacore dot com 2005-07-08 15:44 ` bosch at gcc dot gnu dot org ` (2 subsequent siblings) 5 siblings, 0 replies; 9+ messages in thread From: bosch at adacore dot com @ 2005-07-08 15:39 UTC (permalink / raw) To: gcc-bugs ------- Additional Comments From bosch at adacore dot com 2005-07-08 15:39 ------- Subject: Re: Ada produces mis-match (non compatible) types in MODIFY_EXPR Something like the attached patch (untested) should work. I've got child duty today, so won't be able to test this until at least tonight. This is slightly different from the code that was earlier removed, in that it doesn't check recursively. Nested arrays and records should always have proper types. -Geert ------- Additional Comments From bosch at adacore dot com 2005-07-08 15:39 ------- Created an attachment (id=9230) --> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=9230&action=view) -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=22328 ^ permalink raw reply [flat|nested] 9+ messages in thread
* [Bug ada/22328] Ada produces mis-match (non compatible) types in MODIFY_EXPR 2005-07-06 19:28 [Bug ada/22328] New: Ada produces mistmatched " pinskia at gcc dot gnu dot org ` (2 preceding siblings ...) 2005-07-08 15:39 ` bosch at adacore dot com @ 2005-07-08 15:44 ` bosch at gcc dot gnu dot org 2005-07-08 20:25 ` pinskia at gcc dot gnu dot org 2005-09-06 8:31 ` ebotcazou at gcc dot gnu dot org 5 siblings, 0 replies; 9+ messages in thread From: bosch at gcc dot gnu dot org @ 2005-07-08 15:44 UTC (permalink / raw) To: gcc-bugs -- What |Removed |Added ---------------------------------------------------------------------------- Attachment #9230|application/octet-stream |text/plain mime type| | Attachment #9230 is|0 |1 patch| | http://gcc.gnu.org/bugzilla/show_bug.cgi?id=22328 ^ permalink raw reply [flat|nested] 9+ messages in thread
* [Bug ada/22328] Ada produces mis-match (non compatible) types in MODIFY_EXPR 2005-07-06 19:28 [Bug ada/22328] New: Ada produces mistmatched " pinskia at gcc dot gnu dot org ` (3 preceding siblings ...) 2005-07-08 15:44 ` bosch at gcc dot gnu dot org @ 2005-07-08 20:25 ` pinskia at gcc dot gnu dot org 2005-09-06 8:31 ` ebotcazou at gcc dot gnu dot org 5 siblings, 0 replies; 9+ messages in thread From: pinskia at gcc dot gnu dot org @ 2005-07-08 20:25 UTC (permalink / raw) To: gcc-bugs -- What |Removed |Added ---------------------------------------------------------------------------- Status|UNCONFIRMED |NEW Ever Confirmed| |1 Last reconfirmed|0000-00-00 00:00:00 |2005-07-08 20:25:48 date| | http://gcc.gnu.org/bugzilla/show_bug.cgi?id=22328 ^ permalink raw reply [flat|nested] 9+ messages in thread
* [Bug ada/22328] Ada produces mis-match (non compatible) types in MODIFY_EXPR 2005-07-06 19:28 [Bug ada/22328] New: Ada produces mistmatched " pinskia at gcc dot gnu dot org ` (4 preceding siblings ...) 2005-07-08 20:25 ` pinskia at gcc dot gnu dot org @ 2005-09-06 8:31 ` ebotcazou at gcc dot gnu dot org 5 siblings, 0 replies; 9+ messages in thread From: ebotcazou at gcc dot gnu dot org @ 2005-09-06 8:31 UTC (permalink / raw) To: gcc-bugs ------- Additional Comments From ebotcazou at gcc dot gnu dot org 2005-09-06 08:31 ------- Investigating. -- What |Removed |Added ---------------------------------------------------------------------------- AssignedTo|unassigned at gcc dot gnu |ebotcazou at gcc dot gnu dot |dot org |org Status|NEW |ASSIGNED Last reconfirmed|2005-07-08 20:25:48 |2005-09-06 08:31:32 date| | http://gcc.gnu.org/bugzilla/show_bug.cgi?id=22328 ^ permalink raw reply [flat|nested] 9+ messages in thread
end of thread, other threads:[~2005-10-21 15:54 UTC | newest] Thread overview: 9+ messages (download: mbox.gz / follow: Atom feed) -- links below jump to the message on this page -- [not found] <bug-22328-6528@http.gcc.gnu.org/bugzilla/> 2005-10-21 15:46 ` [Bug ada/22328] Ada produces mis-match (non compatible) types in MODIFY_EXPR cvs-commit at gcc dot gnu dot org 2005-10-21 15:49 ` cvs-commit at gcc dot gnu dot org 2005-10-21 15:54 ` ebotcazou at gcc dot gnu dot org 2005-07-06 19:28 [Bug ada/22328] New: Ada produces mistmatched " pinskia at gcc dot gnu dot org 2005-07-07 18:31 ` [Bug ada/22328] Ada produces mis-match " pinskia at gcc dot gnu dot org 2005-07-08 15:29 ` pinskia at gcc dot gnu dot org 2005-07-08 15:39 ` bosch at adacore dot com 2005-07-08 15:44 ` bosch at gcc dot gnu dot org 2005-07-08 20:25 ` pinskia at gcc dot gnu dot org 2005-09-06 8:31 ` ebotcazou at gcc dot gnu dot org
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).