[Bug regression/35671] GCC 4.4.x vs. 4.2.x performance regression

2009-04-18 Thread t dot artem at mailcity dot com


--- Comment #6 from t dot artem at mailcity dot com  2009-04-18 08:18 
---
Many Linux distros compile binaries for a common lowest denominator so that you
could run a distro on very old computers and CPUs - their developers in most
cases choose -march=i686 or -march=i586.

I compile binaries which I have to run on very old computers like Pentium 2,
that's why I chose -march=pentium2 in the first place. Let's go back to the
results:



-march=i386 -O2 -pipe -ftree-vectorize

unrar-424 size: 169384 time: 1m34.372s
unrar-440 size: 175836 time: 1m32.014s

Without CPU optimizations a binary produced by GCC 4.4.0 is larger but a bit
faster.


-march=native -O2 -pipe -ftree-vectorize

unrar-424 size: 180488 time: 1m17.608s
unrar-440 size: 188348 time: 1m27.211s

With native CPU optimizations a binary produced by GCC 4.4.0 is again larger
but noticeably slower.


Pentium2 results have been already posted.

This is the second major release of GCC which produces subpar results ...


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=35671



[Bug middle-end/36902] Array bound warning with dead code after optimization

2009-04-18 Thread manu at gcc dot gnu dot org


--- Comment #34 from manu at gcc dot gnu dot org  2009-04-18 09:25 ---
Subject: Bug 36902

Author: manu
Date: Sat Apr 18 09:24:45 2009
New Revision: 146305

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=146305
Log:
2009-04-18  Manuel López-Ibáñez  

PR middle-end/36902
* tree-vrp.c (check_array_ref): Pass a location_t instead of a
pointer. Use warning_at instead of warning.
(search_for_addr_array): Likewise.
(check_array_bounds): Likewise.
(check_all_array_refs): Check that the incoming edge is not in the
list of edges to be removed.
(check_all_array_refs): Avoid the temporal pointer.
(vrp_visit_cond_stmt): Fix typo.
(simplify_switch_using_ranges): Handle the case where the switch
index is an integer constant.
testsuite/
* gcc.dg/pr36902.c: New.

Added:
trunk/gcc/testsuite/gcc.dg/pr36902.c
Modified:
trunk/gcc/ChangeLog
trunk/gcc/testsuite/ChangeLog
trunk/gcc/tree-vrp.c


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=36902



[Bug c/37921] __builtin_constant_p seems to be giving false positives

2009-04-18 Thread manu at gcc dot gnu dot org


--- Comment #7 from manu at gcc dot gnu dot org  2009-04-18 09:28 ---
REOPENED. This testcase is not fixed by the patch in PR 36902.


-- 

manu at gcc dot gnu dot org changed:

   What|Removed |Added

 Status|RESOLVED|REOPENED
 Resolution|DUPLICATE   |


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=37921



[Bug c/35392] Warning "array subscript is above array bounds" in inline fct

2009-04-18 Thread manu at gcc dot gnu dot org


--- Comment #2 from manu at gcc dot gnu dot org  2009-04-18 09:34 ---
This is probably not fixed by the patch to PR 36902. They are totally different
problems.


-- 

manu at gcc dot gnu dot org changed:

   What|Removed |Added

 Status|RESOLVED|UNCONFIRMED
 Resolution|DUPLICATE   |


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=35392



[Bug tree-optimization/39804] New: internal compiler error: in propagate_necessity, at tree-ssa-dce.c:754

2009-04-18 Thread segher at kernel dot crashing dot org
i386-linux-gcc -O1   -S probe_roms_32.i 

/home/segher/src/kernel/arch/x86/kernel/probe_roms_32.c: In function
'romchecksum':
/home/segher/src/kernel/arch/x86/kernel/probe_roms_32.c:165: internal compiler
error: in propagate_necessity, at tree-ssa-dce.c:754


-- 
   Summary: internal compiler error: in propagate_necessity, at
tree-ssa-dce.c:754
   Product: gcc
   Version: 4.5.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: tree-optimization
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: segher at kernel dot crashing dot org
  GCC host triplet: x86_64-linux
GCC target triplet: i386-linux


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39804



[Bug regression/35671] GCC 4.4.x vs. 4.2.x performance regression

2009-04-18 Thread rguenth at gcc dot gnu dot org


--- Comment #7 from rguenth at gcc dot gnu dot org  2009-04-18 10:01 ---
For better speed with -march=pentium2 you should add -mtune=generic which
will use only pentium2 features but tunes the code to not pessimize newer
processors.

That said, without a testcase and maybe some analysis (like a profile
comparison) there is nothing we can do.

If you want to play with some flags a bit I would suggest to try
-fno-tree-pre and/or -fno-ivopts and/or -funroll-loops.

Using profile-feedback will also help reducing code size and increase
performance.


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=35671



[Bug tree-optimization/39804] internal compiler error: in propagate_necessity, at tree-ssa-dce.c:754

2009-04-18 Thread rguenth at gcc dot gnu dot org


--- Comment #2 from rguenth at gcc dot gnu dot org  2009-04-18 10:02 ---
Mine.


-- 

rguenth at gcc dot gnu dot org changed:

   What|Removed |Added

 AssignedTo|unassigned at gcc dot gnu   |rguenth at gcc dot gnu dot
   |dot org |org
 Status|UNCONFIRMED |ASSIGNED
 Ever Confirmed|0   |1
   Last reconfirmed|-00-00 00:00:00 |2009-04-18 10:02:49
   date||


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39804



[Bug tree-optimization/39804] internal compiler error: in propagate_necessity, at tree-ssa-dce.c:754

2009-04-18 Thread rguenth at gcc dot gnu dot org


--- Comment #3 from rguenth at gcc dot gnu dot org  2009-04-18 10:05 ---
Hmm, I get

./cc1 -quiet -O probe_roms_32.i 
/home/segher/src/kernel/arch/x86/kernel/probe_roms_32.c: In function
'romchecksum':
/home/segher/src/kernel/arch/x86/kernel/probe_roms_32.c:165: error: found a
real definition for a non-register
/home/segher/src/kernel/arch/x86/kernel/probe_roms_32.c:165: error: in
statement
c.368_15 = c_12(D);
/home/segher/src/kernel/arch/x86/kernel/probe_roms_32.c:165: internal compiler
error: verify_ssa failed
Please submit a full bug report,
with preprocessed source if appropriate.
See  for instructions.


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39804



[Bug fortran/39782] [4.3/4.4/4.5 Regression] IO depends on uninitialised value

2009-04-18 Thread jb at gcc dot gnu dot org


--- Comment #5 from jb at gcc dot gnu dot org  2009-04-18 10:05 ---
Subject: Bug 39782

Author: jb
Date: Sat Apr 18 10:05:34 2009
New Revision: 146308

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=146308
Log:
2009-04-18  Janne Blomqvist  

PR libfortran/39782
* io/transfer.c (data_transfer_init): Don't flush before seek.
(finalize_transfer): Remove extra flush.


Modified:
trunk/libgfortran/ChangeLog
trunk/libgfortran/io/transfer.c


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39782



[Bug tree-optimization/39804] [4.5 Regression] internal compiler error: in propagate_necessity, at tree-ssa-dce.c:754

2009-04-18 Thread rguenth at gcc dot gnu dot org


-- 

rguenth at gcc dot gnu dot org changed:

   What|Removed |Added

   Keywords||ice-on-valid-code
Summary|internal compiler error: in |[4.5 Regression] internal
   |propagate_necessity, at |compiler error: in
   |tree-ssa-dce.c:754  |propagate_necessity, at
   ||tree-ssa-dce.c:754
   Target Milestone|--- |4.5.0


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39804



[Bug tree-optimization/39804] [4.5 Regression] internal compiler error: in propagate_necessity, at tree-ssa-dce.c:754

2009-04-18 Thread rguenth at gcc dot gnu dot org


--- Comment #4 from rguenth at gcc dot gnu dot org  2009-04-18 10:22 ---
typedef unsigned char u8;
struct __large_struct { unsigned long buf[100]; };
static inline __attribute__((always_inline)) unsigned long
__copy_from_user_inatomic(void *to, const void *from, unsigned long n)
{
  unsigned long ret = 0;
  asm volatile("1:  mov""b"" %2,%""b""1\n" "2:\n"
   ".section .fixup,\"ax\"\n"
   "3:  mov %3,%0\n"
   "xor""b"" %""b""1,%""b""1\n"
   "jmp 2b\n"
   ".previous\n"
   " .section __ex_table,\"a\"\n"
   " " ".balign 4" " " "\n"
   " " ".long" " " "1b" "," "3b" "\n"
   " .previous\n"
   : "=r" (ret), "=q"(*(u8 *)to)
   : "m" ((*(struct __large_struct *)(from))), "i" (1), "0" (ret));
  return ret;
}
int romchecksum(const unsigned char *rom, unsigned char c) 
{   
  unsigned char sum;
  for (sum = 0;
   !__copy_from_user_inatomic(&(c), ( typeof(c) *)(rom++), sizeof(c));)
sum += c;
}

Likely some missed corner-case in walking address-taken operations in asms.


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39804



[Bug middle-end/36902] Array bound warning with dead code after optimization

2009-04-18 Thread manu at gcc dot gnu dot org


--- Comment #35 from manu at gcc dot gnu dot org  2009-04-18 09:29 ---
FIXED in GCC 4.5


-- 

manu at gcc dot gnu dot org changed:

   What|Removed |Added

OtherBugsDependingO|37921   |
  nThis||
 Status|NEW |RESOLVED
 Resolution||FIXED


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=36902



[Bug tree-optimization/39804] internal compiler error: in propagate_necessity, at tree-ssa-dce.c:754

2009-04-18 Thread segher at kernel dot crashing dot org


--- Comment #1 from segher at kernel dot crashing dot org  2009-04-18 09:53 
---
Created an attachment (id=17653)
 --> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=17653&action=view)
testcase, not minimised


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39804



[Bug fortran/39805] New: PRIVATE type cannot be a component

2009-04-18 Thread dominiq at lps dot ens dot fr
From
http://groups.google.com/group/comp.lang.fortran/browse_thread/thread/ed70666b0c90b655#
the following code:

module m 
  implicit none 
  private 
  type :: t1 
integer :: i 
  end type 
  type :: t2 
type(t1) :: j 
  end type 
  contains 
subroutine sub() 
  implicit none 
  type :: t3 
type(t1) :: j 
  end type 
end subroutine 
end module 

gives the following error when compiled with gfortran (all versions I have):

private_2.f90:13.17:

  type :: t3 
 1
Error: The component 'j' is a PRIVATE type and cannot be a component of 't3',
which is PUBLIC at (1)

According the thread, it looks like a gfortran bug.


-- 
   Summary: PRIVATE type cannot be a component
   Product: gcc
   Version: 4.5.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: fortran
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: dominiq at lps dot ens dot fr


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39805



[Bug tree-optimization/39806] New: incorrect pointer hashing in ipa-struct-reorg.c

2009-04-18 Thread bonzini at gnu dot org
The way the new_local_vars hash table is hashed in ipa-struct-reorg.c causes
spurious code differences across runs of GCC.  I saw this, for example, in
gcc.dg/struct/wo_prof_two_strs.c:

--- base-mn10300-gcc-build/gcc/cc1 -mam33
+++ mn10300-gcc-build/gcc/cc1 -mam33
@@ -117,12 +117,12 @@
.comm   _p2,4,4
.local  _num
.comm   _num,4,4
-   .local  _p1___0
-   .comm   _p1___0,4,4
-   .local  _p1___1
-   .comm   _p1___1,4,4
.local  _p2___0
.comm   _p2___0,4,4
.local  _p2___1
.comm   _p2___1,4,4
+   .local  _p1___0
+   .comm   _p1___0,4,4
+   .local  _p1___1
+   .comm   _p1___1,4,4
.ident  "GCC: (GNU) 4.4.0 20090314 (experimental)"


-- 
   Summary: incorrect pointer hashing in ipa-struct-reorg.c
   Product: gcc
   Version: 4.5.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: tree-optimization
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: bonzini at gnu dot org


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39806



[Bug tree-optimization/39806] incorrect pointer hashing in ipa-struct-reorg.c

2009-04-18 Thread bonzini at gnu dot org


-- 

bonzini at gnu dot org changed:

   What|Removed |Added

 Status|UNCONFIRMED |NEW
 Ever Confirmed|0   |1
   Last reconfirmed|-00-00 00:00:00 |2009-04-18 11:12:35
   date||


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39806



[Bug fortran/39805] PRIVATE type cannot be a component

2009-04-18 Thread burnus at gcc dot gnu dot org


--- Comment #1 from burnus at gcc dot gnu dot org  2009-04-18 11:29 ---


*** This bug has been marked as a duplicate of 39800 ***


-- 

burnus at gcc dot gnu dot org changed:

   What|Removed |Added

 Status|UNCONFIRMED |RESOLVED
 Resolution||DUPLICATE


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39805



[Bug fortran/39800] Rejects PRIVATE TYPE as compont of local type declaration

2009-04-18 Thread burnus at gcc dot gnu dot org


--- Comment #1 from burnus at gcc dot gnu dot org  2009-04-18 11:29 ---
*** Bug 39805 has been marked as a duplicate of this bug. ***


-- 

burnus at gcc dot gnu dot org changed:

   What|Removed |Added

 CC||dominiq at lps dot ens dot
   ||fr


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39800



[Bug target/39584] Default configure options for i686 OpenBSD produce gcc that FAILs too many Tests

2009-04-18 Thread rob1weld at aol dot com


--- Comment #1 from rob1weld at aol dot com  2009-04-18 12:49 ---
Thanks for adjusting the "Severity" for me Andrew. There have 
been _small_ improvements in the Testsuite Results recently.

The "C" compiler has gone from 828 errors a couple of months ago to a 
new low of only 742, but the "C++" compiler went from 53 to 2198 errors.


Results for 4.5.0 20090417 (experimental) [trunk revision 146277] (GCC)
testsuite on i386-unknown-openbsd4.5
http://gcc.gnu.org/ml/gcc-testresults/2009-04/msg01867.html

Results for 4.5.0 20090407 (experimental) [trunk revision 145649] (GCC)
testsuite on i686-unknown-linux-gnu
http://gcc.gnu.org/ml/gcc-testresults/2009-04/msg00745.html

Results for 4.4.0 20090224 (experimental) [trunk revision 144400] (GCC)
testsuite on i386-unknown-openbsd4.5
http://gcc.gnu.org/ml/gcc-testresults/2009-04/msg00420.html

Rob


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39584



[Bug tree-optimization/39804] [4.5 Regression] internal compiler error: in propagate_necessity, at tree-ssa-dce.c:754

2009-04-18 Thread rguenth at gcc dot gnu dot org


--- Comment #5 from rguenth at gcc dot gnu dot org  2009-04-18 13:02 ---
Fixed.


-- 

rguenth at gcc dot gnu dot org changed:

   What|Removed |Added

 Status|ASSIGNED|RESOLVED
 Resolution||FIXED


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39804



[Bug tree-optimization/39804] [4.5 Regression] internal compiler error: in propagate_necessity, at tree-ssa-dce.c:754

2009-04-18 Thread rguenth at gcc dot gnu dot org


--- Comment #6 from rguenth at gcc dot gnu dot org  2009-04-18 13:02 ---
Subject: Bug 39804

Author: rguenth
Date: Sat Apr 18 13:02:00 2009
New Revision: 146314

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=146314
Log:
2009-04-18  Richard Guenther  

PR middle-end/39804
* tree-ssa-ccp.c (fold_stmt_1): New function factored from ...
(fold_stmt): ... this and ...
(fold_stmt_inplace): ... this.
(fold_stmt_1): Fold references in calls and asms.
* tree-cfg.c (remove_useless_stmts_cond): Use fold_stmt.

* gcc.target/i386/pr39804.c: New testcase.

Added:
trunk/gcc/testsuite/gcc.target/i386/pr39804.c
Modified:
trunk/gcc/ChangeLog
trunk/gcc/testsuite/ChangeLog
trunk/gcc/tree-cfg.c
trunk/gcc/tree-ssa-ccp.c


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39804



[Bug c/35210] gcc incorrectly allows calling function returning "const void"

2009-04-18 Thread jsm28 at gcc dot gnu dot org


-- 

jsm28 at gcc dot gnu dot org changed:

   What|Removed |Added

OtherBugsDependingO||16620, 16989
  nThis||
 Status|UNCONFIRMED |NEW
 Ever Confirmed|0   |1
   Last reconfirmed|-00-00 00:00:00 |2009-04-18 14:25:23
   date||


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=35210



[Bug tree-optimization/39804] [4.5 Regression] internal compiler error: in propagate_necessity, at tree-ssa-dce.c:754

2009-04-18 Thread hjl at gcc dot gnu dot org


--- Comment #7 from hjl at gcc dot gnu dot org  2009-04-18 14:54 ---
Subject: Bug 39804

Author: hjl
Date: Sat Apr 18 14:54:32 2009
New Revision: 146315

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=146315
Log:
2009-04-18  H.J. Lu  

Backport from mainline:
2009-04-18  Richard Guenther  

PR middle-end/39804
* gcc.target/i386/pr39804.c: New testcase.

Added:
branches/gcc-4_4-branch/gcc/testsuite/gcc.target/i386/pr39804.c
  - copied unchanged from r146314,
trunk/gcc/testsuite/gcc.target/i386/pr39804.c
Modified:
branches/gcc-4_4-branch/gcc/testsuite/ChangeLog


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39804



[Bug testsuite/39807] New: [4.4/4.5 Regression] Reporting of testsuite failures are messed up when using -j

2009-04-18 Thread pinskia at gcc dot gnu dot org
When running dg-extract-results on powerpc-darwin (I have not tried on other
targets), I get the following error message from awk:
awk: /tmp/dg-combine-results-13477-nUnyyO/list27 makes too many open files
 input record number 11671, file 
 source line number 40

So only the summary of the how many failed is generated and what actual failed.


-- 
   Summary: [4.4/4.5 Regression] Reporting of testsuite failures are
messed up when using -j
   Product: gcc
   Version: 4.4.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: testsuite
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: pinskia at gcc dot gnu dot org


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39807



[Bug testsuite/39807] [4.4/4.5 Regression] Reporting of testsuite failures are messed up when using -j

2009-04-18 Thread pinskia at gcc dot gnu dot org


-- 

pinskia at gcc dot gnu dot org changed:

   What|Removed |Added

   Target Milestone|--- |4.4.0


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39807



[Bug testsuite/39807] [4.4/4.5 Regression] Reporting of testsuite failures are messed up when using -j

2009-04-18 Thread ebotcazou at gcc dot gnu dot org


--- Comment #1 from ebotcazou at gcc dot gnu dot org  2009-04-18 15:17 
---
Same on Solaris.


-- 

ebotcazou at gcc dot gnu dot org changed:

   What|Removed |Added

 CC||ebotcazou at gcc dot gnu dot
   ||org
 Status|UNCONFIRMED |NEW
 Ever Confirmed|0   |1
   Last reconfirmed|-00-00 00:00:00 |2009-04-18 15:17:21
   date||


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39807



[Bug rtl-optimization/27468] sign-extending Alpha instructions not exploited

2009-04-18 Thread mattst88 at gmail dot com


--- Comment #2 from mattst88 at gmail dot com  2009-04-18 15:22 ---
For reference, here's what the Compaq C compiler generates for each of these.

(In reply to comment #0)
> The sign-extending Alpha instructions like addl are sometimes not used. I
> don't know whether the SEE pass is supposed to affect this, or whether it
> is something a combiner pass should do...


Compaq C:
 :
   0:   10 00 f0 43 sextl   a0,a0
   4:   20 01 f0 43 negla0,v0
   8:   c0 08 10 46 cmovge  a0,a0,v0
   c:   00 00 fe 2f unop
  10:   01 80 fa 6b ret

> #include 
> 
> /* gcc 4.2.0 20060506:
> negqa0,v0
> cmovge  a0,a0,v0
> sextl   v0,v0
>optimal:
> negla0,v0
> cmovge  a0,a0,v0  */   
> int f5(int x) {
> return abs(x);
> }
> 
> 

Compaq C:
 :
   0:   30 17 06 4a sll a0,0x30,a0
   4:   90 17 06 4a sra a0,0x30,a0
   8:   62 05 10 42 s4subq  a0,a0,t1
   c:   42 06 50 40 s8addq  t1,a0,t1
  10:   42 06 50 40 s8addq  t1,a0,t1
  14:   40 06 50 40 s8addq  t1,a0,v0
  18:   01 80 fa 6b ret

> /* gcc 4.2.0 20060506:
> s4addq  a0,a0,v0
> s4addq  v0,v0,v0
> s8addq  v0,a0,v0
> s8addq  v0,a0,v0 #
> sextl   v0,v0# can be combined to s8addl  v0,a0,v0 */
> int64_t f23(int16_t x) {
> return 1609 * x;
> }
> 
> 

Compaq C:
 :
   0:   00 80 5f 24 ldaht1,-32768
   4:   00 80 7f 24 ldaht2,-32768
   8:   02 08 02 46 xor a0,t1,t1
   c:   00 00 43 40 addlt1,t2,v0
  10:   01 80 fa 6b ret

> /* gcc 4.2.0 20060506:
>ldaht0,-32768
>xor a0,t0,v0
>addqv0,t0,v0 #
>sextl   v0,v0# can be combined to addlv0,t0,v0 */
> unsigned f49(unsigned val) {
> return (val ^ 0x8000) - 0x8000;
> }
> 

In the first two cases, the Compaq C compiler seems to be more careful about
input arguments.


-- 

mattst88 at gmail dot com changed:

   What|Removed |Added

 CC||mattst88 at gmail dot com


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=27468



[Bug rtl-optimization/27469] zero extension not eliminated

2009-04-18 Thread mattst88 at gmail dot com


--- Comment #2 from mattst88 at gmail dot com  2009-04-18 15:25 ---
(In reply to comment #0)
> unsigned parity(unsigned x) {
> x ^= x >> 16;
> x ^= x >> 8;
> x ^= x >> 4;
> x &= 0xf;
> return (0x6996 >> x) & 1;
> }
> 
> gcc 4.2.0 20060506 produces:
> extwl   a0,0x2,t2
> lda v0,27030
> xor t2,a0,t2
> zapnot  t2,0xf,t1 # redundant zero-extension
> srl t1,0x8,t1
> xor t1,t2,t1
> zapnot  t1,0xf,t0 # redundant zero-extension
> srl t0,0x4,t0
> xor t0,t1,t0
> and t0,0xf,t0
> sra v0,t0,v0
> and v0,0x1,v0
> 
> -fsee doesn't change anything here.
> 

Compaq C generates:
 :
   0:   82 16 02 4a srl a0,0x10,t1
   4:   96 69 bf 20 lda t4,27030
   8:   02 08 02 46 xor a0,t1,t1
   c:   83 16 41 48 srl t1,0x8,t2
  10:   02 08 43 44 xor t1,t2,t1
  14:   84 96 40 48 srl t1,0x4,t3
  18:   02 08 44 44 xor t1,t3,t1
  1c:   02 f0 41 44 and t1,0xf,t1
  20:   82 07 a2 48 sra t4,t1,t1
  24:   00 30 40 44 and t1,0x1,v0
  28:   01 80 fa 6b ret


-- 

mattst88 at gmail dot com changed:

   What|Removed |Added

 CC||mattst88 at gmail dot com


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=27469



[Bug preprocessor/39647] Syntax checks in #line not quite right

2009-04-18 Thread jsm28 at gcc dot gnu dot org


--- Comment #1 from jsm28 at gcc dot gnu dot org  2009-04-18 15:28 ---
Subject: Bug 39647

Author: jsm28
Date: Sat Apr 18 15:28:40 2009
New Revision: 146316

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=146316
Log:
libcpp:
PR preprocessor/39647
* directives.c (check_eol): Add parameter expand.
(do_undef, parse_include, do_line, do_linemarker, do_ident,
do_pragma_once, do_pragma_system_header, do_ifdef, do_ifndef,
do_else, do_endif, do_assert, do_unassert): All callers changed.
Pass true from do_line, false elsewhere.

gcc/testsuite:
* gcc.dg/cpp/line7.c: New test.

Added:
trunk/gcc/testsuite/gcc.dg/cpp/line7.c
Modified:
trunk/gcc/testsuite/ChangeLog
trunk/libcpp/ChangeLog
trunk/libcpp/directives.c


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39647



[Bug preprocessor/39647] Syntax checks in #line not quite right

2009-04-18 Thread jsm28 at gcc dot gnu dot org


--- Comment #2 from jsm28 at gcc dot gnu dot org  2009-04-18 15:30 ---
Fixed for 4.5.


-- 

jsm28 at gcc dot gnu dot org changed:

   What|Removed |Added

 Status|NEW |RESOLVED
  Known to work||4.5.0
 Resolution||FIXED
   Target Milestone|--- |4.5.0


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39647



[Bug fortran/39800] Rejects PRIVATE TYPE as compont of local type declaration

2009-04-18 Thread pault at gcc dot gnu dot org


--- Comment #2 from pault at gcc dot gnu dot org  2009-04-18 16:59 ---
(In reply to comment #0)

> Thus there are two bugs:
> - Local TYPE declarations in procedures are wrongly rejected

by local, I suppose that you mean host associated?  As you say,

> - Public types with private components are allowed in F2003 only,

...so that host association is the only allowed path for this in F95.

I would put the first bug as being very high in embarrassment:-(

I have a patch being regression tested.

Paul


-- 

pault at gcc dot gnu dot org changed:

   What|Removed |Added

 AssignedTo|unassigned at gcc dot gnu   |pault at gcc dot gnu dot org
   |dot org |
 Status|UNCONFIRMED |ASSIGNED
 Ever Confirmed|0   |1
   Last reconfirmed|-00-00 00:00:00 |2009-04-18 16:59:53
   date||


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39800



[Bug fortran/39782] [4.3/4.4/4.5 Regression] IO depends on uninitialised value

2009-04-18 Thread jv244 at cam dot ac dot uk


--- Comment #6 from jv244 at cam dot ac dot uk  2009-04-18 17:11 ---
since this is a regression, what about back porting this fix to other branches
(in particular 4.4). This is the only issue that triggers running the >1600
testcases in CP2K testsuite.


-- 

jv244 at cam dot ac dot uk changed:

   What|Removed |Added

 CC||jb at gcc dot gnu dot org


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39782



[Bug c/39808] New: warn_unused_result fails to produce warning

2009-04-18 Thread sandmann at daimi dot au dot dk
The program to be attached produces the warning

[...@dhcp-100-2-40 ~]$ gcc gb.c
gb.c: In function ‘main’:
gb.c:11: warning: ignoring return value of ‘foo’, declared with attribute
warn_unused_result

which is expected. However, it should also produce a warning for line 12, which
is exactly the same except a dummy variable is declared.



Using built-in specs.
Target: i386-redhat-linux
Configured with: ../configure --prefix=/usr --mandir=/usr/share/man
--infodir=/usr/share/info --with-bugurl=http://bugzilla.redhat.com/bugzilla
--enable-bootstrap --enable-shared --enable-threads=posix
--enable-checking=release --with-system-zlib --enable-__cxa_atexit
--disable-libunwind-exceptions
--enable-languages=c,c++,objc,obj-c++,java,fortran,ada --enable-java-awt=gtk
--disable-dssi --enable-plugin
--with-java-home=/usr/lib/jvm/java-1.5.0-gcj-1.5.0.0/jre
--enable-libgcj-multifile --enable-java-maintainer-mode
--with-ecj-jar=/usr/share/java/eclipse-ecj.jar --disable-libjava-multilib
--with-cpu=generic --build=i386-redhat-linux
Thread model: posix
gcc version 4.3.2 20081105 (Red Hat 4.3.2-7) (GCC)


-- 
   Summary: warn_unused_result fails to produce warning
   Product: gcc
   Version: unknown
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: c
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: sandmann at daimi dot au dot dk
 GCC build triplet: i386-redhat-linux
  GCC host triplet: i386-redhat-linux
GCC target triplet: i386-redhat-linux


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39808



[Bug c/39808] warn_unused_result fails to produce warning

2009-04-18 Thread sandmann at daimi dot au dot dk


--- Comment #1 from sandmann at daimi dot au dot dk  2009-04-18 17:32 
---
Created an attachment (id=17654)
 --> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=17654&action=view)
program


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39808



[Bug preprocessor/39646] __FILE__ breaks for empty file name

2009-04-18 Thread jsm28 at gcc dot gnu dot org


--- Comment #1 from jsm28 at gcc dot gnu dot org  2009-04-18 17:36 ---
Subject: Bug 39646

Author: jsm28
Date: Sat Apr 18 17:36:28 2009
New Revision: 146319

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=146319
Log:
libcpp:
PR preprocessor/39646
* include/line-map.h (enum lc_reason): Add LC_RENAME_VERBATIM.
* line-map.c (linemap_add): Handle LC_RENAME_VERBATIM.
* directives.c (do_line, do_linemarker): Use LC_RENAME_VERBATIM in
place of LC_RENAME.

gcc/testsuite:
* gcc.dg/cpp/line8.c: New test.

Added:
trunk/gcc/testsuite/gcc.dg/cpp/line8.c
Modified:
trunk/gcc/testsuite/ChangeLog
trunk/libcpp/ChangeLog
trunk/libcpp/directives.c
trunk/libcpp/include/line-map.h
trunk/libcpp/line-map.c


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39646



[Bug preprocessor/39646] __FILE__ breaks for empty file name

2009-04-18 Thread jsm28 at gcc dot gnu dot org


--- Comment #2 from jsm28 at gcc dot gnu dot org  2009-04-18 17:37 ---
Fixed for 4.5.


-- 

jsm28 at gcc dot gnu dot org changed:

   What|Removed |Added

 Status|NEW |RESOLVED
  Known to work||4.5.0
 Resolution||FIXED
   Target Milestone|--- |4.5.0


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39646



[Bug tree-optimization/39806] incorrect pointer hashing in ipa-struct-reorg.c

2009-04-18 Thread steven at gcc dot gnu dot org


--- Comment #1 from steven at gcc dot gnu dot org  2009-04-18 19:24 ---
Spurious differences fall in the "wrong code" category.


-- 

steven at gcc dot gnu dot org changed:

   What|Removed |Added

   Keywords||wrong-code


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39806



[Bug libstdc++/39802] std::num_get fails to parse negative zero input correctly

2009-04-18 Thread paolo at gcc dot gnu dot org


--- Comment #2 from paolo at gcc dot gnu dot org  2009-04-18 19:28 ---
Subject: Bug 39802

Author: paolo
Date: Sat Apr 18 19:28:40 2009
New Revision: 146323

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=146323
Log:
2009-04-18  Paolo Carlini  

PR libstdc++/39802
* include/bits/locale_facets.tcc (num_get<>::_M_extract_int
(_InIter, _InIter, ios_base&, ios_base::iostate&, _ValueT&)):
Always accept negative values, for unsigned types too.
* testsuite/22_locale/num_get/get/char/39802.cc: New.
* testsuite/22_locale/num_get/get/wchar_t/39802.cc: Likewise.

Added:
trunk/libstdc++-v3/testsuite/22_locale/num_get/get/char/39802.cc
trunk/libstdc++-v3/testsuite/22_locale/num_get/get/wchar_t/39802.cc
Modified:
trunk/libstdc++-v3/ChangeLog
trunk/libstdc++-v3/include/bits/locale_facets.tcc


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39802



[Bug libstdc++/39802] std::num_get fails to parse negative zero input correctly

2009-04-18 Thread paolo dot carlini at oracle dot com


--- Comment #3 from paolo dot carlini at oracle dot com  2009-04-18 19:31 
---
Fixed in mainline, will be fixed in 4.4.1 too.


-- 

paolo dot carlini at oracle dot com changed:

   What|Removed |Added

   Target Milestone|--- |4.4.1


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39802



[Bug tree-optimization/35452] erasing uncessary warning for basic block frequency computation

2009-04-18 Thread steven at gcc dot gnu dot org


--- Comment #2 from steven at gcc dot gnu dot org  2009-04-18 20:01 ---
Similar as what is said in commen #0, the detailed vrp1 dump of trunk today
has:

Removing basic block 3
;; basic block 3, loop depth 0, count 0
;; prev block 7, next block 4
;; pred:
;; succ:   8 [100.0%]  (fallthru,exec)
Invalid sum of incoming frequencies 0, should be 5000
goto ;

Note the *Removing* basic block.  The CFG branch probabilities have already
been updated at this point.  The edge redirection functions do not take care of
this (often only the caller knows how the profile/predictions should be
updated).  You can see in the dump at the end what the function looks like
after vrp1, and you'll notice the branch probabilities are OK.

So there is no bug -> INVALID.

But thanks for the report.  It took me a little while to figure out what is
going on.  We should probably not dump this "Invalid sum" blah-blah for blocks
that we are about to remove.


-- 

steven at gcc dot gnu dot org changed:

   What|Removed |Added

 Status|UNCONFIRMED |RESOLVED
 Resolution||INVALID


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=35452



[Bug c/35210] gcc incorrectly allows calling function returning "const void"

2009-04-18 Thread jsm28 at gcc dot gnu dot org


--- Comment #3 from jsm28 at gcc dot gnu dot org  2009-04-18 20:03 ---
Subject: Bug 35210

Author: jsm28
Date: Sat Apr 18 20:02:47 2009
New Revision: 146324

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=146324
Log:
PR c/35210
* c-typeck.c (build_function_call): Check for calling a function
with qualified void return types.  Call require_complete_type when
generating a trap.

testsuite:
* gcc.dg/call-diag-2.c: New test.

Added:
trunk/gcc/testsuite/gcc.dg/call-diag-2.c
Modified:
trunk/gcc/ChangeLog
trunk/gcc/c-typeck.c
trunk/gcc/testsuite/ChangeLog


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=35210



[Bug c/35210] gcc incorrectly allows calling function returning "const void"

2009-04-18 Thread jsm28 at gcc dot gnu dot org


--- Comment #4 from jsm28 at gcc dot gnu dot org  2009-04-18 20:04 ---
Fixed for 4.5.


-- 

jsm28 at gcc dot gnu dot org changed:

   What|Removed |Added

 Status|NEW |RESOLVED
  Known to work||4.5.0
 Resolution||FIXED
   Target Milestone|--- |4.5.0


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=35210



[Bug fortran/39800] Rejects PRIVATE TYPE as compont of local type declaration

2009-04-18 Thread burnus at gcc dot gnu dot org


--- Comment #3 from burnus at gcc dot gnu dot org  2009-04-18 20:35 ---
> > Thus there are two bugs:
> > - Local TYPE declarations in procedures are wrongly rejected
> by local, I suppose that you mean host associated?

No, I mean:
  subroutine sub()
TYPE :: new_local_type
  type(foo) :: x

Here, it does not matter whether "foo" is host or use associated or has a local
scope. It is simply a TYPE which is entirely restricted to "sub" and procedures
contained in "sub" and thus there cannot be any use-association problem.

A different matter is:

  subroutine sub2(x)
TYPE :: local_type; SEQUENCE; type(foo) :: y; end type
type(local_type) :: x

Then the problem (in F95) is that "x" is a dummy while type(local_type)
contains a private element. Gfortran properly rejects this with -std=f95 and
accepts it otherwise.

> I would put the first bug as being very high in embarrassment:-(

Indeed. I'm surprised that it did not appear earlier, but I checked: it is not
a regression.


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39800



[Bug c/39809] New: emit-rtl.c:608(-> gen_rtx_REG): warning: array subscript is above array bounds

2009-04-18 Thread jbglaw at lug-owl dot de
While mass-building cross-compilers, I got this warning:

$ ./configure --target v850e-linux --prefix
/home/jbglaw/devel/build-temp-v850e-linux/usr --enable-languages=c,c++
--disable-libc --disable-libmudflap --disable-libssp --disable-multilib
--disable-shared --enable-static --with-system-zlib --enable-threads
$ make all-gcc
gcc -c  -g -O2 -DIN_GCC -DCROSS_DIRECTORY_STRUCTURE  -W -Wall -Wwrite-strings
-Wstrict-prototypes -Wmissing-prototypes -Wcast-qual -Wold-style-definition
-Wc++-compat -Wmissing-format-attribute -pedantic -Wno-long-long
-Wno-variadic-macros -Wno-overlength-strings -fno-common  -DHAVE_CONFIG_H -I.
-I. -I/home/jbglaw/devel/sources/gcc/gcc -I/home/jbglaw/devel/sources/gcc/gcc/.
-I/home/jbglaw/devel/sources/gcc/gcc/../include
-I/home/jbglaw/devel/sources/gcc/gcc/../libcpp/include 
-I/home/jbglaw/devel/sources/gcc/gcc/../libdecnumber
-I/home/jbglaw/devel/sources/gcc/gcc/../libdecnumber/dpd -I../libdecnumber   
/home/jbglaw/devel/sources/gcc/gcc/emit-rtl.c -o emit-rtl.o
/home/jbglaw/devel/sources/gcc/gcc/emit-rtl.c: In function ‘gen_rtx_REG’:
/home/jbglaw/devel/sources/gcc/gcc/emit-rtl.c:608: warning: array subscript is
above array bounds

emit-rtl.c:
 608   if (regno == (unsigned) PIC_OFFSET_TABLE_REGNUM
 609   && fixed_regs[PIC_OFFSET_TABLE_REGNUM])
 610 return pic_offset_table_rtx;

$ grep PIC_OFFSET_TABLE_REGNUM config/v850/*
$ 

$ grep PIC_OFFSET_TABLE_REGNUM defaults.h 
#ifndef PIC_OFFSET_TABLE_REGNUM
#define PIC_OFFSET_TABLE_REGNUM INVALID_REGNUM

$ grep INVALID_REGNUM rtl.h 
#define INVALID_REGNUM  (~(unsigned int) 0)

Other targets triggering this warning:
$ zgrep gen_rtx_REG *.log.gz|cut -f 1 -d .
avr-linux
frv-linux
h8300-elf
v850e-linux
vax-linux
xtensa-linux


-- 
   Summary: emit-rtl.c:608(-> gen_rtx_REG): warning: array subscript
is above array bounds
   Product: gcc
   Version: 4.5.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: c
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: jbglaw at lug-owl dot de
 GCC build triplet: i686-linux
  GCC host triplet: i686-linux
GCC target triplet: v850e-linux


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39809



[Bug bootstrap/39810] New: [melt] - revision 146327 - compiler-probe.c:106: undefined reference to `unlikely'

2009-04-18 Thread rob1weld at aol dot com
There are excess warnings and a build breaking error in revision 146327 
on i386-pc-solaris2.11 (and perhaps other Platforms too).

Host compiler:
# gcc -v
Using built-in specs.
Target: i386-pc-solaris2.11
Configured with: ../gcc_trunk/configure --prefix=/usr/local/gcc4
--enable-languages=ada,c,c++,fortran,java,objc,obj-c++ --enable-shared
--disable-static --enable-multilib --enable-decimal-float
--with-long-double-128 --with-included-gettext --disable-stage1-checking
--enable-checking=release --with-tune=k8 --with-cpu=k8 --with-arch=k8
--with-gnu-as --with-as=/usr/local/bin/as --with-gnu-ld
--with-ld=/usr/local/bin/ld --with-gmp=/usr/local --with-mpfr=/usr/local
Thread model: posix
gcc version 4.5.0 20090406 (experimental) [trunk revision 145592] (GCC) 


Breaks here:

# gmake
...
ranlib  libbackend.a
gcc  -g -fkeep-inline-functions -DIN_GCC   -W -Wall -Wwrite-strings
-Wstrict-prototypes -Wmissing-prototypes -Wcast-qual -Wold-style-definition
-Wc++-compat -Wmissing-format-attribute -pedantic -Wno-long-long
-Wno-variadic-macros -Wno-overlength-strings   -DHAVE_CONFIG_H  -rdynamic -o
cc1-dummy c-lang.o stub-objc.o attribs.o c-errors.o c-lex.o c-pragma.o c-decl.o
c-typeck.o c-convert.o c-aux-info.o c-common.o c-opts.o c-format.o
c-semantics.o c-ppoutput.o c-cppbuiltin.o c-objc-common.o c-dump.o c-pch.o
c-parser.o i386-c.o sol2-c.o c-gimplify.o tree-mudflap.o c-pretty-print.o
c-omp.o dummy-checksum.o \
  main.o   compiler-probe.o libbackend.a ../libcpp/libcpp.a
../libdecnumber/libdecnumber.a ../libcpp/libcpp.a ./../intl/libintl.a 
../libiberty/libiberty.a ../libdecnumber/libdecnumber.a -L/lib -lcloog
-L/usr/local/lib -lppl_c -lppl -lgmpxx  -L/usr/local/lib -L/usr/local/lib
-lmpfr -lgmp -L/usr/local/lib -lltdl -L/usr/local/lib -lgdbm
gcc: unrecognized option '-rdynamic'
compiler-probe.o: In function `__drand48_iterate':
/usr/share/src/melt-branch_build/gcc/../../melt-branch/gcc/compiler-probe.c:106:
undefined reference to `unlikely'
libbackend.a(basilys.o): In function `basilysgc_ppstrbuf_ppl_varnamvect':
/usr/share/src/melt-branch_build/gcc/../../melt-branch/gcc/basilys.c:8707:
undefined reference to `ppl_io_asprint_Coefficient'
/usr/share/src/melt-branch_build/gcc/../../melt-branch/gcc/basilys.c:8712:
undefined reference to `ppl_io_asprint_Linear_Expression'
/usr/share/src/melt-branch_build/gcc/../../melt-branch/gcc/basilys.c:8717:
undefined reference to `ppl_io_asprint_Constraint'
/usr/share/src/melt-branch_build/gcc/../../melt-branch/gcc/basilys.c:8722:
undefined reference to `ppl_io_asprint_Constraint_System'
/usr/share/src/melt-branch_build/gcc/../../melt-branch/gcc/basilys.c:8727:
undefined reference to `ppl_io_asprint_Generator'
/usr/share/src/melt-branch_build/gcc/../../melt-branch/gcc/basilys.c:8731:
undefined reference to `ppl_io_asprint_Generator_System'
/usr/share/src/melt-branch_build/gcc/../../melt-branch/gcc/basilys.c:8736:
undefined reference to `ppl_io_asprint_Polyhedron'
collect2: ld returned 1 exit status
gmake[3]: *** [cc1-dummy] Error 1
gmake[3]: Leaving directory `/usr/share/src/melt-branch_build/gcc'
gmake[2]: *** [all-stage1-gcc] Error 2
gmake[2]: Leaving directory `/usr/share/src/melt-branch_build'
gmake[1]: *** [stage1-bubble] Error 2
gmake[1]: Leaving directory `/usr/share/src/melt-branch_build'
gmake: *** [all] Error 2


Also there are still plenty of warnings in:
../melt-branch/gcc/compiler-probe.c:
../melt-branch/gcc/basilys.c


Thanks,
Rob


-- 
   Summary: [melt] - revision 146327 - compiler-probe.c:106:
undefined reference to `unlikely'
   Product: gcc
   Version: 4.5.0
Status: UNCONFIRMED
  Severity: major
  Priority: P3
 Component: bootstrap
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: rob1weld at aol dot com
 GCC build triplet: i386-pc-solaris2.11
  GCC host triplet: i386-pc-solaris2.11
GCC target triplet: i386-pc-solaris2.11


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39810



[Bug fortran/31243] truncating strings longer than 2**32 characters

2009-04-18 Thread jvdelisle at gcc dot gnu dot org


--- Comment #8 from jvdelisle at gcc dot gnu dot org  2009-04-18 22:07 
---
Unassigning myself, time constraints


-- 

jvdelisle at gcc dot gnu dot org changed:

   What|Removed |Added

 AssignedTo|jvdelisle at gcc dot gnu dot|unassigned at gcc dot gnu
   |org |dot org
 Status|ASSIGNED|NEW


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=31243



[Bug fortran/39811] New: Bogus warning for valid continuation lines

2009-04-18 Thread burnus at gcc dot gnu dot org
Found in
http://groups.google.com/group/comp.lang.fortran/browse_thread/thread/58d772090de9d1f4
Test case by Dick Hendrickson, gfortran tested by Ron Shepard.

The executable is OK, but gfortran prints a bogus warning:
  Warning: '&' not allowed by itself in line 2

(The run-time result is:
 Print rather a lot of ampersands &&&
)

  PRINT *, 'Print rather a lot of ampersands &
   &
   &'
   end


-- 
   Summary: Bogus warning for valid continuation lines
   Product: gcc
   Version: 4.5.0
Status: UNCONFIRMED
  Severity: normal
  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=39811



[Bug fortran/31190] minimum field width list-directed output

2009-04-18 Thread jvdelisle at gcc dot gnu dot org


--- Comment #8 from jvdelisle at gcc dot gnu dot org  2009-04-18 22:22 
---
Unassigning, too low priority.  This would be a good one for any beginners to
start learning the I/O formatting stuff.  If you are interested in working
this, let me help.  Glad to mentor.


-- 

jvdelisle at gcc dot gnu dot org changed:

   What|Removed |Added

 AssignedTo|jvdelisle at gcc dot gnu dot|unassigned at gcc dot gnu
   |org |dot org
 Status|ASSIGNED|NEW


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=31190



[Bug fortran/39811] Bogus warning for valid continuation lines

2009-04-18 Thread burnus at gcc dot gnu dot org


--- Comment #1 from burnus at gcc dot gnu dot org  2009-04-18 22:32 ---
Patch (not regtested):

Index: scanner.c
===
--- scanner.c   (revision 146331)
+++ scanner.c   (working copy)
@@ -1404,7 +1404,10 @@
   if (c == '&')
{
  if (seen_ampersand)
-   seen_ampersand = 0;
+   {
+ seen_ampersand = 0;
+ seen_printable = 1;
+   }
  else
seen_ampersand = 1;
}


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39811



[Bug c/22367] constraints on '&' not fully implemented

2009-04-18 Thread jsm28 at gcc dot gnu dot org


--- Comment #2 from jsm28 at gcc dot gnu dot org  2009-04-18 22:34 ---
Subject: Bug 22367

Author: jsm28
Date: Sat Apr 18 22:34:10 2009
New Revision: 146332

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=146332
Log:
PR c/22367
* c-typeck.c (build_unary_op): Check for taking address of
expression of type void.

testsuite:
* gcc.dg/lvalue-6.c, gcc.dg/lvalue-7.c: New tests.

Added:
trunk/gcc/testsuite/gcc.dg/lvalue-6.c
trunk/gcc/testsuite/gcc.dg/lvalue-7.c
Modified:
trunk/gcc/ChangeLog
trunk/gcc/c-typeck.c
trunk/gcc/testsuite/ChangeLog


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=22367



[Bug c/22367] constraints on '&' not fully implemented

2009-04-18 Thread jsm28 at gcc dot gnu dot org


--- Comment #3 from jsm28 at gcc dot gnu dot org  2009-04-18 22:36 ---
Fixed for 4.5.


-- 

jsm28 at gcc dot gnu dot org changed:

   What|Removed |Added

 Status|NEW |RESOLVED
  Known to work||4.5.0
 Resolution||FIXED
   Target Milestone|--- |4.5.0


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=22367



[Bug testsuite/39790] gcc.dg/tls/alias-1.c,opt-2.c fail if TLS is not supported by C library

2009-04-18 Thread hp at gcc dot gnu dot org


--- Comment #1 from hp at gcc dot gnu dot org  2009-04-18 23:05 ---
Long description just barely missing that you can fix it by changing that
dg-line into:
/* { dg-require-effective-target tls_runtime } */
though strictly speaking it's not perfect; you'd want a predicate that checks
using a link-test, not a run-test.  But all in all, I don't think the
distinction is worthwhile.


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39790



[Bug testsuite/39790] gcc.dg/tls/alias-1.c,opt-2.c fail if TLS is not supported by C library

2009-04-18 Thread hp at gcc dot gnu dot org


--- Comment #2 from hp at gcc dot gnu dot org  2009-04-18 23:08 ---
(In reply to comment #1)
Bah, I missed the follow-up, as it wasn't in the audit trail.  Feel free to
ignore comment #1 and comment #2 (this ;)


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39790



[Bug c/27676] gcc is overly strict in assignment to read-only data

2009-04-18 Thread jsm28 at gcc dot gnu dot org


--- Comment #2 from jsm28 at gcc dot gnu dot org  2009-04-18 23:21 ---
Subject: Bug 27676

Author: jsm28
Date: Sat Apr 18 23:21:34 2009
New Revision: 146336

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=146336
Log:
PR c/27676
* c-typeck.c (readonly_warning): new.
(build_unary_op, build_modify_expr): Use readonly_warning for
storing into something readonly but not const-qualified.

testsuite:
* gcc.dg/lvalue-5.c: New test.

Added:
trunk/gcc/testsuite/gcc.dg/lvalue-5.c
Modified:
trunk/gcc/ChangeLog
trunk/gcc/c-typeck.c
trunk/gcc/testsuite/ChangeLog


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=27676



[Bug c/27676] gcc is overly strict in assignment to read-only data

2009-04-18 Thread jsm28 at gcc dot gnu dot org


--- Comment #3 from jsm28 at gcc dot gnu dot org  2009-04-18 23:24 ---
Fixed for 4.5.


-- 

jsm28 at gcc dot gnu dot org changed:

   What|Removed |Added

 Status|NEW |RESOLVED
  Known to work||4.5.0
 Resolution||FIXED
   Target Milestone|--- |4.5.0


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=27676



[Bug c/16620] [meta-bug] C90 conformance bugs

2009-04-18 Thread jsm28 at gcc dot gnu dot org


--- Comment #2 from jsm28 at gcc dot gnu dot org  2009-04-18 23:25 ---
All known target-independent C90 conformance bugs are fixed for 4.5.


-- 

jsm28 at gcc dot gnu dot org changed:

   What|Removed |Added

 Status|NEW |RESOLVED
 Resolution||FIXED


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=16620