[Bug target/29794] New: cc1 segfaults with -O3 -msched-control-spec
I get the following segfault with -O3 -msched-control-spec on IA64. While this is completely repeatable, it doesn't happen when I call cc1 directly so I cannot supply a backtrace. With 4.2.0 20061022 I need to call -g -O3 -msched-control-spec to see this while 4.2.0 20061107 requires -O3 -msched-control-spec. Can someone confirm this bug? [EMAIL PROTECTED]:~$ /usr/lib/gcc-snapshot/bin/gcc -c -g -O3 -msched-control-spec openbox-screen.i gcc: Internal error: Segmentation fault (program cc1) Please submit a full bug report. See http://gcc.gnu.org/bugs.html> for instructions. [EMAIL PROTECTED]:~$ /usr/lib/gcc-snapshot/bin/gcc -c -g -O3 openbox-screen.i [EMAIL PROTECTED]:~$ -- Summary: cc1 segfaults with -O3 -msched-control-spec Product: gcc Version: 4.3.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: target AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: tbm at cyrius dot com GCC target triplet: ia64-linux-gnu http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29794
[Bug target/29794] cc1 segfaults with -O3 -msched-control-spec
--- Comment #1 from tbm at cyrius dot com 2006-11-10 08:24 --- Created an attachment (id=12586) --> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=12586&action=view) preprocessed source -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29794
[Bug fortran/29786] [4.1/4.2/4.3 Regression] rejects equivalence
--- Comment #2 from pault at gcc dot gnu dot org 2006-11-10 08:25 --- (In reply to comment #1) 14.6.3.3 Association of scalar data objects ...snip... A storage unit shall not be explicitly initialized more than once in a program. Explicit initialization overrides default initialization, and default initialization for an object of derived type overrides default initialization for a component of the object (4.4.1). Default initialization may be specified for a storage unit that is storage associated provided the objects or subobjects supplying the default initialization are of the same type and type parameters, and supply the same value for the storage unit. This is intended to be general, I think; ie. to apply to more than scalar data objects. In any case, prior usage requires that "storage unit" be understood in its complete generality. The problem occurs in resolve.c:6674, where there is no attempt to see if the storage unit is the same for scalar/array-ref or array-ref/array-ref equivalences and data statements. This is OK for F90 initialization, where arrays are completely initialized, but not for data statements. If the error is suppressed by excluding (sym->attr.data && sym->as != NULL), we run into a todo in trans-common.c: pr29786.f90: In function 'MAIN__': pr29786.f90:1: fatal error: gfc_todo: Not Implemented: Initialization of overlap ping variables compilation terminated. This looks like one of Sherlock Holme's "three pipers". Paul Index: gcc/fortran/resolve.c === *** gcc/fortran/resolve.c (révision 118551) --- gcc/fortran/resolve.c (copie de travail) *** resolve_equivalence (gfc_equiv *eq) *** 6671,6677 /* An equivalence statement cannot have more than one initialized object. */ ! if (sym->value) { if (value_name != NULL) { --- 6671,6677 /* An equivalence statement cannot have more than one initialized object. */ ! if (sym->value && !(sym->attr.data && sym->as != NULL)) { if (value_name != NULL) { -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29786
[Bug middle-end/29726] [4.2 regression] invalid folding of ((X >> C1) & C2) != 0 or "M-x is undefined" in emacs
--- Comment #6 from bonzini at gnu dot org 2006-11-10 08:29 --- I'm going to commit this to 4.2 after regtesting. -- bonzini at gnu dot org changed: What|Removed |Added CC||bonzini at gnu dot org Known to fail||4.2.0 Known to work|4.3.0 |4.3.0 4.1.2 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29726
[Bug tree-optimization/29777] missed optimization: model missing widen_mult* idioms for SSE
--- Comment #3 from uros at gcc dot gnu dot org 2006-11-10 08:46 --- Subject: Bug 29777 Author: uros Date: Fri Nov 10 08:45:47 2006 New Revision: 118649 URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=118649 Log: PR target/29777 * config/i386/sse.md (smulv8hi3_highpart): Change from define_insn to define_expand. (umulv8hi3_highpart): Ditto. (vec_widen_smult_hi_v8hi): New expander. (vec_widen_smult_lo_v8hi): Ditto. testsuite/ChangeLog: PR target/29777 * lib/target-supports.exp (vect_widen_mult_hi_to_si): Add i?86-*-* and x86_64-*-* targets. Modified: trunk/gcc/ChangeLog trunk/gcc/config/i386/sse.md trunk/gcc/testsuite/ChangeLog trunk/gcc/testsuite/lib/target-supports.exp -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29777
[Bug other/29639] [4.3 regression] ext/bitmap_allocator/check_allocate_max_size.cc execution test
--- Comment #46 from christian dot joensson at gmail dot com 2006-11-10 09:08 --- (In reply to comment #45) > Created an attachment (id=12575) --> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=12575&action=view) [edit] > Linker fix for !HAVE_COMDAT_GROUP breakage > > Successfully tested on x86. > hmm, this could be brought into binutils' dev repo, right? -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29639
[Bug tree-optimization/29789] Missed optimization in libquantum
--- Comment #3 from rguenth at gcc dot gnu dot org 2006-11-10 09:21 --- I suppose we should look at RTL loop invariant motion to hoist the shift because we should have more precise information there. -- rguenth at gcc dot gnu dot org changed: What|Removed |Added CC||rakdver at gcc dot gnu dot ||org http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29789
[Bug fortran/29759] ice on line continuation in OMP statements (gfc_next_char_literal, at fortran/scanner.c:701)
--- Comment #2 from franke dot daniel at gmail dot com 2006-11-10 09:46 --- Proposed patch, including a testcase: http://gcc.gnu.org/ml/fortran/2006-11/msg00293.html -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29759
[Bug tree-optimization/29791] [4.3 Regression] ICE: tree check: expected ssa_name, have symbol_memory_tag in verify_ssa, at tree-ssa.c:776
-- rguenth at gcc dot gnu dot org changed: What|Removed |Added CC||rguenth at gcc dot gnu dot ||org Status|UNCONFIRMED |NEW Ever Confirmed|0 |1 Known to fail||4.3.0 Known to work||4.1.2 Last reconfirmed|-00-00 00:00:00 |2006-11-10 10:15:09 date|| Summary|ICE: tree check: expected |[4.3 Regression] ICE: tree |ssa_name, have |check: expected ssa_name, |symbol_memory_tag in|have symbol_memory_tag in |verify_ssa, at tree-|verify_ssa, at tree- |ssa.c:776 |ssa.c:776 Target Milestone|--- |4.3.0 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29791
[Bug translation/29796] New: I18N (german): "virtual outside class declaration" incorrectly translated
The german translation reads: "virtuelle Deklaration einer äußeren Klasse" Which is "virtual declaration of an outer class" in english. The german message should read "Schlüsselwort 'virtual' ausserhalb einer Klassendeklaration" (eng. "Keyword 'virtual' outside a class declaration"). -- Summary: I18N (german): "virtual outside class declaration" incorrectly translated Product: gcc Version: 4.0.3 Status: UNCONFIRMED Severity: normal Priority: P3 Component: translation AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: Andreas dot Schallenberg at Eurobild dot com GCC target triplet: i486-linux-gnu http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29796
[Bug tree-optimization/29788] [4.1/4.2/4.3 Regression] ICE in var_ann, at tree-flow-inline.h:130
--- Comment #7 from rguenth at gcc dot gnu dot org 2006-11-10 10:40 --- 4.0.3 works. VN in set_value_handle sets a TREE_ANN_COMMON on the CONST_DECL of C.1346. With -fno-tree-pre -fno-tree-fre we get a different ICE: Program received signal SIGSEGV, Segmentation fault. 0x00ad5313 in var_to_partition (map=0x1050580, var=0x2b4416691d20) at /space/rguenther/src/svn/trunk/gcc/tree-ssa-live.h:150 150 if (ann->out_of_ssa_tag) because now we don't have an annotation for the CONST_DECL at all. Somehow seeing CONST_DECLs seriously confuses us. The following patch fixes it for me: Index: tree-ssa-live.c === *** tree-ssa-live.c (revision 118621) --- tree-ssa-live.c (working copy) *** build_tree_conflict_graph (tree_live_inf *** 1455,1461 else p1 = NO_PARTITION; ! if (DECL_P (rhs) || TREE_CODE (rhs) == SSA_NAME) p2 = var_to_partition (map, rhs); else p2 = NO_PARTITION; --- 1455,1462 else p1 = NO_PARTITION; ! if ((DECL_P (rhs) || TREE_CODE (rhs) == SSA_NAME) ! && TREE_CODE (rhs) != CONST_DECL) p2 = var_to_partition (map, rhs); else p2 = NO_PARTITION; -- rguenth at gcc dot gnu dot org changed: What|Removed |Added CC||rguenth at gcc dot gnu dot ||org, amacleod at redhat dot ||com Known to work||4.0.3 Summary|[Optimization] ICE in |[4.1/4.2/4.3 Regression] ICE |var_ann, at tree-flow- |in var_ann, at tree-flow- |inline.h:130|inline.h:130 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29788
[Bug target/29793] TESTW{W,L,Q} rCX + JZ/JE should be replaced by J{,E,R}CXZ when possible
--- Comment #2 from ubizjak at gmail dot com 2006-11-10 10:54 --- (In reply to comment #0) > The Test instruction applied to the rCX register followed by a Jump if Zero > with an 8-bit displacement can be replaced by a single JCXZ/JECXZ/JRCXZ The problem is in "with an 8-bit displacement". This displacement is calculated during assembler stage, and there is no way to _reliably_ calculate displacement using gcc's "(pc)" RTX. To implement this optimization, some support from assembler is needed. When displacement overflows 8bit, assembler should substitute "jecxz" with equivalent "test/jmp rel{16,32}" sequence. This 8-bit displacement problem is in fact the same problem as with "loop" insn. However, it would be nice to have "jexcz" and "loop" insns, as they all have zero latency (as jcc insn have) on p4. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29793
[Bug target/29793] TESTW{W,L,Q} rCX + JZ/JE should be replaced by J{,E,R}CXZ when possible
--- Comment #3 from ubizjak at gmail dot com 2006-11-10 11:18 --- Following asm illustrates the problem: .file "jcx.c" .text .p2align 4,,15 .globl blah .type blah, @function blah: pushl %ebp movl%esp, %ebp subl$8, %esp jecxz .L4 .space 128 callabort .L4: leave ret .size blah, .-blah .ident "GCC: (GNU) 4.3.0 20061110 (experimental)" .section.note.GNU-stack,"",@progbits You can try to assemble this... -- ubizjak at gmail dot com changed: What|Removed |Added CC||ubizjak at gmail dot com http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29793
[Bug target/29797] New: Miscompiles bit test / set in OpenOffice
extern "C" void abort(void); unsigned bar(void) { return 32768;} void foobar (unsigned u) { if (u != (32768 | 65536)) abort (); } const char *name (void) { return "QPopupMenu"; } int main() { unsigned nStyle = bar (); const char *pClassName = name (); if (__builtin_strcmp ("QPopupMenu", pClassName) == 0) { bool is_enabled = bool (nStyle & 1); if (nStyle & 32768) nStyle |= 65536; foobar(nStyle); } return 0; } is miscompiled at -O1 and -O2 on ppc32 (ppc64 is ok). -- Summary: Miscompiles bit test / set in OpenOffice Product: gcc Version: 4.1.2 Status: UNCONFIRMED Keywords: wrong-code Severity: blocker Priority: P3 Component: target AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: rguenth at gcc dot gnu dot org GCC target triplet: powerpc32-*-* http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29797
[Bug target/29797] Miscompiles bit test / set in OpenOffice
--- Comment #1 from rguenth at gcc dot gnu dot org 2006-11-10 13:01 --- SVN head r117970 fails as well as current 4.1 head. -- rguenth at gcc dot gnu dot org changed: What|Removed |Added CC||dje at watson dot ibm dot ||com Known to fail||4.1.2 4.3.0 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29797
[Bug target/29797] Miscompiles bit test / set in OpenOffice
--- Comment #2 from rguenth at gcc dot gnu dot org 2006-11-10 13:10 --- Shorter testcase for gcc.c-torture/execute: extern void abort(void); unsigned int bar(void) { return 32768; } int main() { unsigned int nStyle = bar (); if (nStyle & 32768) nStyle |= 65536; if (nStyle != (32768 | 65536)) abort (); return 0; } -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29797
[Bug rtl-optimization/29797] Miscompiles bit test / set in OpenOffice
--- Comment #3 from rguenth at gcc dot gnu dot org 2006-11-10 13:28 --- combine combines (insn 10 8 11 2 (parallel [ (set (reg:SI 121) (and:SI (reg/v:SI 119 [ nStyle ]) (const_int 32768 [0x8000]))) (clobber (scratch:CC)) ]) 131 {andsi3} (insn_list:REG_DEP_TRUE 8 (nil)) (expr_list:REG_UNUSED (scratch:CC) (nil))) (insn 11 10 12 2 (set (reg:CC 122) (compare:CC (reg:SI 121) (const_int 0 [0x0]))) 456 {*cmpsi_internal1} (insn_list:REG_DEP_TRUE 10 (nil)) (expr_list:REG_DEAD (reg:SI 121) (nil))) to (note 10 8 11 2 NOTE_INSN_DELETED) (insn 11 10 12 2 (parallel [ (set (reg:CC 122) (compare:CC (zero_extract:SI (reg/v:SI 119 [ nStyle ]) (const_int 1 [0x1]) (const_int 16 [0x10])) (const_int 0 [0x0]))) (clobber (scratch:SI)) ]) 157 {*extzvsi_internal1} (insn_list:REG_DEP_TRUE 8 (nil)) (expr_list:REG_UNUSED (scratch:SI) (nil))) then ifcvt comes along and produces IF-THEN block found, pass 1, start block 2 [insn 5], then 3 [14], join 4 [17] Conversion succeeded on pass 1. IF-THEN block found, pass 1, start block 2 [insn 5], then 5 [24], join 6 [28] IF-CASE-2 found, start 2, else 6 deleted 1 dead insns 3 possible IF blocks searched. 1 IF blocks converted. 2 true changes made. (insn 8 7 10 2 (set (reg/v:SI 119 [ nStyle ]) (reg:SI 3 3)) 321 {*movsi_internal1} (insn_list:REG_DEP_TRUE 7 (nil)) (expr_list:REG_DEAD (reg:SI 3 3) (nil))) (note 10 8 20 2 NOTE_INSN_DELETED) (insn 20 10 21 2 (set (reg:SI 123) (const_int 98304 [0x18000])) 321 {*movsi_internal1} (nil) (nil)) split then splits the constant load of reg:SI 123 (!?) so we end up with main: stwu %r1,-16(%r1) mflr %r0 stw %r0,20(%r1) bl bar lis %r0,0x1 ori %r0,%r0,32768 cmpw %cr7,%r3,%r0 beq+ %cr7,.L6 bl abort .L6: li %r3,0 lwz %r0,20(%r1) mtlr %r0 addi %r1,%r1,16 blr and indeed, disabling if-conversion fixes the problem. -- rguenth at gcc dot gnu dot org changed: What|Removed |Added Component|target |rtl-optimization http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29797
[Bug middle-end/29726] [4.2 regression] invalid folding of ((X >> C1) & C2) != 0 or "M-x is undefined" in emacs
--- Comment #7 from bonzini at gnu dot org 2006-11-10 13:44 --- Subject: Bug 29726 Author: bonzini Date: Fri Nov 10 13:44:40 2006 New Revision: 118653 URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=118653 Log: gcc: 2006-11-09 Serge Belyshev <[EMAIL PROTECTED]> PR middle-end/29726 * fold-const.c (fold_binary) : Fix typo in variable name. gcc/testsuite: 2006-11-09 Serge Belyshev <[EMAIL PROTECTED]> PR middle-end/29726 * gcc.dg/fold-eqandshift-1.c (test5): Uncomment function. (test6): Ditto. (dg-final): Add scan-tree-dump-times patterns for test5 and test6. * gcc.dg/fold-eqandshift-3.c: New test case. Added: branches/gcc-4_2-branch/gcc/testsuite/gcc.dg/fold-eqandshift-3.c - copied unchanged from r118625, trunk/gcc/testsuite/gcc.dg/fold-eqandshift-3.c Modified: branches/gcc-4_2-branch/gcc/ChangeLog branches/gcc-4_2-branch/gcc/fold-const.c branches/gcc-4_2-branch/gcc/testsuite/ChangeLog branches/gcc-4_2-branch/gcc/testsuite/gcc.dg/fold-eqandshift-1.c -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29726
[Bug middle-end/29726] [4.2 regression] invalid folding of ((X >> C1) & C2) != 0 or "M-x is undefined" in emacs
--- Comment #8 from bonzini at gnu dot org 2006-11-10 13:45 --- committed to all affected branches -- bonzini at gnu dot org changed: What|Removed |Added Status|ASSIGNED|RESOLVED Resolution||FIXED http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29726
[Bug tree-optimization/29798] New: -O2 gives wrong results
Hi, -O2 gives wrong results. Assingment to a variable (rho) directly affects value of another (oldrho). Look at the code at the end of the message (it's modified from the *.102t.final_cleanup of a fortran code, in case you wonder). gcc-version: Using built-in specs. Target: i686-pc-linux-gnu Configured with: /home/fxcoudert/gfortran_nightbuild/trunk/configure --prefix=/home/fxcoudert/gfortran_nightbuild/irun-20061109 --enable-languages=c,fortran --with-gmp=/home/fxcoudert/gfortran_nightbuild/software Thread model: posix gcc version 4.3.0 20061109 (experimental) Regards, Juha void main() { double temp167; double temp157; double rho; double D1530; double D1537; double D1568; double D1576; double D1578; double D1591; double alpha; double residual; int iter_count; double beta; double oldrho; double val19; double val24; double D1453; double xvec[2]; double rhsvec[2]; double work[8]; xvec[0]= 0.0; rhsvec[0] = 1.0e+0; xvec[1]= 0.0; rhsvec[1] = 2.0e+0; work[6]= xvec[0]; work[7]= xvec[1] * 5.0e-1; work[6]= rhsvec[0] - work[6]; work[7]= rhsvec[1] - work[7]; iter_count = 1; while(1) { work[4] = work[6]; work[5] = work[7]; work[0] = work[4]; D1530 = work[5]; work[1] = D1530; D1537 = work[0]; fprintf( stderr, "1: %d %g\n", iter_count, oldrho ); rho = work[6] * D1537 + D1530 * work[7]; fprintf( stderr, "2: %d %g\n\n", iter_count, oldrho ); if (iter_count == 1) { work[2] = D1537; work[3] = work[1]; } else { beta = rho / oldrho; work[2] = D1537 + beta * work[2]; work[3] = work[1] + beta * work[3]; } work[4] = work[2]; D1568 = work[3] * 5.0e-1; work[5] = D1568; D1576 = work[2]; D1578 = work[4]; val19 = D1576 * D1578 + 0.0; temp167 = work[3]; alpha = rho / (val19 + D1568 * temp167); xvec[0] = xvec[0] + D1576 * alpha; D1591 = xvec[1] + temp167 * alpha; xvec[1] = D1591; work[6] = work[6] - alpha * D1578; work[7] = work[7] - alpha * work[5]; work[0] = xvec[0]; work[1] = D1591 * 5.0e-1; work[0] = work[0] - rhsvec[0]; temp157 = work[1] - rhsvec[1]; work[1] = temp157; D1453 = work[0]; val24 = D1453 * D1453; residual = sqrt (val24 + temp157 * temp157); if (residual < 1e-12) break; iter_count = iter_count + 1; if (iter_count == 20) break; oldrho = rho; } fprintf( stderr, "%d %g %g\n", iter_count, xvec[0], xvec[1] ); return; } -- Summary: -O2 gives wrong results Product: gcc Version: 4.3.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: tree-optimization AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: jpr at csc dot fi GCC host triplet: x86 linux http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29798
[Bug rtl-optimization/29797] Miscompiles bit test / set in OpenOffice
--- Comment #4 from rguenth at gcc dot gnu dot org 2006-11-10 14:35 --- /* Optimize away "if (x & C) x |= C" and similar bit manipulation transformations. */ static int noce_try_bitop (struct noce_if_info *if_info) { ... /* ??? We could also handle AND here. */ if (GET_CODE (cond) == ZERO_EXTRACT) { if (XEXP (cond, 1) != const1_rtx || GET_CODE (XEXP (cond, 2)) != CONST_INT || ! rtx_equal_p (x, XEXP (cond, 0))) return FALSE; bitnum = INTVAL (XEXP (cond, 2)); mode = GET_MODE (x); if (bitnum >= HOST_BITS_PER_WIDE_INT) return FALSE; ... which is wrong for little-endian bitfieds ... /* if ((x & C) == 0) x |= C; is transformed to x |= C. */ /* if ((x & C) != 0) x |= C; is transformed to nothing. */ if (GET_CODE (a) == IOR) result = (code == NE) ? a : NULL_RTX; else if (code == NE) { /* if ((x & C) == 0) x ^= C; is transformed to x |= C. */ result = gen_int_mode ((HOST_WIDE_INT) 1 << bitnum, mode); result = simplify_gen_binary (IOR, mode, x, result); } else { /* if ((x & C) != 0) x ^= C; is transformed to x &= ~C. */ result = gen_int_mode (~((HOST_WIDE_INT) 1 << bitnum), mode); result = simplify_gen_binary (AND, mode, x, result); } -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29797
[Bug rtl-optimization/29797] Miscompiles bit test / set in OpenOffice
--- Comment #5 from ebotcazou at gcc dot gnu dot org 2006-11-10 15:01 --- In case someone is still doubtful. :-) -- ebotcazou at gcc dot gnu dot org changed: What|Removed |Added Status|UNCONFIRMED |NEW Ever Confirmed|0 |1 Last reconfirmed|-00-00 00:00:00 |2006-11-10 15:01:30 date|| http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29797
[Bug java/29587] jc1: out of memory allocating 4072 bytes after a total of 708630224 bytes
--- Comment #13 from dave at hiauly1 dot hia dot nrc dot ca 2006-11-10 15:20 --- Subject: Re: jc1: out of memory allocating 4072 bytes after a total of 708630224 bytes > Subject: Re: jc1: out of memory allocating 4072 bytes after a total of > 708630224 bytes > > Can you try the attached and let me know if it fixes it? I haven't had a chance to look at the memory consumption of the compilation that was failing, but it's no longer failing. A full bootstrap and check is nearly complete. Thanks, Dave -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29587
[Bug other/29639] [4.3 regression] ext/bitmap_allocator/check_allocate_max_size.cc execution test
--- Comment #47 from dave at hiauly1 dot hia dot nrc dot ca 2006-11-10 15:23 --- Subject: Re: [4.3 regression] ext/bitmap_allocator/check_allocate_max_size.cc execution test > > Things are still broken on hppa-linux. > > I have a fix (in the linker) for the !HAVE_COMDAT_GROUP breakage on x86 but > it is probably not sufficient on hppa. Could you try it anyway? Just relink > the libstdc++.so shared object with the patched linker. Thanks in advance. Still broken. I should turn off HAVE_COMDAT_GROUP and see if that helps. Dave -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29639
[Bug rtl-optimization/29797] Miscompiles bit test / set in OpenOffice
--- Comment #6 from rguenth at gcc dot gnu dot org 2006-11-10 15:45 --- Note that we still cannot do this transformation on the tree-level. There were some patches for that though: http://gcc.gnu.org/ml/gcc-patches/2006-08/msg00390.html -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29797
[Bug rtl-optimization/29797] Miscompiles bit test / set in OpenOffice
--- Comment #7 from matz at gcc dot gnu dot org 2006-11-10 15:47 --- Just from looking at various places which handle ZERO_EXTRACT this seems to by used highly inconsistent. E.g.: rtlanal:nonzero_bits1: Doesn't look at BITS_BIG_ENDIAN or BYTES_BIG_ENDIAN at all, but does use the bitpos to generate a mask. combine.c:find_split_point: When the destination is a zero_extract, it does adjust the bitpos when BITS_BIG_ENDIAN, but it doesn't look at BYTES_BIT_ENDIAN at all. ifcvt.c:noce_emit_move_insn: Does look at both BITS_BIG_ENDIAN _and_ BYTES_BIG_ENDIAN, and only adjusts the bitpos when both are different. A comment indicates that this is required because store_bit_field() handles the bitpos even more inconsistently :-/ So ifcvt.c:noce_try_bitop (where we think the bug is) actually uses the same method as rtlanal:nonzero_bits1, so either both are wrong or both are right. >From the documentation I would be inclined to think that both are wrong. But in that case I bet there are even more places which need a carefull look :-/ -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29797
[Bug target/29746] gcc fails to bootstrap on sh4-*-linux-gnu
--- Comment #14 from amylaar at gcc dot gnu dot org 2006-11-10 15:48 --- Created an attachment (id=12587) --> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=12587&action=view) testsuite patch This patch is needed additionally for the patch from #11. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29746
[Bug rtl-optimization/29797] Miscompiles bit test / set in OpenOffice
--- Comment #8 from matz at gcc dot gnu dot org 2006-11-10 15:51 --- At least this patch fixes the bug at hand, but I'm sceptical if by chance or for real: Index: ifcvt.c === --- ifcvt.c (revision 118648) +++ ifcvt.c (working copy) @@ -1942,6 +1942,8 @@ noce_try_bitop (struct noce_if_info *if_ return FALSE; bitnum = INTVAL (XEXP (cond, 2)); mode = GET_MODE (x); + if (BITS_BIG_ENDIAN) + bitnum = GET_MODE_BITSIZE (mode) - 1 - bitnum; if (bitnum >= HOST_BITS_PER_WIDE_INT) return FALSE; } -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29797
[Bug libmudflap/28578] A most simple multithreaded program (practically any multithreaded one) causes mudflap violation
--- Comment #2 from fche at redhat dot com 2006-11-10 16:04 --- As shown by MUDFLAP_OPTIONS="-viol-gdb", the deallocation is occurring during the pthread exit process, and relates to dlopen's thread-local variables. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=28578
[Bug rtl-optimization/29797] Miscompiles bit test / set in OpenOffice
--- Comment #9 from schwab at suse dot de 2006-11-10 16:27 --- (In reply to comment #7) > combine.c:find_split_point: When the destination is a zero_extract, it does > adjust the bitpos when BITS_BIG_ENDIAN, but it doesn't look at > BYTES_BIT_ENDIAN at all. I think this is ok, because when zero/sign_extact operates on memory, its mode must be a single-byte integer mode. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29797
[Bug libmudflap/19319] Mudflap produce many violations on simple, correct c++ program
--- Comment #19 from p dot van-hoof at qub dot ac dot uk 2006-11-10 16:33 --- The reduced testcases listed previously in this thread indeed work correctly on the mainline, but a real C++ program that I tested still spewed thousands of violations, although valgrind could not find anything. The attached test case test.cc is one such example. Note that the test program tries to read its own source, so don't rename the file! > g++ -fmudflap test.cc -lmudflap > a.out *** mudflap violation 1 (check/read): time=1163175853.725925 ptr=0x2ac0ae8ee720 size=8 pc=0x2ac0ae464871 location=`test.cc:18 (main)' /usr/local/gcc430/lib64/libmudflap.so.0(__mf_check+0x41) [0x2ac0ae464871] a.out(main+0x219) [0x40133d] /lib64/libc.so.6(__libc_start_main+0xf4) [0x2ac0aeb88154] number of nearby objects: 0 > g++ -v Using built-in specs. Target: x86_64-unknown-linux-gnu Configured with: /dump1/root/temp/gcc/configure --prefix=/usr/local/gcc430 --enable-languages=c,c++,fortran Thread model: posix gcc version 4.3.0 20061030 (experimental) -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=19319
[Bug libmudflap/19319] Mudflap produce many violations on simple, correct c++ program
--- Comment #20 from p dot van-hoof at qub dot ac dot uk 2006-11-10 16:35 --- Created an attachment (id=12588) --> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=12588&action=view) test case mentioned in Comment #19 -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=19319
[Bug rtl-optimization/29797] Miscompiles bit test / set in OpenOffice
--- Comment #10 from matz at gcc dot gnu dot org 2006-11-10 16:48 --- Yes, I think all uses in combine.c are okay. In addition also the occurrence in rtlanal.c is okay, as it doesn't use the bitpos, but the width in bits to generate the mask, I just misread that part. I now looked at all other occurrences of ZERO_EXTRACT in gcc/*.c (not the machdep files or at other languages, though), and I didn't find any other which were clearly wrong. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29797
[Bug c++/29066] ptrmemfunc_vbit_in_delta is broken
--- Comment #4 from patchapp at dberlin dot org 2006-11-10 17:04 --- Subject: Bug number PR29066 A patch for this bug has been added to the patch tracker. The mailing list url for the patch is http://gcc.gnu.org/ml/gcc-patches/2006-11/msg00103.html -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29066
[Bug fortran/29539] ICE in variable_decl
--- Comment #7 from pault at gcc dot gnu dot org 2006-11-10 17:08 --- Subject: Bug 29539 Author: pault Date: Fri Nov 10 17:08:11 2006 New Revision: 118658 URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=118658 Log: 2006-11-10 Paul Thomas <[EMAIL PROTECTED]> PR fortran/29539 PR fortran/29634 * decl.c (variable_decl): Add test for presence of proc_name. (gfc_match_data_decl): Only emit error if there are none already flagged. * error.c (gfc_error_flag_test): New function. * gfortran.h : Prototype for gfc_error_flag_test. 2006-11-10 Paul Thomas <[EMAIL PROTECTED]> PR fortran/29539 * gfortran.dg/gfortran.dg/blockdata_3.f90: New test. PR fortran/29634 * gfortran.dg/gfortran.dg/derived_function_interface_1.f90: New test. Added: branches/gcc-4_2-branch/gcc/testsuite/gfortran.dg/blockdata_3.f90 branches/gcc-4_2-branch/gcc/testsuite/gfortran.dg/derived_function_interface_1.f90 Modified: branches/gcc-4_2-branch/gcc/fortran/ChangeLog branches/gcc-4_2-branch/gcc/fortran/decl.c branches/gcc-4_2-branch/gcc/fortran/error.c branches/gcc-4_2-branch/gcc/fortran/gfortran.h branches/gcc-4_2-branch/gcc/testsuite/ChangeLog -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29539
[Bug fortran/29634] ICE in variable_decl, for function returning a derived type
--- Comment #5 from pault at gcc dot gnu dot org 2006-11-10 17:08 --- Subject: Bug 29634 Author: pault Date: Fri Nov 10 17:08:11 2006 New Revision: 118658 URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=118658 Log: 2006-11-10 Paul Thomas <[EMAIL PROTECTED]> PR fortran/29539 PR fortran/29634 * decl.c (variable_decl): Add test for presence of proc_name. (gfc_match_data_decl): Only emit error if there are none already flagged. * error.c (gfc_error_flag_test): New function. * gfortran.h : Prototype for gfc_error_flag_test. 2006-11-10 Paul Thomas <[EMAIL PROTECTED]> PR fortran/29539 * gfortran.dg/gfortran.dg/blockdata_3.f90: New test. PR fortran/29634 * gfortran.dg/gfortran.dg/derived_function_interface_1.f90: New test. Added: branches/gcc-4_2-branch/gcc/testsuite/gfortran.dg/blockdata_3.f90 branches/gcc-4_2-branch/gcc/testsuite/gfortran.dg/derived_function_interface_1.f90 Modified: branches/gcc-4_2-branch/gcc/fortran/ChangeLog branches/gcc-4_2-branch/gcc/fortran/decl.c branches/gcc-4_2-branch/gcc/fortran/error.c branches/gcc-4_2-branch/gcc/fortran/gfortran.h branches/gcc-4_2-branch/gcc/testsuite/ChangeLog -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29634
[Bug fortran/29755] [4.2 only] ICE on same name in subroutine and program
--- Comment #5 from pault at gcc dot gnu dot org 2006-11-10 17:13 --- Fixed on trunk and 4.2. It will be fixed on 4.1 just as soon as I catch up with myself. Paul -- pault at gcc dot gnu dot org changed: What|Removed |Added Status|ASSIGNED|RESOLVED Resolution||FIXED http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29755
[Bug fortran/29539] ICE in variable_decl
--- Comment #8 from pault at gcc dot gnu dot org 2006-11-10 17:14 --- Fixed on trunk and 4.2. It will be fixed on 4.1 just as soon as I catch up with myself. Paul -- pault at gcc dot gnu dot org changed: What|Removed |Added Status|ASSIGNED|RESOLVED Resolution||FIXED http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29539
[Bug fortran/29634] ICE in variable_decl, for function returning a derived type
--- Comment #6 from pault at gcc dot gnu dot org 2006-11-10 17:15 --- Fixed on trunk and 4.2. It will be fixed on 4.1 just as soon as I catch up with myself. Paul -- pault at gcc dot gnu dot org changed: What|Removed |Added Status|ASSIGNED|RESOLVED Resolution||FIXED http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29634
[Bug fortran/29744] [Regression] Type renaming crashes gfortran with excessive memory usage
--- Comment #5 from pault at gcc dot gnu dot org 2006-11-10 17:15 --- Fixed on trunk and 4.2. It will be fixed on 4.1 just as soon as I catch up with myself. Paul -- pault at gcc dot gnu dot org changed: What|Removed |Added Status|ASSIGNED|RESOLVED Resolution||FIXED http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29744
[Bug fortran/29315] error passing an array derived from type element
--- Comment #6 from pault at gcc dot gnu dot org 2006-11-10 17:22 --- Subject: Bug 29315 Author: pault Date: Fri Nov 10 17:21:57 2006 New Revision: 118659 URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=118659 Log: 2006-11-10 Paul Thomas <[EMAIL PROTECTED]> PR fortran/29315 * trans-expr.c (is_aliased_array): Treat correctly the case where the component is itself and array or array reference. 2006-11-10 Paul Thomas <[EMAIL PROTECTED]> PR fortran/29315 * gfortran.dg/aliasing_dummy_4.f90: New test. Added: trunk/gcc/testsuite/gfortran.dg/aliasing_dummy_4.f90 Modified: trunk/gcc/fortran/ChangeLog trunk/gcc/fortran/trans-expr.c trunk/gcc/testsuite/ChangeLog -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29315
[Bug fortran/29799] New: More informative message if a symbol is found in two modules
Currently use foo use bar produces: call foo 1 Error: Name 'foo' at (1) is an ambiguous reference to 'foo' from module 'm_foo' Expected as NAG f95: Error: Symbol FOO found both in module M_FOO and in M_BAR detected at CALL FOO. -- Summary: More informative message if a symbol is found in two modules Product: gcc Version: 4.3.0 Status: UNCONFIRMED Keywords: diagnostic Severity: enhancement Priority: P3 Component: fortran AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: burnus at gcc dot gnu dot org http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29799
[Bug fortran/29454] Slightly wrong error message for IF statement
-- burnus at gcc dot gnu dot org changed: What|Removed |Added AssignedTo|unassigned at gcc dot gnu |burnus at gcc dot gnu dot |dot org |org Status|NEW |ASSIGNED Last reconfirmed|2006-10-13 10:37:16 |2006-11-10 17:24:22 date|| http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29454
[Bug target/29746] gcc fails to bootstrap on sh4-*-linux-gnu
--- Comment #15 from amylaar at gcc dot gnu dot org 2006-11-10 17:26 --- Created an attachment (id=12589) --> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=12589&action=view) current softfp patch I've been able to reproduce the 'does not satisfy contraint' ICE using -O2 xxx.i -w -mno-expand-cbranchdi -m2 . I have amended expand_cbranchdi4 so that it properly uses the scratch register. -- amylaar at gcc dot gnu dot org changed: What|Removed |Added Attachment #12580|0 |1 is obsolete|| http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29746
[Bug rtl-optimization/29797] Miscompiles bit test / set in OpenOffice
--- Comment #11 from pinskia at gcc dot gnu dot org 2006-11-10 17:28 --- This is a regression because I know that code is new, Roger added it -- pinskia at gcc dot gnu dot org changed: What|Removed |Added CC||pinskia at gcc dot gnu dot ||org Target Milestone|--- |4.1.2 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29797
[Bug rtl-optimization/29797] [4.1/4.2/4.3 Regression] Miscompiles bit test / set in OpenOffice
--- Comment #12 from pinskia at gcc dot gnu dot org 2006-11-10 17:31 --- PR 9814. -- pinskia at gcc dot gnu dot org changed: What|Removed |Added CC||sayle at gcc dot gnu dot org OtherBugsDependingO||9814 nThis|| Summary|Miscompiles bit test / set |[4.1/4.2/4.3 Regression] |in OpenOffice |Miscompiles bit test / set ||in OpenOffice http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29797
[Bug fortran/23538] gfortran hangs on old cray fortran 66 program
--- Comment #12 from aldot at gcc dot gnu dot org 2006-11-10 17:34 --- untake it since Brooks was faster in testing it. See http://gcc.gnu.org/ml/fortran/2006-11/msg00221.html that added -fmax-errors -- aldot at gcc dot gnu dot org changed: What|Removed |Added AssignedTo|aldot at gcc dot gnu dot org|unassigned at gcc dot gnu ||dot org Status|ASSIGNED|NEW http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23538
[Bug libmudflap/28578] A most simple multithreaded program (practically any multithreaded one) causes mudflap violation
--- Comment #3 from fche at redhat dot com 2006-11-10 17:43 --- Some more details. The data value in question comes from an allocation due to dlerror(), performed during __mf_init()'s lookup of inteposed dynamic symbols. Since mudflap is still in __mf_starting_p state, dlerror's calloc() gets redirected to __mf_0fn_calloc, and gets one of the preallocated buffers in .bss. The problem occurs at main thread shutdown, as caused by pthread_exit(). (An ordinary falling-off-the-end does not trigger this problem.) What happens is that __libc_start_main starts calling funky cleanup functions, including one __nptl_deallocate_tsd, which results in a free() call for that value allocated by dlerror(). But now, libmudflap is in normal non-reentrant state, so this free() is checked, and sure enough is found not to refer to a corresponding checked allocation call. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=28578
[Bug translation/29796] I18N (german): "virtual outside class declaration" incorrectly translated
--- Comment #1 from pinskia at gcc dot gnu dot org 2006-11-10 17:46 --- You should report this to the translation team rather than here. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29796
[Bug fortran/29454] Slightly wrong error message for IF statement
--- Comment #1 from burnus at gcc dot gnu dot org 2006-11-10 18:16 --- Subject: Bug 29454 Author: burnus Date: Fri Nov 10 18:15:39 2006 New Revision: 118661 URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=118661 Log: 2006-11-10 Tobias Burnus <[EMAIL PROTECTED]> PR fortran/29454 * resolve.c (gfc_resolve_blocks): Fix error message. Modified: trunk/gcc/fortran/ChangeLog trunk/gcc/fortran/resolve.c -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29454
[Bug middle-end/29726] [4.2 regression] invalid folding of ((X >> C1) & C2) != 0 or "M-x is undefined" in emacs
--- Comment #9 from roger at eyesopen dot com 2006-11-10 18:33 --- Thanks Paolo! Your machine must be faster than mine. My bootstrap and regression test against the 4.2 branch has only just finished. :-) -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29726
[Bug libmudflap/28578] A most simple multithreaded program (practically any multithreaded one) causes mudflap violation
--- Comment #4 from fche at gcc dot gnu dot org 2006-11-10 18:42 --- Subject: Bug 28578 Author: fche Date: Fri Nov 10 18:42:28 2006 New Revision: 118662 URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=118662 Log: 2006-11-10 Frank Ch. Eigler <[EMAIL PROTECTED]> PR libmudflap/28578 * mf-hooks1.c (__mf_0fn_malloc): Make the bootstrap buffers static but not function scope static. (free): Skip deallocation attempts for objects placed into bootstrap buffers. * testsuite/libmudflap.cth/pass59-frag.c: New test. Mlibmudflap/mf-hooks1.c Mlibmudflap/ChangeLog Alibmudflap/testsuite/libmudflap.cth/pass59-frag.c Added: trunk/libmudflap/testsuite/libmudflap.cth/pass59-frag.c Modified: trunk/libmudflap/ChangeLog trunk/libmudflap/mf-hooks1.c -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=28578
[Bug libmudflap/28578] A most simple multithreaded program (practically any multithreaded one) causes mudflap violation
--- Comment #5 from fche at redhat dot com 2006-11-10 18:43 --- The committed patch appears to work around this problem. -- fche at redhat dot com changed: What|Removed |Added Status|ASSIGNED|WAITING http://gcc.gnu.org/bugzilla/show_bug.cgi?id=28578
[Bug translation/29796] I18N (german): "virtual outside class declaration" incorrectly translated
--- Comment #2 from Andreas dot Schallenberg at Eurobild dot com 2006-11-10 19:03 --- I haven't found a bug database or mailing list for a translation team. Could you point me there? Any URL to go ahead? -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29796
[Bug ada/29781] -O3 -gnatVa triggers a bug box on working Dragonchess code
--- Comment #1 from laurent at guerby dot net 2006-11-10 19:21 --- Confirmed on 4.1.1, 4.1.2 and 4.0.3: $ gcc -c -O3 -gnatVa iterate_moves.adb +===GNAT BUG DETECTED==+ | 4.1.1 (x86_64-unknown-linux-gnu) GCC error: | | in simplify_cond_and_lookup_avail_expr, at tree-ssa-dom.c:2111 | $ gcc -c -O3 -gnatVa iterate_moves.adb +===GNAT BUG DETECTED==+ | 4.1.2 20060928 (prerelease) (Ubuntu 4.1.1-15ubuntu1) (x86_64-pc-linux-gnu) GCC error:| | in simplify_cond_and_lookup_avail_expr, at tree-ssa-dom.c:2111 | $ gcc -c -O3 -gnatVa iterate_moves.adb +===GNAT BUG DETECTED==+ | 4.0.3 (x86_64-unknown-linux-gnu) GCC error: | | in simplify_cond_and_lookup_avail_expr, at tree-ssa-dom.c:2119 | I don't have earlier versions handy, with what version did it work? But this compiles fine on 4.2.0 20061102 (prerelease) and 4.3.0 20061102 (experimental). -- laurent at guerby dot net changed: What|Removed |Added Status|UNCONFIRMED |NEW Ever Confirmed|0 |1 Keywords||ice-on-valid-code Last reconfirmed|-00-00 00:00:00 |2006-11-10 19:21:45 date|| http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29781
[Bug ada/29762] invalid index constraint causes GNAT to crash
--- Comment #1 from laurent at guerby dot net 2006-11-10 19:26 --- Hi, your code gets a proper error message with GCC 4.0 and above: $ gcc -c permutations.adb permutations.adb:68:59: invalid index constraint So I suggest updating your compiler (lots of work is put in better error messages in newer version of GNAT). Thanks for your report. -- laurent at guerby dot net changed: What|Removed |Added Status|UNCONFIRMED |RESOLVED Resolution||FIXED http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29762
[Bug tree-optimization/29710] gnat ICEs on -fprefetch-loop-arrays -O1.
--- Comment #5 from laurent at guerby dot net 2006-11-10 19:32 --- Confirmed with gcc version 4.2.0 20061020 (experimental) on x86_64-linux $ H=.../gcc/ada $ gcc -c -fprefetch-loop-arrays -gnatpg -gnata -g0 -O1 -fno-inline -I$H $H/a-except.adb raised STORAGE_ERROR : stack overflow (or erroneous memory access) With gcc 4.1.1 it compiles successfully, with gcc 4.2.0 20061102 (prerelease) it fails too. -- laurent at guerby dot net changed: What|Removed |Added Status|UNCONFIRMED |NEW Ever Confirmed|0 |1 Last reconfirmed|-00-00 00:00:00 |2006-11-10 19:32:46 date|| http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29710
[Bug rtl-optimization/29797] [4.1/4.2/4.3 Regression] Miscompiles bit test / set in OpenOffice
--- Comment #13 from roger at eyesopen dot com 2006-11-10 19:41 --- Grr. Yep, Michael's BITS_BIG_ENDIAN test looks to be the correct thing. The effect of BITS_BIG_ENDIAN on sign_extract and zero_extract is documented in rtl.texi. Is anyone bootstrapping and regression testing this change or shall I do the honors. In fact, I'll pre-approve it. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29797
[Bug fortran/27588] -fbounds-check should catch substring out of range accesses
--- Comment #6 from burnus at gcc dot gnu dot org 2006-11-10 20:46 --- The latest patch is at: http://gcc.gnu.org/ml/gcc-patches/2006-10/msg01030.html Problems: - variable name missing - line number is off-by-one -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=27588
[Bug fortran/29758] Runtime segfault in RESHAPE with insufficient elements in SOURCE
--- Comment #2 from pault at gcc dot gnu dot org 2006-11-10 21:06 --- Subject: Bug 29758 Author: pault Date: Fri Nov 10 21:06:42 2006 New Revision: 118664 URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=118664 Log: 2006-11-10 Paul Thomas <[EMAIL PROTECTED]> PR fortran/29758 * check.c (gfc_check_reshape): Check that there are enough elements in the source array as to be able to fill an array defined by shape, when pad is absent. 2006-11-10 Paul Thomas <[EMAIL PROTECTED]> PR fortran/29758 * gfortran.dg/reshape_source_size_1.f90: New test. Added: trunk/gcc/testsuite/gfortran.dg/reshape_source_size_1.f90 Modified: trunk/gcc/fortran/ChangeLog trunk/gcc/fortran/check.c trunk/gcc/testsuite/ChangeLog -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29758
[Bug fortran/29392] Segfault on data character initialization
--- Comment #5 from pault at gcc dot gnu dot org 2006-11-10 21:52 --- Subject: Bug 29392 Author: pault Date: Fri Nov 10 21:52:00 2006 New Revision: 118666 URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=118666 Log: 2006-11-10 Paul Thomas <[EMAIL PROTECTED]> Backport from mainline. PR fortran/29371 * trans-expr.c (gfc_trans_pointer_assignment): Add the expression for the assignment of null to the data field to se->pre, rather than block. PR fortran/29392 * data.c (create_character_intializer): Copy and simplify the expressions for the start and end of a sub-string reference. PR fortran/29216 PR fortran/29314 * gfortran.h : Add EXEC_INIT_ASSIGN. * dump-parse-tree.c (gfc_show_code_node): The same. * trans-expr.c (gfc_trans_init_assign): New function. * trans-stmt.h : Add prototype for gfc_trans_init_assign. * trans.c (gfc_trans_code): Implement EXEC_INIT_ASSIGN. * resolve.c (resolve_allocate_exp): Replace EXEC_ASSIGN by EXEC_INIT_ASSIGN. (resolve_code): EXEC_INIT_ASSIGN does not need resolution. (apply_default_init): New function. (resolve_symbol): Call it for derived types that become defined but which do not already have an initialization expression.. * st.c (gfc_free_statement): Include EXEC_INIT_ASSIGN. PR fortran/29387 * trans-intrinsic.c (gfc_conv_intrinsic_len): Rearrange to have a specific case for EXPR_VARIABLE and, in default, build an ss to call gfc_conv_expr_descriptor for array expressions.. PR fortran/29490 * trans-expr.c (gfc_set_interface_mapping_bounds): In the case that GFC_TYPE_ARRAY_LBOUND is not available, use descriptor values for it and GFC_TYPE_ARRAY_UBOUND. PR fortran/29641 * trans-types.c (gfc_get_derived_type): If the derived type namespace has neither a parent nor a proc_name, set NULL for the search namespace. PR fortran/24518 * trans-intrinsic.c (gfc_conv_intrinsic_mod): Use built_in fmod for both MOD and MODULO, if it is available. PR fortran/29565 * trans-expr.c (gfc_conv_aliased_arg): For an INTENT(OUT), save the declarations from the unused loops by merging the block scope for each; this ensures that the temporary is declared. 2006-11-10 Paul Thomas <[EMAIL PROTECTED]> PR fortran/29371 * gfortran.dg/nullify_3.f90: New test. PR fortran/29392 * gfortran.dg/data_char_3.f90: New test. PR fortran/29216 * gfortran.dg/result_default_init_1.f90: New test. PR fortran/29314 * gfortran.dg/automatic_default_init_1.f90: New test. PR fortran/29387 * trans-intrinsic.c (gfc_conv_intrinsic_len): Rearrange to have a specific case for EXPR_VARIABLE and, in default, build an ss to call gfc_conv_expr_descriptor for array expressions.. PR fortran/29490 * trans-expr.c (gfc_set_interface_mapping_bounds): In the case that GFC_TYPE_ARRAY_LBOUND is not available, use descriptor values for it and GFC_TYPE_ARRAY_UBOUND. PR fortran/29641 * trans-types.c (gfc_get_derived_type): If the derived type namespace has neither a parent nor a proc_name, set NULL for the search namespace. PR fortran/29565 * gfortran.dg/gfortran.dg/aliasing_dummy_3.f90: New test. Added: branches/gcc-4_1-branch/gcc/testsuite/gfortran.dg/actual_array_interface_1.f90 branches/gcc-4_1-branch/gcc/testsuite/gfortran.dg/aliasing_dummy_3.f90 branches/gcc-4_1-branch/gcc/testsuite/gfortran.dg/automatic_default_init_1.f90 branches/gcc-4_1-branch/gcc/testsuite/gfortran.dg/data_char_3.f90 branches/gcc-4_1-branch/gcc/testsuite/gfortran.dg/intrinsic_actual_2.f90 branches/gcc-4_1-branch/gcc/testsuite/gfortran.dg/nullify_3.f90 branches/gcc-4_1-branch/gcc/testsuite/gfortran.dg/result_default_init_1.f90 branches/gcc-4_1-branch/gcc/testsuite/gfortran.dg/used_types_11.f90 branches/gcc-4_1-branch/gcc/testsuite/gfortran.dg/used_types_12.f90 Modified: branches/gcc-4_1-branch/gcc/fortran/ChangeLog branches/gcc-4_1-branch/gcc/fortran/data.c branches/gcc-4_1-branch/gcc/fortran/dump-parse-tree.c branches/gcc-4_1-branch/gcc/fortran/f95-lang.c branches/gcc-4_1-branch/gcc/fortran/gfortran.h branches/gcc-4_1-branch/gcc/fortran/resolve.c branches/gcc-4_1-branch/gcc/fortran/st.c branches/gcc-4_1-branch/gcc/fortran/trans-expr.c branches/gcc-4_1-branch/gcc/fortran/trans-intrinsic.c branches/gcc-4_1-branch/gcc/fortran/trans-stmt.h branches/gcc-4_1-branch/gcc/fortran/trans-types.c branches/gcc-4_1-branch/gcc/fortran/trans.c branches/gcc-4_1-branch/gcc/testsuite/ChangeLog -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29392
[Bug fortran/29216] Derived type components of function results are not initialised
--- Comment #12 from pault at gcc dot gnu dot org 2006-11-10 21:52 --- Subject: Bug 29216 Author: pault Date: Fri Nov 10 21:52:00 2006 New Revision: 118666 URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=118666 Log: 2006-11-10 Paul Thomas <[EMAIL PROTECTED]> Backport from mainline. PR fortran/29371 * trans-expr.c (gfc_trans_pointer_assignment): Add the expression for the assignment of null to the data field to se->pre, rather than block. PR fortran/29392 * data.c (create_character_intializer): Copy and simplify the expressions for the start and end of a sub-string reference. PR fortran/29216 PR fortran/29314 * gfortran.h : Add EXEC_INIT_ASSIGN. * dump-parse-tree.c (gfc_show_code_node): The same. * trans-expr.c (gfc_trans_init_assign): New function. * trans-stmt.h : Add prototype for gfc_trans_init_assign. * trans.c (gfc_trans_code): Implement EXEC_INIT_ASSIGN. * resolve.c (resolve_allocate_exp): Replace EXEC_ASSIGN by EXEC_INIT_ASSIGN. (resolve_code): EXEC_INIT_ASSIGN does not need resolution. (apply_default_init): New function. (resolve_symbol): Call it for derived types that become defined but which do not already have an initialization expression.. * st.c (gfc_free_statement): Include EXEC_INIT_ASSIGN. PR fortran/29387 * trans-intrinsic.c (gfc_conv_intrinsic_len): Rearrange to have a specific case for EXPR_VARIABLE and, in default, build an ss to call gfc_conv_expr_descriptor for array expressions.. PR fortran/29490 * trans-expr.c (gfc_set_interface_mapping_bounds): In the case that GFC_TYPE_ARRAY_LBOUND is not available, use descriptor values for it and GFC_TYPE_ARRAY_UBOUND. PR fortran/29641 * trans-types.c (gfc_get_derived_type): If the derived type namespace has neither a parent nor a proc_name, set NULL for the search namespace. PR fortran/24518 * trans-intrinsic.c (gfc_conv_intrinsic_mod): Use built_in fmod for both MOD and MODULO, if it is available. PR fortran/29565 * trans-expr.c (gfc_conv_aliased_arg): For an INTENT(OUT), save the declarations from the unused loops by merging the block scope for each; this ensures that the temporary is declared. 2006-11-10 Paul Thomas <[EMAIL PROTECTED]> PR fortran/29371 * gfortran.dg/nullify_3.f90: New test. PR fortran/29392 * gfortran.dg/data_char_3.f90: New test. PR fortran/29216 * gfortran.dg/result_default_init_1.f90: New test. PR fortran/29314 * gfortran.dg/automatic_default_init_1.f90: New test. PR fortran/29387 * trans-intrinsic.c (gfc_conv_intrinsic_len): Rearrange to have a specific case for EXPR_VARIABLE and, in default, build an ss to call gfc_conv_expr_descriptor for array expressions.. PR fortran/29490 * trans-expr.c (gfc_set_interface_mapping_bounds): In the case that GFC_TYPE_ARRAY_LBOUND is not available, use descriptor values for it and GFC_TYPE_ARRAY_UBOUND. PR fortran/29641 * trans-types.c (gfc_get_derived_type): If the derived type namespace has neither a parent nor a proc_name, set NULL for the search namespace. PR fortran/29565 * gfortran.dg/gfortran.dg/aliasing_dummy_3.f90: New test. Added: branches/gcc-4_1-branch/gcc/testsuite/gfortran.dg/actual_array_interface_1.f90 branches/gcc-4_1-branch/gcc/testsuite/gfortran.dg/aliasing_dummy_3.f90 branches/gcc-4_1-branch/gcc/testsuite/gfortran.dg/automatic_default_init_1.f90 branches/gcc-4_1-branch/gcc/testsuite/gfortran.dg/data_char_3.f90 branches/gcc-4_1-branch/gcc/testsuite/gfortran.dg/intrinsic_actual_2.f90 branches/gcc-4_1-branch/gcc/testsuite/gfortran.dg/nullify_3.f90 branches/gcc-4_1-branch/gcc/testsuite/gfortran.dg/result_default_init_1.f90 branches/gcc-4_1-branch/gcc/testsuite/gfortran.dg/used_types_11.f90 branches/gcc-4_1-branch/gcc/testsuite/gfortran.dg/used_types_12.f90 Modified: branches/gcc-4_1-branch/gcc/fortran/ChangeLog branches/gcc-4_1-branch/gcc/fortran/data.c branches/gcc-4_1-branch/gcc/fortran/dump-parse-tree.c branches/gcc-4_1-branch/gcc/fortran/f95-lang.c branches/gcc-4_1-branch/gcc/fortran/gfortran.h branches/gcc-4_1-branch/gcc/fortran/resolve.c branches/gcc-4_1-branch/gcc/fortran/st.c branches/gcc-4_1-branch/gcc/fortran/trans-expr.c branches/gcc-4_1-branch/gcc/fortran/trans-intrinsic.c branches/gcc-4_1-branch/gcc/fortran/trans-stmt.h branches/gcc-4_1-branch/gcc/fortran/trans-types.c branches/gcc-4_1-branch/gcc/fortran/trans.c branches/gcc-4_1-branch/gcc/testsuite/ChangeLog -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29216
[Bug fortran/29641] [4.1/4.2/4.3 regression] ICE in gfc_get_derived_type
--- Comment #5 from pault at gcc dot gnu dot org 2006-11-10 21:52 --- Subject: Bug 29641 Author: pault Date: Fri Nov 10 21:52:00 2006 New Revision: 118666 URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=118666 Log: 2006-11-10 Paul Thomas <[EMAIL PROTECTED]> Backport from mainline. PR fortran/29371 * trans-expr.c (gfc_trans_pointer_assignment): Add the expression for the assignment of null to the data field to se->pre, rather than block. PR fortran/29392 * data.c (create_character_intializer): Copy and simplify the expressions for the start and end of a sub-string reference. PR fortran/29216 PR fortran/29314 * gfortran.h : Add EXEC_INIT_ASSIGN. * dump-parse-tree.c (gfc_show_code_node): The same. * trans-expr.c (gfc_trans_init_assign): New function. * trans-stmt.h : Add prototype for gfc_trans_init_assign. * trans.c (gfc_trans_code): Implement EXEC_INIT_ASSIGN. * resolve.c (resolve_allocate_exp): Replace EXEC_ASSIGN by EXEC_INIT_ASSIGN. (resolve_code): EXEC_INIT_ASSIGN does not need resolution. (apply_default_init): New function. (resolve_symbol): Call it for derived types that become defined but which do not already have an initialization expression.. * st.c (gfc_free_statement): Include EXEC_INIT_ASSIGN. PR fortran/29387 * trans-intrinsic.c (gfc_conv_intrinsic_len): Rearrange to have a specific case for EXPR_VARIABLE and, in default, build an ss to call gfc_conv_expr_descriptor for array expressions.. PR fortran/29490 * trans-expr.c (gfc_set_interface_mapping_bounds): In the case that GFC_TYPE_ARRAY_LBOUND is not available, use descriptor values for it and GFC_TYPE_ARRAY_UBOUND. PR fortran/29641 * trans-types.c (gfc_get_derived_type): If the derived type namespace has neither a parent nor a proc_name, set NULL for the search namespace. PR fortran/24518 * trans-intrinsic.c (gfc_conv_intrinsic_mod): Use built_in fmod for both MOD and MODULO, if it is available. PR fortran/29565 * trans-expr.c (gfc_conv_aliased_arg): For an INTENT(OUT), save the declarations from the unused loops by merging the block scope for each; this ensures that the temporary is declared. 2006-11-10 Paul Thomas <[EMAIL PROTECTED]> PR fortran/29371 * gfortran.dg/nullify_3.f90: New test. PR fortran/29392 * gfortran.dg/data_char_3.f90: New test. PR fortran/29216 * gfortran.dg/result_default_init_1.f90: New test. PR fortran/29314 * gfortran.dg/automatic_default_init_1.f90: New test. PR fortran/29387 * trans-intrinsic.c (gfc_conv_intrinsic_len): Rearrange to have a specific case for EXPR_VARIABLE and, in default, build an ss to call gfc_conv_expr_descriptor for array expressions.. PR fortran/29490 * trans-expr.c (gfc_set_interface_mapping_bounds): In the case that GFC_TYPE_ARRAY_LBOUND is not available, use descriptor values for it and GFC_TYPE_ARRAY_UBOUND. PR fortran/29641 * trans-types.c (gfc_get_derived_type): If the derived type namespace has neither a parent nor a proc_name, set NULL for the search namespace. PR fortran/29565 * gfortran.dg/gfortran.dg/aliasing_dummy_3.f90: New test. Added: branches/gcc-4_1-branch/gcc/testsuite/gfortran.dg/actual_array_interface_1.f90 branches/gcc-4_1-branch/gcc/testsuite/gfortran.dg/aliasing_dummy_3.f90 branches/gcc-4_1-branch/gcc/testsuite/gfortran.dg/automatic_default_init_1.f90 branches/gcc-4_1-branch/gcc/testsuite/gfortran.dg/data_char_3.f90 branches/gcc-4_1-branch/gcc/testsuite/gfortran.dg/intrinsic_actual_2.f90 branches/gcc-4_1-branch/gcc/testsuite/gfortran.dg/nullify_3.f90 branches/gcc-4_1-branch/gcc/testsuite/gfortran.dg/result_default_init_1.f90 branches/gcc-4_1-branch/gcc/testsuite/gfortran.dg/used_types_11.f90 branches/gcc-4_1-branch/gcc/testsuite/gfortran.dg/used_types_12.f90 Modified: branches/gcc-4_1-branch/gcc/fortran/ChangeLog branches/gcc-4_1-branch/gcc/fortran/data.c branches/gcc-4_1-branch/gcc/fortran/dump-parse-tree.c branches/gcc-4_1-branch/gcc/fortran/f95-lang.c branches/gcc-4_1-branch/gcc/fortran/gfortran.h branches/gcc-4_1-branch/gcc/fortran/resolve.c branches/gcc-4_1-branch/gcc/fortran/st.c branches/gcc-4_1-branch/gcc/fortran/trans-expr.c branches/gcc-4_1-branch/gcc/fortran/trans-intrinsic.c branches/gcc-4_1-branch/gcc/fortran/trans-stmt.h branches/gcc-4_1-branch/gcc/fortran/trans-types.c branches/gcc-4_1-branch/gcc/fortran/trans.c branches/gcc-4_1-branch/gcc/testsuite/ChangeLog -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29641
[Bug target/29314] misaligned FP register for VIS instructions
--- Comment #3 from pault at gcc dot gnu dot org 2006-11-10 21:52 --- Subject: Bug 29314 Author: pault Date: Fri Nov 10 21:52:00 2006 New Revision: 118666 URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=118666 Log: 2006-11-10 Paul Thomas <[EMAIL PROTECTED]> Backport from mainline. PR fortran/29371 * trans-expr.c (gfc_trans_pointer_assignment): Add the expression for the assignment of null to the data field to se->pre, rather than block. PR fortran/29392 * data.c (create_character_intializer): Copy and simplify the expressions for the start and end of a sub-string reference. PR fortran/29216 PR fortran/29314 * gfortran.h : Add EXEC_INIT_ASSIGN. * dump-parse-tree.c (gfc_show_code_node): The same. * trans-expr.c (gfc_trans_init_assign): New function. * trans-stmt.h : Add prototype for gfc_trans_init_assign. * trans.c (gfc_trans_code): Implement EXEC_INIT_ASSIGN. * resolve.c (resolve_allocate_exp): Replace EXEC_ASSIGN by EXEC_INIT_ASSIGN. (resolve_code): EXEC_INIT_ASSIGN does not need resolution. (apply_default_init): New function. (resolve_symbol): Call it for derived types that become defined but which do not already have an initialization expression.. * st.c (gfc_free_statement): Include EXEC_INIT_ASSIGN. PR fortran/29387 * trans-intrinsic.c (gfc_conv_intrinsic_len): Rearrange to have a specific case for EXPR_VARIABLE and, in default, build an ss to call gfc_conv_expr_descriptor for array expressions.. PR fortran/29490 * trans-expr.c (gfc_set_interface_mapping_bounds): In the case that GFC_TYPE_ARRAY_LBOUND is not available, use descriptor values for it and GFC_TYPE_ARRAY_UBOUND. PR fortran/29641 * trans-types.c (gfc_get_derived_type): If the derived type namespace has neither a parent nor a proc_name, set NULL for the search namespace. PR fortran/24518 * trans-intrinsic.c (gfc_conv_intrinsic_mod): Use built_in fmod for both MOD and MODULO, if it is available. PR fortran/29565 * trans-expr.c (gfc_conv_aliased_arg): For an INTENT(OUT), save the declarations from the unused loops by merging the block scope for each; this ensures that the temporary is declared. 2006-11-10 Paul Thomas <[EMAIL PROTECTED]> PR fortran/29371 * gfortran.dg/nullify_3.f90: New test. PR fortran/29392 * gfortran.dg/data_char_3.f90: New test. PR fortran/29216 * gfortran.dg/result_default_init_1.f90: New test. PR fortran/29314 * gfortran.dg/automatic_default_init_1.f90: New test. PR fortran/29387 * trans-intrinsic.c (gfc_conv_intrinsic_len): Rearrange to have a specific case for EXPR_VARIABLE and, in default, build an ss to call gfc_conv_expr_descriptor for array expressions.. PR fortran/29490 * trans-expr.c (gfc_set_interface_mapping_bounds): In the case that GFC_TYPE_ARRAY_LBOUND is not available, use descriptor values for it and GFC_TYPE_ARRAY_UBOUND. PR fortran/29641 * trans-types.c (gfc_get_derived_type): If the derived type namespace has neither a parent nor a proc_name, set NULL for the search namespace. PR fortran/29565 * gfortran.dg/gfortran.dg/aliasing_dummy_3.f90: New test. Added: branches/gcc-4_1-branch/gcc/testsuite/gfortran.dg/actual_array_interface_1.f90 branches/gcc-4_1-branch/gcc/testsuite/gfortran.dg/aliasing_dummy_3.f90 branches/gcc-4_1-branch/gcc/testsuite/gfortran.dg/automatic_default_init_1.f90 branches/gcc-4_1-branch/gcc/testsuite/gfortran.dg/data_char_3.f90 branches/gcc-4_1-branch/gcc/testsuite/gfortran.dg/intrinsic_actual_2.f90 branches/gcc-4_1-branch/gcc/testsuite/gfortran.dg/nullify_3.f90 branches/gcc-4_1-branch/gcc/testsuite/gfortran.dg/result_default_init_1.f90 branches/gcc-4_1-branch/gcc/testsuite/gfortran.dg/used_types_11.f90 branches/gcc-4_1-branch/gcc/testsuite/gfortran.dg/used_types_12.f90 Modified: branches/gcc-4_1-branch/gcc/fortran/ChangeLog branches/gcc-4_1-branch/gcc/fortran/data.c branches/gcc-4_1-branch/gcc/fortran/dump-parse-tree.c branches/gcc-4_1-branch/gcc/fortran/f95-lang.c branches/gcc-4_1-branch/gcc/fortran/gfortran.h branches/gcc-4_1-branch/gcc/fortran/resolve.c branches/gcc-4_1-branch/gcc/fortran/st.c branches/gcc-4_1-branch/gcc/fortran/trans-expr.c branches/gcc-4_1-branch/gcc/fortran/trans-intrinsic.c branches/gcc-4_1-branch/gcc/fortran/trans-stmt.h branches/gcc-4_1-branch/gcc/fortran/trans-types.c branches/gcc-4_1-branch/gcc/fortran/trans.c branches/gcc-4_1-branch/gcc/testsuite/ChangeLog -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29314
[Bug fortran/29371] Coredump when using -fbounds-check with pointer & nullify
--- Comment #6 from pault at gcc dot gnu dot org 2006-11-10 21:52 --- Subject: Bug 29371 Author: pault Date: Fri Nov 10 21:52:00 2006 New Revision: 118666 URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=118666 Log: 2006-11-10 Paul Thomas <[EMAIL PROTECTED]> Backport from mainline. PR fortran/29371 * trans-expr.c (gfc_trans_pointer_assignment): Add the expression for the assignment of null to the data field to se->pre, rather than block. PR fortran/29392 * data.c (create_character_intializer): Copy and simplify the expressions for the start and end of a sub-string reference. PR fortran/29216 PR fortran/29314 * gfortran.h : Add EXEC_INIT_ASSIGN. * dump-parse-tree.c (gfc_show_code_node): The same. * trans-expr.c (gfc_trans_init_assign): New function. * trans-stmt.h : Add prototype for gfc_trans_init_assign. * trans.c (gfc_trans_code): Implement EXEC_INIT_ASSIGN. * resolve.c (resolve_allocate_exp): Replace EXEC_ASSIGN by EXEC_INIT_ASSIGN. (resolve_code): EXEC_INIT_ASSIGN does not need resolution. (apply_default_init): New function. (resolve_symbol): Call it for derived types that become defined but which do not already have an initialization expression.. * st.c (gfc_free_statement): Include EXEC_INIT_ASSIGN. PR fortran/29387 * trans-intrinsic.c (gfc_conv_intrinsic_len): Rearrange to have a specific case for EXPR_VARIABLE and, in default, build an ss to call gfc_conv_expr_descriptor for array expressions.. PR fortran/29490 * trans-expr.c (gfc_set_interface_mapping_bounds): In the case that GFC_TYPE_ARRAY_LBOUND is not available, use descriptor values for it and GFC_TYPE_ARRAY_UBOUND. PR fortran/29641 * trans-types.c (gfc_get_derived_type): If the derived type namespace has neither a parent nor a proc_name, set NULL for the search namespace. PR fortran/24518 * trans-intrinsic.c (gfc_conv_intrinsic_mod): Use built_in fmod for both MOD and MODULO, if it is available. PR fortran/29565 * trans-expr.c (gfc_conv_aliased_arg): For an INTENT(OUT), save the declarations from the unused loops by merging the block scope for each; this ensures that the temporary is declared. 2006-11-10 Paul Thomas <[EMAIL PROTECTED]> PR fortran/29371 * gfortran.dg/nullify_3.f90: New test. PR fortran/29392 * gfortran.dg/data_char_3.f90: New test. PR fortran/29216 * gfortran.dg/result_default_init_1.f90: New test. PR fortran/29314 * gfortran.dg/automatic_default_init_1.f90: New test. PR fortran/29387 * trans-intrinsic.c (gfc_conv_intrinsic_len): Rearrange to have a specific case for EXPR_VARIABLE and, in default, build an ss to call gfc_conv_expr_descriptor for array expressions.. PR fortran/29490 * trans-expr.c (gfc_set_interface_mapping_bounds): In the case that GFC_TYPE_ARRAY_LBOUND is not available, use descriptor values for it and GFC_TYPE_ARRAY_UBOUND. PR fortran/29641 * trans-types.c (gfc_get_derived_type): If the derived type namespace has neither a parent nor a proc_name, set NULL for the search namespace. PR fortran/29565 * gfortran.dg/gfortran.dg/aliasing_dummy_3.f90: New test. Added: branches/gcc-4_1-branch/gcc/testsuite/gfortran.dg/actual_array_interface_1.f90 branches/gcc-4_1-branch/gcc/testsuite/gfortran.dg/aliasing_dummy_3.f90 branches/gcc-4_1-branch/gcc/testsuite/gfortran.dg/automatic_default_init_1.f90 branches/gcc-4_1-branch/gcc/testsuite/gfortran.dg/data_char_3.f90 branches/gcc-4_1-branch/gcc/testsuite/gfortran.dg/intrinsic_actual_2.f90 branches/gcc-4_1-branch/gcc/testsuite/gfortran.dg/nullify_3.f90 branches/gcc-4_1-branch/gcc/testsuite/gfortran.dg/result_default_init_1.f90 branches/gcc-4_1-branch/gcc/testsuite/gfortran.dg/used_types_11.f90 branches/gcc-4_1-branch/gcc/testsuite/gfortran.dg/used_types_12.f90 Modified: branches/gcc-4_1-branch/gcc/fortran/ChangeLog branches/gcc-4_1-branch/gcc/fortran/data.c branches/gcc-4_1-branch/gcc/fortran/dump-parse-tree.c branches/gcc-4_1-branch/gcc/fortran/f95-lang.c branches/gcc-4_1-branch/gcc/fortran/gfortran.h branches/gcc-4_1-branch/gcc/fortran/resolve.c branches/gcc-4_1-branch/gcc/fortran/st.c branches/gcc-4_1-branch/gcc/fortran/trans-expr.c branches/gcc-4_1-branch/gcc/fortran/trans-intrinsic.c branches/gcc-4_1-branch/gcc/fortran/trans-stmt.h branches/gcc-4_1-branch/gcc/fortran/trans-types.c branches/gcc-4_1-branch/gcc/fortran/trans.c branches/gcc-4_1-branch/gcc/testsuite/ChangeLog -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29371
[Bug fortran/29387] ICE on character array function of variable length
--- Comment #8 from pault at gcc dot gnu dot org 2006-11-10 21:52 --- Subject: Bug 29387 Author: pault Date: Fri Nov 10 21:52:00 2006 New Revision: 118666 URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=118666 Log: 2006-11-10 Paul Thomas <[EMAIL PROTECTED]> Backport from mainline. PR fortran/29371 * trans-expr.c (gfc_trans_pointer_assignment): Add the expression for the assignment of null to the data field to se->pre, rather than block. PR fortran/29392 * data.c (create_character_intializer): Copy and simplify the expressions for the start and end of a sub-string reference. PR fortran/29216 PR fortran/29314 * gfortran.h : Add EXEC_INIT_ASSIGN. * dump-parse-tree.c (gfc_show_code_node): The same. * trans-expr.c (gfc_trans_init_assign): New function. * trans-stmt.h : Add prototype for gfc_trans_init_assign. * trans.c (gfc_trans_code): Implement EXEC_INIT_ASSIGN. * resolve.c (resolve_allocate_exp): Replace EXEC_ASSIGN by EXEC_INIT_ASSIGN. (resolve_code): EXEC_INIT_ASSIGN does not need resolution. (apply_default_init): New function. (resolve_symbol): Call it for derived types that become defined but which do not already have an initialization expression.. * st.c (gfc_free_statement): Include EXEC_INIT_ASSIGN. PR fortran/29387 * trans-intrinsic.c (gfc_conv_intrinsic_len): Rearrange to have a specific case for EXPR_VARIABLE and, in default, build an ss to call gfc_conv_expr_descriptor for array expressions.. PR fortran/29490 * trans-expr.c (gfc_set_interface_mapping_bounds): In the case that GFC_TYPE_ARRAY_LBOUND is not available, use descriptor values for it and GFC_TYPE_ARRAY_UBOUND. PR fortran/29641 * trans-types.c (gfc_get_derived_type): If the derived type namespace has neither a parent nor a proc_name, set NULL for the search namespace. PR fortran/24518 * trans-intrinsic.c (gfc_conv_intrinsic_mod): Use built_in fmod for both MOD and MODULO, if it is available. PR fortran/29565 * trans-expr.c (gfc_conv_aliased_arg): For an INTENT(OUT), save the declarations from the unused loops by merging the block scope for each; this ensures that the temporary is declared. 2006-11-10 Paul Thomas <[EMAIL PROTECTED]> PR fortran/29371 * gfortran.dg/nullify_3.f90: New test. PR fortran/29392 * gfortran.dg/data_char_3.f90: New test. PR fortran/29216 * gfortran.dg/result_default_init_1.f90: New test. PR fortran/29314 * gfortran.dg/automatic_default_init_1.f90: New test. PR fortran/29387 * trans-intrinsic.c (gfc_conv_intrinsic_len): Rearrange to have a specific case for EXPR_VARIABLE and, in default, build an ss to call gfc_conv_expr_descriptor for array expressions.. PR fortran/29490 * trans-expr.c (gfc_set_interface_mapping_bounds): In the case that GFC_TYPE_ARRAY_LBOUND is not available, use descriptor values for it and GFC_TYPE_ARRAY_UBOUND. PR fortran/29641 * trans-types.c (gfc_get_derived_type): If the derived type namespace has neither a parent nor a proc_name, set NULL for the search namespace. PR fortran/29565 * gfortran.dg/gfortran.dg/aliasing_dummy_3.f90: New test. Added: branches/gcc-4_1-branch/gcc/testsuite/gfortran.dg/actual_array_interface_1.f90 branches/gcc-4_1-branch/gcc/testsuite/gfortran.dg/aliasing_dummy_3.f90 branches/gcc-4_1-branch/gcc/testsuite/gfortran.dg/automatic_default_init_1.f90 branches/gcc-4_1-branch/gcc/testsuite/gfortran.dg/data_char_3.f90 branches/gcc-4_1-branch/gcc/testsuite/gfortran.dg/intrinsic_actual_2.f90 branches/gcc-4_1-branch/gcc/testsuite/gfortran.dg/nullify_3.f90 branches/gcc-4_1-branch/gcc/testsuite/gfortran.dg/result_default_init_1.f90 branches/gcc-4_1-branch/gcc/testsuite/gfortran.dg/used_types_11.f90 branches/gcc-4_1-branch/gcc/testsuite/gfortran.dg/used_types_12.f90 Modified: branches/gcc-4_1-branch/gcc/fortran/ChangeLog branches/gcc-4_1-branch/gcc/fortran/data.c branches/gcc-4_1-branch/gcc/fortran/dump-parse-tree.c branches/gcc-4_1-branch/gcc/fortran/f95-lang.c branches/gcc-4_1-branch/gcc/fortran/gfortran.h branches/gcc-4_1-branch/gcc/fortran/resolve.c branches/gcc-4_1-branch/gcc/fortran/st.c branches/gcc-4_1-branch/gcc/fortran/trans-expr.c branches/gcc-4_1-branch/gcc/fortran/trans-intrinsic.c branches/gcc-4_1-branch/gcc/fortran/trans-stmt.h branches/gcc-4_1-branch/gcc/fortran/trans-types.c branches/gcc-4_1-branch/gcc/fortran/trans.c branches/gcc-4_1-branch/gcc/testsuite/ChangeLog -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29387
[Bug fortran/24518] Intrinsic MOD incorrect for large arg1/arg2 and slow.
--- Comment #22 from pault at gcc dot gnu dot org 2006-11-10 21:52 --- Subject: Bug 24518 Author: pault Date: Fri Nov 10 21:52:00 2006 New Revision: 118666 URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=118666 Log: 2006-11-10 Paul Thomas <[EMAIL PROTECTED]> Backport from mainline. PR fortran/29371 * trans-expr.c (gfc_trans_pointer_assignment): Add the expression for the assignment of null to the data field to se->pre, rather than block. PR fortran/29392 * data.c (create_character_intializer): Copy and simplify the expressions for the start and end of a sub-string reference. PR fortran/29216 PR fortran/29314 * gfortran.h : Add EXEC_INIT_ASSIGN. * dump-parse-tree.c (gfc_show_code_node): The same. * trans-expr.c (gfc_trans_init_assign): New function. * trans-stmt.h : Add prototype for gfc_trans_init_assign. * trans.c (gfc_trans_code): Implement EXEC_INIT_ASSIGN. * resolve.c (resolve_allocate_exp): Replace EXEC_ASSIGN by EXEC_INIT_ASSIGN. (resolve_code): EXEC_INIT_ASSIGN does not need resolution. (apply_default_init): New function. (resolve_symbol): Call it for derived types that become defined but which do not already have an initialization expression.. * st.c (gfc_free_statement): Include EXEC_INIT_ASSIGN. PR fortran/29387 * trans-intrinsic.c (gfc_conv_intrinsic_len): Rearrange to have a specific case for EXPR_VARIABLE and, in default, build an ss to call gfc_conv_expr_descriptor for array expressions.. PR fortran/29490 * trans-expr.c (gfc_set_interface_mapping_bounds): In the case that GFC_TYPE_ARRAY_LBOUND is not available, use descriptor values for it and GFC_TYPE_ARRAY_UBOUND. PR fortran/29641 * trans-types.c (gfc_get_derived_type): If the derived type namespace has neither a parent nor a proc_name, set NULL for the search namespace. PR fortran/24518 * trans-intrinsic.c (gfc_conv_intrinsic_mod): Use built_in fmod for both MOD and MODULO, if it is available. PR fortran/29565 * trans-expr.c (gfc_conv_aliased_arg): For an INTENT(OUT), save the declarations from the unused loops by merging the block scope for each; this ensures that the temporary is declared. 2006-11-10 Paul Thomas <[EMAIL PROTECTED]> PR fortran/29371 * gfortran.dg/nullify_3.f90: New test. PR fortran/29392 * gfortran.dg/data_char_3.f90: New test. PR fortran/29216 * gfortran.dg/result_default_init_1.f90: New test. PR fortran/29314 * gfortran.dg/automatic_default_init_1.f90: New test. PR fortran/29387 * trans-intrinsic.c (gfc_conv_intrinsic_len): Rearrange to have a specific case for EXPR_VARIABLE and, in default, build an ss to call gfc_conv_expr_descriptor for array expressions.. PR fortran/29490 * trans-expr.c (gfc_set_interface_mapping_bounds): In the case that GFC_TYPE_ARRAY_LBOUND is not available, use descriptor values for it and GFC_TYPE_ARRAY_UBOUND. PR fortran/29641 * trans-types.c (gfc_get_derived_type): If the derived type namespace has neither a parent nor a proc_name, set NULL for the search namespace. PR fortran/29565 * gfortran.dg/gfortran.dg/aliasing_dummy_3.f90: New test. Added: branches/gcc-4_1-branch/gcc/testsuite/gfortran.dg/actual_array_interface_1.f90 branches/gcc-4_1-branch/gcc/testsuite/gfortran.dg/aliasing_dummy_3.f90 branches/gcc-4_1-branch/gcc/testsuite/gfortran.dg/automatic_default_init_1.f90 branches/gcc-4_1-branch/gcc/testsuite/gfortran.dg/data_char_3.f90 branches/gcc-4_1-branch/gcc/testsuite/gfortran.dg/intrinsic_actual_2.f90 branches/gcc-4_1-branch/gcc/testsuite/gfortran.dg/nullify_3.f90 branches/gcc-4_1-branch/gcc/testsuite/gfortran.dg/result_default_init_1.f90 branches/gcc-4_1-branch/gcc/testsuite/gfortran.dg/used_types_11.f90 branches/gcc-4_1-branch/gcc/testsuite/gfortran.dg/used_types_12.f90 Modified: branches/gcc-4_1-branch/gcc/fortran/ChangeLog branches/gcc-4_1-branch/gcc/fortran/data.c branches/gcc-4_1-branch/gcc/fortran/dump-parse-tree.c branches/gcc-4_1-branch/gcc/fortran/f95-lang.c branches/gcc-4_1-branch/gcc/fortran/gfortran.h branches/gcc-4_1-branch/gcc/fortran/resolve.c branches/gcc-4_1-branch/gcc/fortran/st.c branches/gcc-4_1-branch/gcc/fortran/trans-expr.c branches/gcc-4_1-branch/gcc/fortran/trans-intrinsic.c branches/gcc-4_1-branch/gcc/fortran/trans-stmt.h branches/gcc-4_1-branch/gcc/fortran/trans-types.c branches/gcc-4_1-branch/gcc/fortran/trans.c branches/gcc-4_1-branch/gcc/testsuite/ChangeLog -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=24518
[Bug fortran/29565] [4.1/4.2/4.3 Regression] ICE in gimplify_var_or_parm_decl, at gimplify.c
--- Comment #11 from pault at gcc dot gnu dot org 2006-11-10 21:52 --- Subject: Bug 29565 Author: pault Date: Fri Nov 10 21:52:00 2006 New Revision: 118666 URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=118666 Log: 2006-11-10 Paul Thomas <[EMAIL PROTECTED]> Backport from mainline. PR fortran/29371 * trans-expr.c (gfc_trans_pointer_assignment): Add the expression for the assignment of null to the data field to se->pre, rather than block. PR fortran/29392 * data.c (create_character_intializer): Copy and simplify the expressions for the start and end of a sub-string reference. PR fortran/29216 PR fortran/29314 * gfortran.h : Add EXEC_INIT_ASSIGN. * dump-parse-tree.c (gfc_show_code_node): The same. * trans-expr.c (gfc_trans_init_assign): New function. * trans-stmt.h : Add prototype for gfc_trans_init_assign. * trans.c (gfc_trans_code): Implement EXEC_INIT_ASSIGN. * resolve.c (resolve_allocate_exp): Replace EXEC_ASSIGN by EXEC_INIT_ASSIGN. (resolve_code): EXEC_INIT_ASSIGN does not need resolution. (apply_default_init): New function. (resolve_symbol): Call it for derived types that become defined but which do not already have an initialization expression.. * st.c (gfc_free_statement): Include EXEC_INIT_ASSIGN. PR fortran/29387 * trans-intrinsic.c (gfc_conv_intrinsic_len): Rearrange to have a specific case for EXPR_VARIABLE and, in default, build an ss to call gfc_conv_expr_descriptor for array expressions.. PR fortran/29490 * trans-expr.c (gfc_set_interface_mapping_bounds): In the case that GFC_TYPE_ARRAY_LBOUND is not available, use descriptor values for it and GFC_TYPE_ARRAY_UBOUND. PR fortran/29641 * trans-types.c (gfc_get_derived_type): If the derived type namespace has neither a parent nor a proc_name, set NULL for the search namespace. PR fortran/24518 * trans-intrinsic.c (gfc_conv_intrinsic_mod): Use built_in fmod for both MOD and MODULO, if it is available. PR fortran/29565 * trans-expr.c (gfc_conv_aliased_arg): For an INTENT(OUT), save the declarations from the unused loops by merging the block scope for each; this ensures that the temporary is declared. 2006-11-10 Paul Thomas <[EMAIL PROTECTED]> PR fortran/29371 * gfortran.dg/nullify_3.f90: New test. PR fortran/29392 * gfortran.dg/data_char_3.f90: New test. PR fortran/29216 * gfortran.dg/result_default_init_1.f90: New test. PR fortran/29314 * gfortran.dg/automatic_default_init_1.f90: New test. PR fortran/29387 * trans-intrinsic.c (gfc_conv_intrinsic_len): Rearrange to have a specific case for EXPR_VARIABLE and, in default, build an ss to call gfc_conv_expr_descriptor for array expressions.. PR fortran/29490 * trans-expr.c (gfc_set_interface_mapping_bounds): In the case that GFC_TYPE_ARRAY_LBOUND is not available, use descriptor values for it and GFC_TYPE_ARRAY_UBOUND. PR fortran/29641 * trans-types.c (gfc_get_derived_type): If the derived type namespace has neither a parent nor a proc_name, set NULL for the search namespace. PR fortran/29565 * gfortran.dg/gfortran.dg/aliasing_dummy_3.f90: New test. Added: branches/gcc-4_1-branch/gcc/testsuite/gfortran.dg/actual_array_interface_1.f90 branches/gcc-4_1-branch/gcc/testsuite/gfortran.dg/aliasing_dummy_3.f90 branches/gcc-4_1-branch/gcc/testsuite/gfortran.dg/automatic_default_init_1.f90 branches/gcc-4_1-branch/gcc/testsuite/gfortran.dg/data_char_3.f90 branches/gcc-4_1-branch/gcc/testsuite/gfortran.dg/intrinsic_actual_2.f90 branches/gcc-4_1-branch/gcc/testsuite/gfortran.dg/nullify_3.f90 branches/gcc-4_1-branch/gcc/testsuite/gfortran.dg/result_default_init_1.f90 branches/gcc-4_1-branch/gcc/testsuite/gfortran.dg/used_types_11.f90 branches/gcc-4_1-branch/gcc/testsuite/gfortran.dg/used_types_12.f90 Modified: branches/gcc-4_1-branch/gcc/fortran/ChangeLog branches/gcc-4_1-branch/gcc/fortran/data.c branches/gcc-4_1-branch/gcc/fortran/dump-parse-tree.c branches/gcc-4_1-branch/gcc/fortran/f95-lang.c branches/gcc-4_1-branch/gcc/fortran/gfortran.h branches/gcc-4_1-branch/gcc/fortran/resolve.c branches/gcc-4_1-branch/gcc/fortran/st.c branches/gcc-4_1-branch/gcc/fortran/trans-expr.c branches/gcc-4_1-branch/gcc/fortran/trans-intrinsic.c branches/gcc-4_1-branch/gcc/fortran/trans-stmt.h branches/gcc-4_1-branch/gcc/fortran/trans-types.c branches/gcc-4_1-branch/gcc/fortran/trans.c branches/gcc-4_1-branch/gcc/testsuite/ChangeLog -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29565
[Bug fortran/29490] internal compiler error: in fold_binary, at fold-const.c:8239
--- Comment #8 from pault at gcc dot gnu dot org 2006-11-10 21:52 --- Subject: Bug 29490 Author: pault Date: Fri Nov 10 21:52:00 2006 New Revision: 118666 URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=118666 Log: 2006-11-10 Paul Thomas <[EMAIL PROTECTED]> Backport from mainline. PR fortran/29371 * trans-expr.c (gfc_trans_pointer_assignment): Add the expression for the assignment of null to the data field to se->pre, rather than block. PR fortran/29392 * data.c (create_character_intializer): Copy and simplify the expressions for the start and end of a sub-string reference. PR fortran/29216 PR fortran/29314 * gfortran.h : Add EXEC_INIT_ASSIGN. * dump-parse-tree.c (gfc_show_code_node): The same. * trans-expr.c (gfc_trans_init_assign): New function. * trans-stmt.h : Add prototype for gfc_trans_init_assign. * trans.c (gfc_trans_code): Implement EXEC_INIT_ASSIGN. * resolve.c (resolve_allocate_exp): Replace EXEC_ASSIGN by EXEC_INIT_ASSIGN. (resolve_code): EXEC_INIT_ASSIGN does not need resolution. (apply_default_init): New function. (resolve_symbol): Call it for derived types that become defined but which do not already have an initialization expression.. * st.c (gfc_free_statement): Include EXEC_INIT_ASSIGN. PR fortran/29387 * trans-intrinsic.c (gfc_conv_intrinsic_len): Rearrange to have a specific case for EXPR_VARIABLE and, in default, build an ss to call gfc_conv_expr_descriptor for array expressions.. PR fortran/29490 * trans-expr.c (gfc_set_interface_mapping_bounds): In the case that GFC_TYPE_ARRAY_LBOUND is not available, use descriptor values for it and GFC_TYPE_ARRAY_UBOUND. PR fortran/29641 * trans-types.c (gfc_get_derived_type): If the derived type namespace has neither a parent nor a proc_name, set NULL for the search namespace. PR fortran/24518 * trans-intrinsic.c (gfc_conv_intrinsic_mod): Use built_in fmod for both MOD and MODULO, if it is available. PR fortran/29565 * trans-expr.c (gfc_conv_aliased_arg): For an INTENT(OUT), save the declarations from the unused loops by merging the block scope for each; this ensures that the temporary is declared. 2006-11-10 Paul Thomas <[EMAIL PROTECTED]> PR fortran/29371 * gfortran.dg/nullify_3.f90: New test. PR fortran/29392 * gfortran.dg/data_char_3.f90: New test. PR fortran/29216 * gfortran.dg/result_default_init_1.f90: New test. PR fortran/29314 * gfortran.dg/automatic_default_init_1.f90: New test. PR fortran/29387 * trans-intrinsic.c (gfc_conv_intrinsic_len): Rearrange to have a specific case for EXPR_VARIABLE and, in default, build an ss to call gfc_conv_expr_descriptor for array expressions.. PR fortran/29490 * trans-expr.c (gfc_set_interface_mapping_bounds): In the case that GFC_TYPE_ARRAY_LBOUND is not available, use descriptor values for it and GFC_TYPE_ARRAY_UBOUND. PR fortran/29641 * trans-types.c (gfc_get_derived_type): If the derived type namespace has neither a parent nor a proc_name, set NULL for the search namespace. PR fortran/29565 * gfortran.dg/gfortran.dg/aliasing_dummy_3.f90: New test. Added: branches/gcc-4_1-branch/gcc/testsuite/gfortran.dg/actual_array_interface_1.f90 branches/gcc-4_1-branch/gcc/testsuite/gfortran.dg/aliasing_dummy_3.f90 branches/gcc-4_1-branch/gcc/testsuite/gfortran.dg/automatic_default_init_1.f90 branches/gcc-4_1-branch/gcc/testsuite/gfortran.dg/data_char_3.f90 branches/gcc-4_1-branch/gcc/testsuite/gfortran.dg/intrinsic_actual_2.f90 branches/gcc-4_1-branch/gcc/testsuite/gfortran.dg/nullify_3.f90 branches/gcc-4_1-branch/gcc/testsuite/gfortran.dg/result_default_init_1.f90 branches/gcc-4_1-branch/gcc/testsuite/gfortran.dg/used_types_11.f90 branches/gcc-4_1-branch/gcc/testsuite/gfortran.dg/used_types_12.f90 Modified: branches/gcc-4_1-branch/gcc/fortran/ChangeLog branches/gcc-4_1-branch/gcc/fortran/data.c branches/gcc-4_1-branch/gcc/fortran/dump-parse-tree.c branches/gcc-4_1-branch/gcc/fortran/f95-lang.c branches/gcc-4_1-branch/gcc/fortran/gfortran.h branches/gcc-4_1-branch/gcc/fortran/resolve.c branches/gcc-4_1-branch/gcc/fortran/st.c branches/gcc-4_1-branch/gcc/fortran/trans-expr.c branches/gcc-4_1-branch/gcc/fortran/trans-intrinsic.c branches/gcc-4_1-branch/gcc/fortran/trans-stmt.h branches/gcc-4_1-branch/gcc/fortran/trans-types.c branches/gcc-4_1-branch/gcc/fortran/trans.c branches/gcc-4_1-branch/gcc/testsuite/ChangeLog -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29490
[Bug fortran/28494] Unclear run time error message
--- Comment #3 from burnus at gcc dot gnu dot org 2006-11-10 22:38 --- As FX wrote in an email, a more-detailed error message can not be given with the current method: at present the error string is constructed at compile time via asprintf, but then the extend of the array might not be known - and the current value neither. One needs therefore to replace the current code by something which calls the library. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=28494
[Bug fortran/27588] -fbounds-check should catch substring out of range accesses
--- Comment #7 from burnus at gcc dot gnu dot org 2006-11-10 22:41 --- Mine. -- burnus at gcc dot gnu dot org changed: What|Removed |Added AssignedTo|fxcoudert at gcc dot gnu dot|burnus at gcc dot gnu dot |org |org http://gcc.gnu.org/bugzilla/show_bug.cgi?id=27588
[Bug fortran/29800] New: -fbounds-check: For derived types, write not also compound name
Currently one gets for Var(1)%Array(k) = k the error: out of bounds for array 'var' sunf95 writes: Subscript number 1 has value 11 in array 'ARRAY' I think the output of SUN is more correct; best would be of cause: 'var%array' Test case: bnd11 of http://www.polyhedron.com/pb05/linux/diagnose.html -- Summary: -fbounds-check: For derived types, write not also compound name Product: gcc Version: 4.3.0 Status: UNCONFIRMED Keywords: diagnostic Severity: enhancement Priority: P3 Component: fortran AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: burnus at gcc dot gnu dot org http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29800
[Bug c/29326] __builtin_trap is not documented
--- Comment #2 from pinskia at gcc dot gnu dot org 2006-11-10 22:59 --- Mine. -- pinskia at gcc dot gnu dot org changed: What|Removed |Added AssignedTo|unassigned at gcc dot gnu |pinskia at gcc dot gnu dot |dot org |org Status|UNCONFIRMED |ASSIGNED Ever Confirmed|0 |1 Last reconfirmed|-00-00 00:00:00 |2006-11-10 22:59:01 date|| http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29326
[Bug libmudflap/19319] Mudflap produce many violations on simple, correct c++ program
--- Comment #21 from ppluzhnikov at charter dot net 2006-11-10 23:00 --- I was going to say the same thing, but p.van-hoof beat me to it. Here is another trivial test case that shows 1 violation: // Reduced from ex02-04.cpp from "STL Tutorial and Reference Guide" #include using namespace std; int main() { map directory; directory["Bogart"] = 1234567; directory["Bacall"] = 9876543; } The violation was reproduced with gcc-4.3-20061104 snapshot on linux-i686. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=19319
[Bug libmudflap/19319] Mudflap produce many violations on simple, correct c++ program
--- Comment #22 from ppluzhnikov at charter dot net 2006-11-10 23:30 --- I missed '#include ' in comment 21 above (sorry for cut/paste error). As I said in comment 16, this problem isn't limited to C++ code either. Instrument gmake-3.81, and you'll get 100,000+ violations -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=19319
[Bug fortran/29454] Slightly wrong error message for IF statement
--- Comment #2 from burnus at gcc dot gnu dot org 2006-11-10 23:58 --- Subject: Bug 29454 Author: burnus Date: Fri Nov 10 23:58:04 2006 New Revision: 118671 URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=118671 Log: 2006-11-11 Tobias Burnus <[EMAIL PROTECTED]> PR fortran/29454 * resolve.c (gfc_resolve_blocks): Fix error message. Modified: branches/gcc-4_2-branch/gcc/fortran/ChangeLog branches/gcc-4_2-branch/gcc/fortran/resolve.c -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29454
[Bug fortran/29454] Slightly wrong error message for IF statement
--- Comment #3 from burnus at gcc dot gnu dot org 2006-11-11 00:00 --- Fixed in 4.3/trunk and in 4.2/branch. If it should also be fixed in 4.1, please reopen. -- burnus at gcc dot gnu dot org changed: What|Removed |Added Status|ASSIGNED|RESOLVED Resolution||FIXED http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29454
[Bug fortran/29779] [4.3 Regression] vectorizer fortran testcases failing
--- Comment #2 from pinskia at gcc dot gnu dot org 2006-11-11 00:32 --- Actually I think this bug was caused by: 2006-10-23 Rafael Avila de Espindola <[EMAIL PROTECTED]> * tree.c (local_define_builtin): Replace calls to lang_hooks.builtin_function with add_builtin_function. * c-objc-common.h (LANG_HOOKS_BUILTIN_FUNCTION): Define as c_builtin_function. * c-tree.h (builtin_function): Rename to c_builtin_function. Change the signature. * c-decl.c (builtin_function): Rename to c_builtin_function. Move common code to add_builtin_function. ... -- pinskia at gcc dot gnu dot org changed: What|Removed |Added GCC build triplet|ppc*-*-linux| GCC host triplet|ppc*-*-linux| GCC target triplet|ppc*-*-linux|powerpc*-*-* http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29779
[Bug fortran/29617] gfortran testsuite failure
--- Comment #2 from pinskia at gcc dot gnu dot org 2006-11-11 00:34 --- *** This bug has been marked as a duplicate of 29779 *** -- pinskia at gcc dot gnu dot org changed: What|Removed |Added Status|UNCONFIRMED |RESOLVED Resolution||DUPLICATE http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29617
[Bug fortran/29779] [4.3 Regression] vectorizer fortran testcases failing
--- Comment #3 from pinskia at gcc dot gnu dot org 2006-11-11 00:34 --- *** Bug 29617 has been marked as a duplicate of this bug. *** -- pinskia at gcc dot gnu dot org changed: What|Removed |Added CC||edmar at freescale dot com http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29779
[Bug fortran/29779] [4.3 Regression] vectorizer fortran testcases failing
--- Comment #4 from pinskia at gcc dot gnu dot org 2006-11-11 00:36 --- I am going to look into this, this weekend and see why that patch caused a difference. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29779
[Bug tree-optimization/29801] New: [4.3 regression] ICE in set_lattice_value (tree-ssa-ccp.c)
compile the attached testcase with -Os on arm-eabi (maybe others). Generates the following ICE: testcase5.i: In function 'ext3_free_blocks': testcase5.i:22: internal compiler error: in set_lattice_value, at tree-ssa-ccp.c:421 Please submit a full bug report, with preprocessed source if appropriate. Testcase is reduced from a linux kernel module in CSiBE sources. -- Summary: [4.3 regression] ICE in set_lattice_value (tree-ssa- ccp.c) Product: gcc Version: 4.3.0 Status: UNCONFIRMED Keywords: ice-on-valid-code Severity: normal Priority: P3 Component: tree-optimization AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: rearnsha at gcc dot gnu dot org GCC target triplet: arm-none-eabi http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29801
[Bug tree-optimization/29801] [4.3 regression] ICE in set_lattice_value (tree-ssa-ccp.c)
--- Comment #1 from rearnsha at gcc dot gnu dot org 2006-11-11 00:43 --- Created an attachment (id=12590) --> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=12590&action=view) reduced test case -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29801
[Bug tree-optimization/29801] [4.3 regression] ICE in set_lattice_value (tree-ssa-ccp.c)
-- pinskia at gcc dot gnu dot org changed: What|Removed |Added Target Milestone|--- |4.3.0 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29801
[Bug fortran/27588] -fbounds-check should catch substring out of range accesses
--- Comment #8 from patchapp at dberlin dot org 2006-11-11 01:25 --- Subject: Bug number PR27588 A patch for this bug has been added to the patch tracker. The mailing list url for the patch is http://gcc.gnu.org/ml/gcc-patches/2006-11/msg00694.html -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=27588
[Bug middle-end/28651] [4.0 Regression] signed compare incorrectly false for (int)(U+4)<(int)U where U is unsigned INT_MAX (for optimized x86)
--- Comment #14 from debian-gcc at lists dot debian dot org 2006-11-11 02:11 --- the PR28651 testcase fails on the gcc-4.1-branch 20061110 on powerpc-linux and amd64-linux. FAIL: gcc.c-torture/execute/pr28651.c execution, -O0 FAIL: gcc.c-torture/execute/pr28651.c execution, -O1 FAIL: gcc.c-torture/execute/pr28651.c execution, -O2 FAIL: gcc.c-torture/execute/pr28651.c execution, -O3 -fomit-frame-pointer FAIL: gcc.c-torture/execute/pr28651.c execution, -O3 -g FAIL: gcc.c-torture/execute/pr28651.c execution, -Os -- debian-gcc at lists dot debian dot org changed: What|Removed |Added CC||debian-gcc at lists dot ||debian dot org http://gcc.gnu.org/bugzilla/show_bug.cgi?id=28651
[Bug middle-end/28651] [4.0 Regression] signed compare incorrectly false for (int)(U+4)<(int)U where U is unsigned INT_MAX (for optimized x86)
--- Comment #15 from debian-gcc at lists dot debian dot org 2006-11-11 02:12 --- a regression compared to 4.1 20061028 Matthias -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=28651
[Bug middle-end/28915] [4.1/4.2/4.3 regression] ICE: tree check: expected class 'constant', have 'declaration' (var_decl) in build_vector, at tree.c:973
--- Comment #16 from roger at eyesopen dot com 2006-11-11 02:19 --- A patch was posted by Jason, here http://gcc.gnu.org/ml/gcc-patches/2006-10/msg00566.html -- roger at eyesopen dot com changed: What|Removed |Added Keywords||patch http://gcc.gnu.org/bugzilla/show_bug.cgi?id=28915
[Bug testsuite/28913] "make install" required before testing libgomp and gfortran
--- Comment #2 from howarth at nitro dot med dot uc dot edu 2006-11-11 05:45 --- I noticed this issue tonight while doing a make check on a build of powerpc64-apple-darwin8 in the libgomp testsuite. A typical set of failures include... FAIL: libgomp.c++/ctor-1.C -O0 (test for excess errors) FAIL: libgomp.c++/ctor-1.C -O1 (test for excess errors) FAIL: libgomp.c++/ctor-1.C -O2 (test for excess errors) FAIL: libgomp.c++/ctor-1.C -O3 -fomit-frame-pointer (test for excess errors) FAIL: libgomp.c++/ctor-1.C -O3 -fomit-frame-pointer -funroll-loops (test for excess errors) FAIL: libgomp.c++/ctor-1.C -O3 -fomit-frame-pointer -funroll-all-loops -finline-functions (test for excess errors) FAIL: libgomp.c++/ctor-1.C -O3 -g (test for excess errors) FAIL: libgomp.c++/ctor-1.C -Os (test for excess errors) which in the libgomp.log show a typical failure of... set_ld_library_path_env_vars: ld_library_path=.:/Users/howarth/darwin_obj/powerpc64-apple-darwin8/./libgomp/.libs:/Users/howarth/darwin_obj/powerpc64-apple-darwin8/./libgomp/../libstdc++-v3/src/.libs:/Users/howarth/darwin_obj/gcc Executing on host: /Users/howarth/darwin_obj/gcc/xgcc -B/Users/howarth/darwin_obj/gcc/ /Users/howarth/gcc/libgomp/testsuite/libgomp.c++/ctor-1.C -B/Users/howarth/darwin_obj/powerpc64-apple- darwin8/./libgomp/ -I/Users/howarth/darwin_obj/powerpc64-apple-darwin8/./libgomp -I/Users/howarth/gcc/libgomp/testsuite/.. -fmessage-length=0 -fopenmp -O0 -L/Users/howarth/darwin_obj/po werpc64-apple-darwin8/./libgomp/.libs -lgomp -L/Users/howarth/darwin_obj/powerpc64-apple-darwin8/./libgomp/../libstdc++-v3/src/.libs -lstdc++ -lm -m64 -o ./ctor-1.exe(timeout = 300) ld64 warning: indirect library /Users/howarth/work/gcc42/lib/libgcc_s.1.dylib could not be loaded: file not found: /Users/howarth/work/gcc42/lib/libgcc_s.1.dylib ld64 warning: indirect library /Users/howarth/work/gcc42/lib/libgcc_s.1.dylib could not be loaded: file not found: /Users/howarth/work/gcc42/lib/libgcc_s.1.dylib output is: ld64 warning: indirect library /Users/howarth/work/gcc42/lib/libgcc_s.1.dylib could not be loaded: file not found: /Users/howarth/work/gcc42/lib/libgcc_s.1.dylib ld64 warning: indirect library /Users/howarth/work/gcc42/lib/libgcc_s.1.dylib could not be loaded: file not found: /Users/howarth/work/gcc42/lib/libgcc_s.1.dylib FAIL: libgomp.c++/ctor-1.C -O0 (test for excess errors) Excess errors: ld64 warning: indirect library /Users/howarth/work/gcc42/lib/libgcc_s.1.dylib could not be loaded: file not found: /Users/howarth/work/gcc42/lib/libgcc_s.1.dylib ld64 warning: indirect library /Users/howarth/work/gcc42/lib/libgcc_s.1.dylib could not be loaded: file not found: /Users/howarth/work/gcc42/lib/libgcc_s.1.dylib when the build isn't installed before the make check is run. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=28913