[Bug rtl-optimization/55838] [4.6/4.7/4.8 Regression] ICE in extract_insn (unrecognizable insn) with -O -funroll-loops

2013-01-02 Thread jakub at gcc dot gnu.org


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



Jakub Jelinek jakub at gcc dot gnu.org changed:



   What|Removed |Added



 CC||jakub at gcc dot gnu.org,

   ||rakdver at gcc dot gnu.org



--- Comment #11 from Jakub Jelinek jakub at gcc dot gnu.org 2013-01-02 
08:24:34 UTC ---

I wonder if that isn't unnecessarily pessimizing, plus it won't catch all cases

anyway, steps can be added etc. afterwards, in the extend_mode/comp_mode.



The following fixes the ICE for me too, the second hunk is supposedly not

enough, because in some places afterwards we e.g. count inc from iv0.step and

iv1.step directly, plus for say comp_mode SImode and mode QImode with iv0.step

256 we supposedly want to bail out early (infinite loop or zero iterations).



--- gcc/loop-iv.c.jj2012-10-22 08:42:25.0 +0200

+++ gcc/loop-iv.c2013-01-02 09:17:42.215591646 +0100

@@ -2406,6 +2406,9 @@ iv_number_of_iterations (struct loop *lo

   iv1.step = const0_rtx;

 }



+  iv0.step = lowpart_subreg (mode, iv0.step, comp_mode);

+  iv1.step = lowpart_subreg (mode, iv1.step, comp_mode);

+

   /* This is either infinite loop or the one that ends immediately, depending

  on initial values.  Unswitching should remove this kind of conditions. 

*/

   if (iv0.step == const0_rtx  iv1.step == const0_rtx)

@@ -2516,6 +2519,7 @@ iv_number_of_iterations (struct loop *lo

 step = simplify_gen_unary (NEG, comp_mode, iv1.step, comp_mode);

   else

 step = iv0.step;

+  step = lowpart_subreg (mode, step, comp_mode);

   delta = simplify_gen_binary (MINUS, comp_mode, iv1.base, iv0.base);

   delta = lowpart_subreg (mode, delta, comp_mode);

   delta = simplify_gen_binary (UMOD, mode, delta, step);


[Bug rtl-optimization/55547] [4.8 Regression] Alias analysis does not handle AND addresses correctly

2013-01-02 Thread ubizjak at gmail dot com


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



--- Comment #7 from Uros Bizjak ubizjak at gmail dot com 2013-01-02 08:30:26 
UTC ---

Alexandre, do you plan to proceed with the patch in Comment #4?


[Bug middle-end/55832] [4.8 Regression] ICE in fold_convert_loc, at fold-const.c:1967

2013-01-02 Thread jakub at gcc dot gnu.org


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



Jakub Jelinek jakub at gcc dot gnu.org changed:



   What|Removed |Added



 Status|NEW |ASSIGNED

 AssignedTo|unassigned at gcc dot   |jakub at gcc dot gnu.org

   |gnu.org |



--- Comment #5 from Jakub Jelinek jakub at gcc dot gnu.org 2013-01-02 
09:07:06 UTC ---

Created attachment 29072

  -- http://gcc.gnu.org/bugzilla/attachment.cgi?id=29072

gcc48-pr55832.patch



Indeed, and omit_one_operand_loc can deal with converting integer_zero_node to

a zero vector, but can't cope with converting integer_one_node into a constant

boolean true vector.



I've slightly adjusted the testcase, so that it at least doesn't violate strict

aliasing, unfortunately without the uninitialized c it doesn't trigger.  And I

couldn't find a way to create ABS_EXPR of vectors using vector types directly.


[Bug sanitizer/55561] TSAN: Fortran/OMP yields false positives

2013-01-02 Thread dvyukov at google dot com


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



--- Comment #29 from Dmitry Vyukov dvyukov at google dot com 2013-01-02 
09:09:11 UTC ---

(In reply to comment #28)

 (In reply to comment #26)

  For config/linux/ptrlock the changes are:

  [...]

 

 Following your suggestions, I applied the following patch (mistakes are mine),

 which allows me to run without warnings from libgomp:

 

 Index: config/linux/wait.h

 ===

 --- config/linux/wait.h (revision 194730)

 +++ config/linux/wait.h (working copy)

 @@ -51,7 +51,7 @@

if (__builtin_expect (gomp_managed_threads  gomp_available_cpus, 0))

  count = gomp_throttled_spin_count_var;

for (i = 0; i  count; i++)

 -if (__builtin_expect (*addr != val, 0))

 +if (__builtin_expect (__atomic_load_n(addr,MEMMODEL_RELAXED) != val, 0))

return 0;

  else

cpu_relax ();

 Index: config/linux/ptrlock.c

 ===

 --- config/linux/ptrlock.c  (revision 194730)

 +++ config/linux/ptrlock.c  (working copy)

 @@ -50,9 +50,9 @@

  #endif

do

  do_wait (intptr, 2);

 -  while (*intptr == 2);

 +  while (__atomic_load_n(intptr, MEMMODEL_RELAXED) == 2);

__asm volatile ( : : : memory);

 -  return *ptrlock;

 +  return (void*)__atomic_load_n(ptrlock, MEMMODEL_ACQUIRE);

  }

 

  void

 Index: config/linux/ptrlock.h

 ===

 --- config/linux/ptrlock.h  (revision 194730)

 +++ config/linux/ptrlock.h  (working copy)

 @@ -48,8 +48,9 @@

  {

uintptr_t oldval;

 

 -  if ((uintptr_t) *ptrlock  2)

 -return *ptrlock;

 +  uintptr_t v = (uintptr_t)__atomic_load_n(ptrlock, MEMMODEL_ACQUIRE);

 +  if (v  2)

 +return (void*)v;

 

oldval = 0;

if (__atomic_compare_exchange_n (ptrlock, oldval, 1, false,





Great!

Please post the patch to http://gcc.gnu.org/bugzilla/show_bug.cgi?id=40362

I believe it is the correct fix for the bug.


[Bug c++/54526] [C++11] :: is incorrectly treated as digraph : followed by colon

2013-01-02 Thread paolo.carlini at oracle dot com


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



Paolo Carlini paolo.carlini at oracle dot com changed:



   What|Removed |Added



 Status|RESOLVED|REOPENED

 Resolution|FIXED   |



--- Comment #9 from Paolo Carlini paolo.carlini at oracle dot com 2013-01-02 
09:12:53 UTC ---

Let's keep this open.


[Bug rtl-optimization/55845] New: 454.calculix miscompares with -march=btver2 -O3 -ffastmath -fschedule-insns -mvzeroupper for test data run

2013-01-02 Thread venkataramanan.kumar at amd dot com


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



 Bug #: 55845

   Summary: 454.calculix miscompares with -march=btver2 -O3

-ffastmath -fschedule-insns -mvzeroupper for test data

run

Classification: Unclassified

   Product: gcc

   Version: 4.8.0

Status: UNCONFIRMED

  Severity: normal

  Priority: P3

 Component: rtl-optimization

AssignedTo: unassig...@gcc.gnu.org

ReportedBy: venkataramanan.ku...@amd.com

  Host: x86_64-unknown-linux-gnu

Target: x86_64-unknown-linux-gnu

 Build: x86_64-unknown-linux-gnu





GCC revision used: 194705

Flags used:  -march=btver2 -O3 -ffastmath -fschedule-insns -mvzeroupper



Observation:

(Snip)

*** Miscompare of beampic.dat; for details see

   

/local/home/vekumar/specruns/benchspec/CPU2006/454.calculix/run/run_base_test_gcc480_bt_sched.exe_nofma./beampic.dat.mis

Error: 1x454.calculix

Producing Raw Reports

(Snip)



On triaging further the file SPOOLES/Utilities/src/Utilities_DV.Utilities_DV.c

when compiled with -march=btver2 -O3 -ffastmath -fschedule-insns -mvzeroupper

seems to schedule vzeroupper incorrectly.



vzeroupper will clobber all ymm registers, so should not be moved arround.



Also using -march=corei7-avx seems to have problem.



I am drilling down further.


[Bug sanitizer/55561] TSAN: Fortran/OMP yields false positives

2013-01-02 Thread jakub at gcc dot gnu.org


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



--- Comment #30 from Jakub Jelinek jakub at gcc dot gnu.org 2013-01-02 
09:43:29 UTC ---

The formatting in the patch is wrong (multiple issues).



I don't see a point in the __atomic_load_n (addr, MEMMODEL_RELAXED), for

aligned ints or pointers the loads are atomic on all architectures libgomp is

supported on, after all kernel is also using just a normal load in the futex

syscall, not __atomic_load_n (which expands to the normal load only anyway).


[Bug rtl-optimization/55845] 454.calculix miscompares with -march=btver2 -O3 -ffastmath -fschedule-insns -mvzeroupper for test data run

2013-01-02 Thread ubizjak at gmail dot com


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



Uros Bizjak ubizjak at gmail dot com changed:



   What|Removed |Added



 CC||vbyakovl23 at gmail dot com



--- Comment #1 from Uros Bizjak ubizjak at gmail dot com 2013-01-02 10:10:01 
UTC ---

Adding CC.


[Bug rtl-optimization/55845] 454.calculix miscompares with -march=btver2 -O3 -ffastmath -fschedule-insns -mvzeroupper for test data run

2013-01-02 Thread ubizjak at gmail dot com


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



--- Comment #2 from Uros Bizjak ubizjak at gmail dot com 2013-01-02 10:15:16 
UTC ---

It looks to me that scheduler is doing something with unspec_volatile

instructions, since vzeroupper insertion will be cancelled if there are live

call-saved SSE registers at the insertion point. Please see

ix86_avx_emit_vzeroupper function in i386.c


[Bug bootstrap/55784] [4.8 regression] declaration of C function 'const char* strsignal(int)' conflicts with /usr/include/string.h:112: error: previous declaration

2013-01-02 Thread rguenth at gcc dot gnu.org


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



Richard Biener rguenth at gcc dot gnu.org changed:



   What|Removed |Added



 Status|NEW |ASSIGNED

 AssignedTo|unassigned at gcc dot   |rguenth at gcc dot gnu.org

   |gnu.org |



--- Comment #10 from Richard Biener rguenth at gcc dot gnu.org 2013-01-02 
10:26:25 UTC ---

I'm combining the patches from comment#3 and comment#5, do a bootstrap and

regtest and commit them.


[Bug sanitizer/55561] TSAN: Fortran/OMP yields false positives

2013-01-02 Thread dvyukov at google dot com


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



--- Comment #31 from Dmitry Vyukov dvyukov at google dot com 2013-01-02 
10:28:00 UTC ---

(In reply to comment #30)

 The formatting in the patch is wrong (multiple issues).

 

 I don't see a point in the __atomic_load_n (addr, MEMMODEL_RELAXED), for

 aligned ints or pointers the loads are atomic on all architectures libgomp is

 supported on, after all kernel is also using just a normal load in the futex

 syscall, not __atomic_load_n (which expands to the normal load only anyway).



Do you agree about MEMMODEL_ACQUIRE?



Regarding MEMMODEL_RELAXED, there are 2 reasons to use it correctness aside.

First, it greatly contributes to code readability and self-documentation, and

allows readers to easily distinguish between plain loads and inter-thread

synchronization shared loads which are hideously different things. Seconds, it

allows tools like tsan to work properly on such code and point to more serious

issues (like that MEMMODEL_ACQUIRE above).



As for correctness, below is an example that I usually provide (and there is

also How to miscompile programs with benign data races paper by Boehm with

other good examples):



-



Consider that you have an atomic (which is not actually marked as atomic for

compiler) store and some code w/o sync operations around it (potentially from

inlined functions):



...

*p = x;

...



C++ compiler assumes absence of data races. So if it sees a store to p, then it

is allowed to use it as a scratch storage for any garbage in the same

synchronization region. I.e. it can do:



...

*p = foo;

...

*p = x;

...



Note that it can't affect any correct race-free program.

This way, other threads will read random garbage from p.



Now imagine that foo is a function pointer:



...

*p = foo; // spill from register

...

foo = *p; // restore to register

if (bar) foo(); // and execute

...

*p = x;

...



Now imagine that this thread spills ReadFile to p, and another thread spills

LaunchNuclearMissle to p in between (but was not intended to execute it due to

bar==0).

Ooops, this benign race just caused accidental launch of nuclear missiles.


[Bug tree-optimization/55823] [4.8 Regression] ice in inline_call, at ipa-inline-transform.c:270

2013-01-02 Thread rguenth at gcc dot gnu.org


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



Richard Biener rguenth at gcc dot gnu.org changed:



   What|Removed |Added



   Priority|P3  |P1


[Bug tree-optimization/55833] ICE in verify_loop_structure, at cfgloop.c:1582 (BB should be marked irreducible !)

2013-01-02 Thread mpolacek at gcc dot gnu.org


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



Marek Polacek mpolacek at gcc dot gnu.org changed:



   What|Removed |Added



 Status|UNCONFIRMED |NEW

   Last reconfirmed||2013-01-02

 CC||mpolacek at gcc dot gnu.org

 Ever Confirmed|0   |1



--- Comment #2 from Marek Polacek mpolacek at gcc dot gnu.org 2013-01-02 
10:33:06 UTC ---

Thus marking as NEW.  Related to PR52996.


[Bug c++/55842] [4.7/4.8 Regression] C++11 ICE with boost multi-precision and boost variant

2013-01-02 Thread rguenth at gcc dot gnu.org


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



Richard Biener rguenth at gcc dot gnu.org changed:



   What|Removed |Added



 Status|UNCONFIRMED |NEW

   Last reconfirmed||2013-01-02

  Known to work||4.6.3

   Target Milestone|--- |4.7.3

Summary|C++11 ICE with boost|[4.7/4.8 Regression] C++11

   |multi-precision and boost   |ICE with boost

   |variant |multi-precision and boost

   ||variant

 Ever Confirmed|0   |1

  Known to fail||4.7.0, 4.8.0



--- Comment #4 from Richard Biener rguenth at gcc dot gnu.org 2013-01-02 
10:35:07 UTC ---

Confirmed.


[Bug middle-end/55840] valgrind errors in sparseset.h

2013-01-02 Thread rguenth at gcc dot gnu.org


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



Richard Biener rguenth at gcc dot gnu.org changed:



   What|Removed |Added



 Status|UNCONFIRMED |RESOLVED

 Resolution||INVALID



--- Comment #2 from Richard Biener rguenth at gcc dot gnu.org 2013-01-02 
10:35:50 UTC ---

That's known and not a bug (there is a dup of this).


[Bug lto/54728] [4.8 regression] ICE in input_gimple_stmt, at gimple-streamer-in.c:254

2013-01-02 Thread rguenth at gcc dot gnu.org


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



Richard Biener rguenth at gcc dot gnu.org changed:



   What|Removed |Added



 Status|NEW |RESOLVED

 Resolution||FIXED



--- Comment #12 from Richard Biener rguenth at gcc dot gnu.org 2013-01-02 
10:41:32 UTC ---

Fixed.


[Bug tree-optimization/55802] Various missed optimizations for a simple function in GCC itself

2013-01-02 Thread rguenth at gcc dot gnu.org


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



--- Comment #2 from Richard Biener rguenth at gcc dot gnu.org 2013-01-02 
11:00:54 UTC ---

The sink issue is that we cannot sink PHI nodes:



  bb 4:

...

  if (_11  _20)

goto bb 5;

  else

goto bb 6;



  bb 5:

  _26 = _19-block_info;

  _27 = (long unsigned int) _11;

  _28 = _27 * 8;

  _29 = _26 + _28;



  bb 6:

  # _30 = PHI 0B(4), _29(5)

...

  if (_14 != 0)

goto bb 8;

  else

goto bb 7;



  bb 7:

  op2_12 = _30-out;

...



to be able to sink the definition of _30 into basic-block 7 we'd have to

sink the whole control structure.  Similar to how we only (very) weakly

handle hoisting loop invaraint conditional code we cannot at all sink

conditional code.



- more specific bug


[Bug tree-optimization/55846] New: Cannot sink conditional code

2013-01-02 Thread rguenth at gcc dot gnu.org


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



 Bug #: 55846

   Summary: Cannot sink conditional code

Classification: Unclassified

   Product: gcc

   Version: 4.8.0

Status: UNCONFIRMED

  Keywords: missed-optimization

  Severity: enhancement

  Priority: P3

 Component: tree-optimization

AssignedTo: unassig...@gcc.gnu.org

ReportedBy: rgue...@gcc.gnu.org

Blocks: 55802





Code sinking (tree-ssa-sink.c) cannot sink conditional code:



int foo (int b, int c)

{

  int res = 0;

  if (b)

res = b * 2 + 4;

  if (c)

return res;

  return 0;

}



here we want to sink the whole if (b) res = b * 2 + 4; block into

the if (c) block.



Profitable if the original conditional becomes dead after sinking

the PHI node for 'res' and its dependencies.



Happens in GCC itself - usually exposed via inlining.


[Bug tree-optimization/55802] Various missed optimizations for a simple function in GCC itself

2013-01-02 Thread rguenth at gcc dot gnu.org


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



Richard Biener rguenth at gcc dot gnu.org changed:



   What|Removed |Added



 Status|UNCONFIRMED |NEW

   Last reconfirmed||2013-01-02

 Ever Confirmed|0   |1



--- Comment #3 from Richard Biener rguenth at gcc dot gnu.org 2013-01-02 
11:12:11 UTC ---

The -block_info load is



 if (a)

    and load -block_info



 if (b)

    and load -block_info



-block_info isn't used outside of the conditional regions so this is

neither a hoisting nor a missed (partial) redundancy opportunity.

We might be able to speculate loading -block_info, but speculating

indirect loads would only be possible if we know the load will never

trap (which in this case we might derive from the fact that we load

-block_info_size unconditionally).  phiopt does some load speculation

already - but for adjacent loads only, like



 if (...)

   x = y-left;

 else

   x = y-right;



which then enables conditional move generation.



But I guess the case from this bug would fit parts of the framework

that are already present in phiopt.  Eventually cselim could be

used to speculate the loads as well.



Note that SCCVN already value-numbers both loads the same (but for some

reason _not_ the dependent calculation ...).



This we track here.


[Bug tree-optimization/55802] Various missed optimizations for a simple function in GCC itself

2013-01-02 Thread rguenth at gcc dot gnu.org


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



--- Comment #4 from Richard Biener rguenth at gcc dot gnu.org 2013-01-02 
11:13:52 UTC ---

 Note that SCCVN already value-numbers both loads the same (but for some

 reason _not_ the dependent calculation ...).

 

 This we track here.



Ah, of course - they are not the same.


[Bug tree-optimization/55833] ICE in verify_loop_structure, at cfgloop.c:1582 (BB should be marked irreducible !)

2013-01-02 Thread mpolacek at gcc dot gnu.org


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



--- Comment #3 from Marek Polacek mpolacek at gcc dot gnu.org 2013-01-02 
11:22:00 UTC ---

Cannot reproduce with xgcc (GCC) 4.6.4 20130102 (prerelease).


[Bug tree-optimization/55833] ICE in verify_loop_structure, at cfgloop.c:1582 (BB should be marked irreducible !)

2013-01-02 Thread rguenth at gcc dot gnu.org


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



--- Comment #4 from Richard Biener rguenth at gcc dot gnu.org 2013-01-02 
11:30:37 UTC ---

(In reply to comment #3)

 Cannot reproduce with xgcc (GCC) 4.6.4 20130102 (prerelease).



Make sure to have checking enabled.


[Bug rtl-optimization/55833] [4.6/4.8 Regression] ICE in verify_loop_structure, at cfgloop.c:1582 (BB should be marked irreducible !)

2013-01-02 Thread rguenth at gcc dot gnu.org


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



Richard Biener rguenth at gcc dot gnu.org changed:



   What|Removed |Added



  Component|tree-optimization   |rtl-optimization

  Known to work||4.1.2, 4.7.2

   Target Milestone|--- |4.6.4

Summary|ICE in  |[4.6/4.8 Regression] ICE in

   |verify_loop_structure, at   |verify_loop_structure, at

   |cfgloop.c:1582 (BB should   |cfgloop.c:1582 (BB should

   |be marked irreducible !)|be marked irreducible !)

  Known to fail||4.3.6



--- Comment #5 from Richard Biener rguenth at gcc dot gnu.org 2013-01-02 
11:33:28 UTC ---

Also fails with 4.3.6, works with 4.1.2 though.  Thus, technically a

regression.

Seems to work with 4.7 as well.



RTL unswitching.


[Bug bootstrap/55784] [4.8 regression] declaration of C function 'const char* strsignal(int)' conflicts with /usr/include/string.h:112: error: previous declaration

2013-01-02 Thread rguenth at gcc dot gnu.org


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



--- Comment #11 from Richard Biener rguenth at gcc dot gnu.org 2013-01-02 
11:57:36 UTC ---

Author: rguenth

Date: Wed Jan  2 11:57:31 2013

New Revision: 194804



URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=194804

Log:

2013-01-02  Richard Biener  rguent...@suse.de



PR bootstrap/55784

* configure.ac: Add $GMPINC to CFLAGS/CXXFLAGS.

* configure: Regenerate.



ada/

* gcc-interface/Makefile.in: Add $(GMPINC) to includes.



Modified:

trunk/gcc/ChangeLog

trunk/gcc/ada/ChangeLog

trunk/gcc/ada/gcc-interface/Makefile.in

trunk/gcc/configure

trunk/gcc/configure.ac


[Bug bootstrap/55784] [4.8 regression] declaration of C function 'const char* strsignal(int)' conflicts with /usr/include/string.h:112: error: previous declaration

2013-01-02 Thread rguenth at gcc dot gnu.org


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



Richard Biener rguenth at gcc dot gnu.org changed:



   What|Removed |Added



 Status|ASSIGNED|RESOLVED

 Resolution||FIXED



--- Comment #12 from Richard Biener rguenth at gcc dot gnu.org 2013-01-02 
11:58:08 UTC ---

Fixed.


[Bug testsuite/55780] effective targets arm_arch_v*_multilib are not strict enough

2013-01-02 Thread gretay at gcc dot gnu.org


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



gretay at gcc dot gnu.org changed:



   What|Removed |Added



 CC||gretay at gcc dot gnu.org



--- Comment #1 from gretay at gcc dot gnu.org 2013-01-02 12:17:07 UTC ---

The intention of arm_arch_v*_multilib is to check which multilibs available in

the toolchain rather than hardware capabilities. These effective target checks

fail at link time, but there is no check_link procedure in gcc/testsuite/lib so

check_runtime is used instead.



For example, using compiler with armv7a (cortex-a15) libraries only,

arm_arch_v6m_multilib effective target check fails and the test is UNSUPPORTED

in my setting on qemu:



$ cat arm_arch_v6m_multilib8582.c 

int

main (void)

{

  return 0;

}



$ /work/dec-builds/base/install/bin/arm-none-eabi-gcc

arm_arch_v6m_multilib8582.c -fno-diagnostics-show-caret   -march=armv6-m

-mthumb -DSTACK_SIZE=16384 -lm   -o arm_arch_v6m_multilib8582.exe

/work/dec-builds/base/install/lib/gcc/arm-none-eabi/4.8.0/../../../../arm-none-eabi/bin/ld:

error: /tmp/ccwSCtn0.o: Conflicting architecture profiles M/A

/work/dec-builds/base/install/lib/gcc/arm-none-eabi/4.8.0/../../../../arm-none-eabi/bin/ld:

failed to merge target specific data of file /tmp/ccwSCtn0.o

collect2: error: ld returned 1 exit status



UNSUPPORTED: gcc.target/arm/ftest-armv6m-thumb.c



Configured with: --target=arm-none-eabi --with-newlib --with-gnu-as

--with-gnu-ld --enable-languages=c,c++ --disable-shared --disable-nls

--disable-threads --disable-lto --disable-tls --enable-checking=yes

--disable-libssp --disable-libgomp --disable-libmudflap --with-cpu=cortex-a15

--with-fpu=neon-vfpv4 --with-float=softfp 

Thread model: single

gcc version 4.8.0 20121213 (experimental) (GCC)


[Bug libstdc++/55847] New: mistake bad_weak_ptr::what() message

2013-01-02 Thread faithandbrave at gmail dot com


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



 Bug #: 55847

   Summary: mistake bad_weak_ptr::what() message

Classification: Unclassified

   Product: gcc

   Version: 4.8.0

Status: UNCONFIRMED

  Severity: normal

  Priority: P3

 Component: libstdc++

AssignedTo: unassig...@gcc.gnu.org

ReportedBy: faithandbr...@gmail.com





C++11 Standard says follow:



20.7.2.1 p2

bad_weak_ptr() noexcept;

Postconditions: what() returns bad_weak_ptr



But, libstdc++'s bad_weak_ptr::what() return std::bad_weak_ptr.

std:: is unnecessary.


[Bug fortran/55172] [4.7/4.8 Regression] [OOP] ICE on invalid: gfc_variable_attr(): Bad array reference

2013-01-02 Thread pault at gcc dot gnu.org


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



Paul Thomas pault at gcc dot gnu.org changed:



   What|Removed |Added



 AssignedTo|unassigned at gcc dot   |pault at gcc dot gnu.org

   |gnu.org |



--- Comment #3 from Paul Thomas pault at gcc dot gnu.org 2013-01-02 12:34:35 
UTC ---

(In reply to comment #2)

 I suspect the 4.8-problem of having only the ICE without a prior error message

 might be due to this commit:

 

 http://gcc.gnu.org/viewcvs?view=revisionrevision=187192

 

 I think the function 'copy_ts_from_selector_to_associate' comes too early

 (namely during parsing). It tries to resolve the target expr, which should

 rather wait until resolution stage!?!



This is partially correct.  Unfortunately, the selector expression comes from

the parser with the ar-type == AR_UNKNOWN and it was this that

gfc_resolve_expr was putting right.  As long as all the variables were declared

or had implicit types, all was well.



Th is fixed by removing the call to gfc_resolve_expr and adding explicit code,

copied from resolve_array_ref, to set the correct type.  It is also

necessary/advisable to add a call to resolve the selector expression in

resolve_select_type.



I will submit a patch later today.



Cheers



Paul



PS If the index 'i' is declared, wrong code results as in pr54990.


[Bug lto/54728] [4.8 regression] ICE in input_gimple_stmt, at gimple-streamer-in.c:254

2013-01-02 Thread dimhen at gmail dot com


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



--- Comment #13 from Dmitry G. Dyachenko dimhen at gmail dot com 2013-01-02 
13:47:43 UTC ---

fix original problem for me too

Thank You


[Bug libstdc++/55728] std::bad_function_call has misleading what() result

2013-01-02 Thread redi at gcc dot gnu.org


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



--- Comment #1 from Jonathan Wakely redi at gcc dot gnu.org 2013-01-02 
14:18:24 UTC ---

Maybe for consistency with bad_weak_ptr it should return bad_function_call

without the std:: qualification  (see Bug 55847)


[Bug lto/55848] New: internal compiler error: verify_cgraph_node failed (with `-flto' and `-fopenmp')

2013-01-02 Thread ai.azuma at gmail dot com


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



 Bug #: 55848

   Summary: internal compiler error: verify_cgraph_node failed

(with `-flto' and `-fopenmp')

Classification: Unclassified

   Product: gcc

   Version: 4.8.0

Status: UNCONFIRMED

  Severity: normal

  Priority: P3

 Component: lto

AssignedTo: unassig...@gcc.gnu.org

ReportedBy: ai.az...@gmail.com





Created attachment 29073

  -- http://gcc.gnu.org/bugzilla/attachment.cgi?id=29073

Output of -v option and preprocessed file



The following C++ source code results in an ICE when compiling on GCC 4.8.0

20121230 with `-flto' and `-fopenmp' command-line options.



//

typedef long unsigned int size_t;



extern C {

  extern int omp_get_thread_num (void) throw ();

}



extern C {

  extern int snprintf(char *__restrict __s, size_t __maxlen, const char

*__restrict __format, ...) throw ()

  __attribute__ ((__format__ (__printf__, 3, 4)));

}



void f()

{

  char msg[1024] = ;

  snprintf( msg, sizeof(msg)-1, [%d] , omp_get_thread_num() );

}



void g()

{

#pragma omp parallel for

  for( int i = 0; i  0; i += 1 ) {

f();

  }

}

//



Note that the ICE is not reproduced with GCC 4.6.4 20121228 or 4.7.3 20121229.


[Bug c++/55804] [4.7/4.8 regression] GCC omits required call to constructor

2013-01-02 Thread jason at gcc dot gnu.org


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



Jason Merrill jason at gcc dot gnu.org changed:



   What|Removed |Added



 Status|NEW |ASSIGNED

 AssignedTo|unassigned at gcc dot   |jason at gcc dot gnu.org

   |gnu.org |

   Severity|blocker |normal


[Bug lto/55848] [4.8 Regression] internal compiler error: verify_cgraph_node failed (with `-flto' and `-fopenmp')

2013-01-02 Thread rguenth at gcc dot gnu.org


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



Richard Biener rguenth at gcc dot gnu.org changed:



   What|Removed |Added



 Status|UNCONFIRMED |NEW

   Last reconfirmed||2013-01-02

 CC||hubicka at gcc dot gnu.org,

   ||rguenth at gcc dot gnu.org

   Target Milestone|--- |4.8.0

Summary|internal compiler error:|[4.8 Regression] internal

   |verify_cgraph_node failed   |compiler error:

   |(with `-flto' and   |verify_cgraph_node failed

   |`-fopenmp') |(with `-flto' and

   ||`-fopenmp')

 Ever Confirmed|0   |1



--- Comment #1 from Richard Biener rguenth at gcc dot gnu.org 2013-01-02 
15:11:05 UTC ---

Confirmed.  The ICE is



lto1: error: edge points to wrong declaration:

 function_decl 0x7fc05f843f00 omp_get_thread_num

type function_type 0x7fc05f84a2a0

type integer_type 0x7fc05f7165e8 int public SI

size integer_cst 0x7fc05f71a0a0 constant 32

unit size integer_cst 0x7fc05f71a0c0 constant 4

align 32 symtab 0 alias set -1 canonical type 0x7fc05f7165e8

precision 32 min integer_cst 0x7fc05f71a040 -2147483648 max integer_cst

0x7fc05f71a060 2147483647

pointer_to_this pointer_type 0x7fc05f71e2a0

QI

size integer_cst 0x7fc05f705ee0 constant 8

unit size integer_cst 0x7fc05f705f00 constant 1

align 8 symtab 0 alias set -1 canonical type 0x7fc05f84a348

arg-types tree_list 0x7fc05f7106b8 value void_type 0x7fc05f716bd0

void

pointer_to_this pointer_type 0x7fc05f84a888

addressable used nothrow public external QI file t.ii line 4 col 14 align 8

context translation_unit_decl 0x7fc05f721e60 D.2381

 Instead of: function_decl 0x7fc05f7b7100 __builtin_omp_get_thread_num

type function_type 0x7fc05f7253f0

type integer_type 0x7fc05f7165e8 int public SI

size integer_cst 0x7fc05f71a0a0 constant 32

unit size integer_cst 0x7fc05f71a0c0 constant 4

align 32 symtab 0 alias set -1 canonical type 0x7fc05f7165e8

precision 32 min integer_cst 0x7fc05f71a040 -2147483648 max integer_cst

0x7fc05f71a060 2147483647

pointer_to_this pointer_type 0x7fc05f71e2a0

QI

size integer_cst 0x7fc05f705ee0 constant 8

unit size integer_cst 0x7fc05f705f00 constant 1

align 8 symtab 0 alias set -1 canonical type 0x7fc05f7253f0

arg-types tree_list 0x7fc05f7106b8 value void_type 0x7fc05f716bd0

void

readonly addressable nothrow public external built-in QI file built-in

line 0 col 0

align 8 built-in BUILT_IN_NORMAL:BUILT_IN_OMP_GET_THREAD_NUM attributes

tree_list 0x7fc05f7b5c30

_Z1fv.2384/0 (f) @0x7fc05f70ea68

  Type: function

  Visibility: force_output prevailing_def_ironly

  References: 

  Referring: 

  Read from file: /tmp/cclvzgQr.ltrans0.o

  Availability: available

  Function flags: analyzed body finalized

  Called by: _Z1gv._omp_fn.0.2380.2377/4 (1.00 per call) 

  Calls: snprintf/3 (1.00 per call) omp_get_thread_num/2 (1.00 per call) 

lto1: internal compiler error: verify_cgraph_node failed

0x6344ed verify_cgraph_node(cgraph_node*)

/space/rguenther/src/svn/trunk/gcc/cgraph.c:2582

0x62d71c verify_symtab_node(symtab_node_def*)

/space/rguenther/src/svn/trunk/gcc/symtab.c:681

0x62d783 verify_symtab()

/space/rguenther/src/svn/trunk/gcc/symtab.c:698

0x63bfd1 compile()

/space/rguenther/src/svn/trunk/gcc/cgraphunit.c:1973

0x59db35 lto_main()

/space/rguenther/src/svn/trunk/gcc/lto/lto.c:3390


[Bug lto/55848] [4.8 Regression] internal compiler error: verify_cgraph_node failed (with `-flto' and `-fopenmp')

2013-01-02 Thread rguenth at gcc dot gnu.org


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



--- Comment #2 from Richard Biener rguenth at gcc dot gnu.org 2013-01-02 
15:18:47 UTC ---

Reduced C testcase:



extern int omp_get_thread_num (void);



void __attribute ((noinline)) f()

{

  omp_get_thread_num();

}



int main()

{

  int i;

#pragma omp parallel for

  for (i = 0; i  0; i += 1)

f();

  return 0;

}


[Bug lto/55848] [4.8 Regression] internal compiler error: verify_cgraph_node failed (with `-flto' and `-fopenmp')

2013-01-02 Thread rguenth at gcc dot gnu.org


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



Richard Biener rguenth at gcc dot gnu.org changed:



   What|Removed |Added



 Status|NEW |ASSIGNED

 AssignedTo|unassigned at gcc dot   |rguenth at gcc dot gnu.org

   |gnu.org |



--- Comment #3 from Richard Biener rguenth at gcc dot gnu.org 2013-01-02 
15:30:45 UTC ---

The builtin does not prevail over the extern decl for some reason (but it's in

the symtab of course).  builtins have LDPR_UNKNOWN resolution, the extern

has LDPR_RESOLVED_DYN.



So we end up with no prevailing decl ... and in



  /* If there's not a prevailing symbol yet it's an external reference.

 Happens a lot during ltrans.  Choose the first symbol with a

 cgraph or a varpool node.  */

  if (!prevailing)

{

  prevailing = first;

  /* For variables chose with a priority variant with vnode

 attached (i.e. from unit where external declaration of

 variable is actually used).

 When there are multiple variants, chose one with size.

 This is needed for C++ typeinfos, for example in

 lto/20081204-1 there are typeifos in both units, just

 one of them do have size.  */

  if (TREE_CODE (prevailing-symbol.decl) == VAR_DECL)

{

  for (e = prevailing-symbol.next_sharing_asm_name;

   e; e = e-symbol.next_sharing_asm_name)

if (!COMPLETE_TYPE_P (TREE_TYPE (prevailing-symbol.decl))

 COMPLETE_TYPE_P (TREE_TYPE (e-symbol.decl)))

  prevailing = e;

}

}



where we probably should prefer builtins as we never replace those

when fixing up the cgraph.



Mine.


[Bug fortran/55818] Reading a REAL from a file which doesn't end in a new line fails

2013-01-02 Thread jvdelisle at gcc dot gnu.org


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



--- Comment #8 from Jerry DeLisle jvdelisle at gcc dot gnu.org 2013-01-02 
17:09:17 UTC ---

Author: jvdelisle

Date: Wed Jan  2 17:09:09 2013

New Revision: 194809



URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=194809

Log:

2013-01-02  Jerry DeLisle  jvdeli...@gcc.gnu.org



PR libfortran/55818

* io/list_read.c (read_real): Do not call hit_eof when EOF can be

treated as a value separator.

(parse_real): Likewise.

(read_logical): Likewise.

(read_character): Likewise.

(read_complex): Likewise.



Modified:

trunk/libgfortran/ChangeLog

trunk/libgfortran/io/list_read.c


[Bug libfortran/49791] [4.6/4.7/4.8 Regression] Formatted namelist reads fails with: Cannot match namelist object

2013-01-02 Thread jvdelisle at gcc dot gnu.org


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



Jerry DeLisle jvdelisle at gcc dot gnu.org changed:



   What|Removed |Added



 AssignedTo|unassigned at gcc dot   |jvdelisle at gcc dot

   |gnu.org |gnu.org



--- Comment #23 from Jerry DeLisle jvdelisle at gcc dot gnu.org 2013-01-02 
17:17:53 UTC ---

I will work this one along with pr51825



[Bug libfortran/50105] [4.6/4.7/4.8 Regression] I/O with g6.5 - wrong number of ** shown

2013-01-02 Thread burnus at gcc dot gnu.org


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



Tobias Burnus burnus at gcc dot gnu.org changed:



   What|Removed |Added



 CC||burnus at gcc dot gnu.org



--- Comment #20 from Tobias Burnus burnus at gcc dot gnu.org 2013-01-02 
17:24:12 UTC ---

(In reply to comment #17)

 10.7.2.3.2 says

   the field occupies w positions, the fractional part of which

consists of d digits

 and this does not make sense if wd.  Therefore, according to the

 first sentence of 1.5 Conformance, the program is not standard

 conforming.

 

 There are therefore no requirements on the processor for this

 program, and it may produce either output, or even a runtime error.





 Disclaimer: WG5 might still revise the J3 answer; there will be also an J3

 email voting on the IR.



Latest result version ftp://ftp.nag.co.uk/sc22wg5/N1901-N1950/N1932.txt (search

for F08/0063)



Result was: YES WITH COMMENTS, with 7 YES votes, 1 YES WITH COMMENT and 1 NO

vote (or two? At the top it lists one, below it has two comments claiming a

NO.) ftp://ftp.nag.co.uk/sc22wg5/N1901-N1950/N1944.txt



Additionally, it is listed in the Corrigendum 2 draft as being contained in the

document, though no edits have been done:

ftp://ftp.nag.co.uk/sc22wg5/N1901-N1950/N1948.pdf


[Bug sanitizer/55844] -fsanitize=address -Os -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -m64 doesn't work

2013-01-02 Thread kcc at gcc dot gnu.org


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



--- Comment #3 from Kostya Serebryany kcc at gcc dot gnu.org 2013-01-02 
17:31:05 UTC ---

 we should just move over to using the dwarf unwinder and forget about the 
 manually unwinding the stack



Upstream asan-rt has two flags now: 

--

fast_unwind_on_fatal 1 Use Fast/Slow unwinder when found a bug. The

fast one relies on frame pointers, while slow one does not. The default may

change to 0 soon.

fast_unwind_on_malloc 1 Same as fast_unwind_on_fatal, but control

unwinding inside malloc/free, i.e. performance critical.

--



I am going to switch the default for fast_unwind_on_fatal to 0 somewhere in Jan

and then merge to gcc. 



fast_unwind_on_malloc will remain 1 by default; see the rationale in 

http://code.google.com/p/address-sanitizer/issues/detail?id=137#c6


[Bug middle-end/23868] [4.6/4.7/4.8 regression] builtin_apply uses wrong mode for multi-hard-register return values

2013-01-02 Thread jakub at gcc dot gnu.org


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



Jakub Jelinek jakub at gcc dot gnu.org changed:



   What|Removed |Added



   Priority|P2  |P4

 CC||jakub at gcc dot gnu.org



--- Comment #22 from Jakub Jelinek jakub at gcc dot gnu.org 2013-01-02 
17:55:14 UTC ---

SH is neither primary nor secondary target.


[Bug c++/48914] #pragma GCC diagnostic ignored -Wc++0x-compat doesn't work

2013-01-02 Thread rjarrett at mathworks dot com


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



--- Comment #7 from Roger Jarrett rjarrett at mathworks dot com 2013-01-02 
18:51:12 UTC ---

Additional workaround (big hammer) 

#pragma GCC system_header



Best used when the code generating the warning is in an isolated header file

--Roger


[Bug c++/55804] [4.7/4.8 regression] GCC omits required call to constructor

2013-01-02 Thread jason at gcc dot gnu.org


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



--- Comment #3 from Jason Merrill jason at gcc dot gnu.org 2013-01-02 
19:03:17 UTC ---

Author: jason

Date: Wed Jan  2 19:03:04 2013

New Revision: 194811



URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=194811

Log:

PR c++/55804

PR c++/55032

PR c++/55245

* tree.c (build_array_type_1): Revert earlier change.

* cp/tree.c (build_cplus_array_type): Copy layout information

to main variant if necessary.



Added:

trunk/gcc/testsuite/g++.dg/init/array33.C

Modified:

trunk/gcc/ChangeLog

trunk/gcc/cp/ChangeLog

trunk/gcc/cp/tree.c

trunk/gcc/tree.c


[Bug c++/55245] [4.6 Regression] Compiler segfault when compiling a small test case

2013-01-02 Thread jason at gcc dot gnu.org


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



--- Comment #11 from Jason Merrill jason at gcc dot gnu.org 2013-01-02 
19:03:17 UTC ---

Author: jason

Date: Wed Jan  2 19:03:04 2013

New Revision: 194811



URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=194811

Log:

PR c++/55804

PR c++/55032

PR c++/55245

* tree.c (build_array_type_1): Revert earlier change.

* cp/tree.c (build_cplus_array_type): Copy layout information

to main variant if necessary.



Added:

trunk/gcc/testsuite/g++.dg/init/array33.C

Modified:

trunk/gcc/ChangeLog

trunk/gcc/cp/ChangeLog

trunk/gcc/cp/tree.c

trunk/gcc/tree.c


[Bug c++/55032] [4.7/4.8 Regression] Internal compiler error: in strip_typedefs, at cp/tree.c:1199

2013-01-02 Thread jason at gcc dot gnu.org


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



--- Comment #8 from Jason Merrill jason at gcc dot gnu.org 2013-01-02 
19:03:19 UTC ---

Author: jason

Date: Wed Jan  2 19:03:04 2013

New Revision: 194811



URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=194811

Log:

PR c++/55804

PR c++/55032

PR c++/55245

* tree.c (build_array_type_1): Revert earlier change.

* cp/tree.c (build_cplus_array_type): Copy layout information

to main variant if necessary.



Added:

trunk/gcc/testsuite/g++.dg/init/array33.C

Modified:

trunk/gcc/ChangeLog

trunk/gcc/cp/ChangeLog

trunk/gcc/cp/tree.c

trunk/gcc/tree.c


[Bug c++/55032] [4.7/4.8 Regression] Internal compiler error: in strip_typedefs, at cp/tree.c:1199

2013-01-02 Thread jason at gcc dot gnu.org


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



--- Comment #9 from Jason Merrill jason at gcc dot gnu.org 2013-01-02 
19:03:55 UTC ---

Author: jason

Date: Wed Jan  2 19:03:37 2013

New Revision: 194812



URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=194812

Log:

PR c++/55804

PR c++/55032

PR c++/55245

* tree.c (build_array_type_1): Revert earlier change.

* cp/tree.c (build_cplus_array_type): Copy layout information

to main variant if necessary.



Added:

branches/gcc-4_7-branch/gcc/testsuite/g++.dg/init/array33.C

Modified:

branches/gcc-4_7-branch/gcc/ChangeLog

branches/gcc-4_7-branch/gcc/cp/ChangeLog

branches/gcc-4_7-branch/gcc/cp/tree.c

branches/gcc-4_7-branch/gcc/tree.c


[Bug c++/55032] [4.7/4.8 Regression] Internal compiler error: in strip_typedefs, at cp/tree.c:1199

2013-01-02 Thread jason at gcc dot gnu.org


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



--- Comment #10 from Jason Merrill jason at gcc dot gnu.org 2013-01-02 
19:04:07 UTC ---

Author: jason

Date: Wed Jan  2 19:03:46 2013

New Revision: 194813



URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=194813

Log:

PR c++/55804

PR c++/55032

PR c++/55245

* tree.c (build_array_type_1): Revert earlier change.

* cp/tree.c (build_cplus_array_type): Copy layout information

to main variant if necessary.



Added:

branches/gcc-4_6-branch/gcc/testsuite/g++.dg/init/array33.C

Modified:

branches/gcc-4_6-branch/gcc/ChangeLog

branches/gcc-4_6-branch/gcc/cp/ChangeLog

branches/gcc-4_6-branch/gcc/cp/tree.c

branches/gcc-4_6-branch/gcc/tree.c


[Bug c++/55245] [4.6 Regression] Compiler segfault when compiling a small test case

2013-01-02 Thread jason at gcc dot gnu.org


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



--- Comment #12 from Jason Merrill jason at gcc dot gnu.org 2013-01-02 
19:03:55 UTC ---

Author: jason

Date: Wed Jan  2 19:03:37 2013

New Revision: 194812



URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=194812

Log:

PR c++/55804

PR c++/55032

PR c++/55245

* tree.c (build_array_type_1): Revert earlier change.

* cp/tree.c (build_cplus_array_type): Copy layout information

to main variant if necessary.



Added:

branches/gcc-4_7-branch/gcc/testsuite/g++.dg/init/array33.C

Modified:

branches/gcc-4_7-branch/gcc/ChangeLog

branches/gcc-4_7-branch/gcc/cp/ChangeLog

branches/gcc-4_7-branch/gcc/cp/tree.c

branches/gcc-4_7-branch/gcc/tree.c


[Bug c++/55804] [4.7/4.8 regression] GCC omits required call to constructor

2013-01-02 Thread jason at gcc dot gnu.org


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



--- Comment #4 from Jason Merrill jason at gcc dot gnu.org 2013-01-02 
19:03:57 UTC ---

Author: jason

Date: Wed Jan  2 19:03:37 2013

New Revision: 194812



URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=194812

Log:

PR c++/55804

PR c++/55032

PR c++/55245

* tree.c (build_array_type_1): Revert earlier change.

* cp/tree.c (build_cplus_array_type): Copy layout information

to main variant if necessary.



Added:

branches/gcc-4_7-branch/gcc/testsuite/g++.dg/init/array33.C

Modified:

branches/gcc-4_7-branch/gcc/ChangeLog

branches/gcc-4_7-branch/gcc/cp/ChangeLog

branches/gcc-4_7-branch/gcc/cp/tree.c

branches/gcc-4_7-branch/gcc/tree.c


[Bug c++/55804] [4.7/4.8 regression] GCC omits required call to constructor

2013-01-02 Thread jason at gcc dot gnu.org


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



--- Comment #5 from Jason Merrill jason at gcc dot gnu.org 2013-01-02 
19:04:10 UTC ---

Author: jason

Date: Wed Jan  2 19:03:46 2013

New Revision: 194813



URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=194813

Log:

PR c++/55804

PR c++/55032

PR c++/55245

* tree.c (build_array_type_1): Revert earlier change.

* cp/tree.c (build_cplus_array_type): Copy layout information

to main variant if necessary.



Added:

branches/gcc-4_6-branch/gcc/testsuite/g++.dg/init/array33.C

Modified:

branches/gcc-4_6-branch/gcc/ChangeLog

branches/gcc-4_6-branch/gcc/cp/ChangeLog

branches/gcc-4_6-branch/gcc/cp/tree.c

branches/gcc-4_6-branch/gcc/tree.c


[Bug c++/55245] [4.6 Regression] Compiler segfault when compiling a small test case

2013-01-02 Thread jason at gcc dot gnu.org


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



--- Comment #13 from Jason Merrill jason at gcc dot gnu.org 2013-01-02 
19:04:07 UTC ---

Author: jason

Date: Wed Jan  2 19:03:46 2013

New Revision: 194813



URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=194813

Log:

PR c++/55804

PR c++/55032

PR c++/55245

* tree.c (build_array_type_1): Revert earlier change.

* cp/tree.c (build_cplus_array_type): Copy layout information

to main variant if necessary.



Added:

branches/gcc-4_6-branch/gcc/testsuite/g++.dg/init/array33.C

Modified:

branches/gcc-4_6-branch/gcc/ChangeLog

branches/gcc-4_6-branch/gcc/cp/ChangeLog

branches/gcc-4_6-branch/gcc/cp/tree.c

branches/gcc-4_6-branch/gcc/tree.c


[Bug libfortran/48785] BOZ editing of real numbers not working with -std=f2008

2013-01-02 Thread jvdelisle at gcc dot gnu.org


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



Jerry DeLisle jvdelisle at gcc dot gnu.org changed:



   What|Removed |Added



 Status|UNCONFIRMED |RESOLVED

 Resolution||FIXED



--- Comment #9 from Jerry DeLisle jvdelisle at gcc dot gnu.org 2013-01-02 
20:02:51 UTC ---

Looking at transfer.c and trying the test case provided here, I believe this is

fixed.



Closing.


[Bug c++/55804] [4.7/4.8 regression] GCC omits required call to constructor

2013-01-02 Thread jason at gcc dot gnu.org


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



Jason Merrill jason at gcc dot gnu.org changed:



   What|Removed |Added



 Status|ASSIGNED|RESOLVED

 Resolution||FIXED



--- Comment #6 from Jason Merrill jason at gcc dot gnu.org 2013-01-02 
20:15:10 UTC ---

Fixed.


[Bug fortran/55818] Reading a REAL from a file which doesn't end in a new line fails

2013-01-02 Thread jvdelisle at gcc dot gnu.org


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



--- Comment #9 from Jerry DeLisle jvdelisle at gcc dot gnu.org 2013-01-02 
20:29:35 UTC ---

Author: jvdelisle

Date: Wed Jan  2 20:29:28 2013

New Revision: 194819



URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=194819

Log:

2013-01-02  Jerry DeLisle  jvdeli...@gcc.gnu.org



PR fortran/55818

* gfortran.dg/eof_4.f90: New test.



Added:

trunk/gcc/testsuite/gfortran.dg/eof_4.f90

Modified:

trunk/gcc/testsuite/ChangeLog


[Bug libfortran/50105] [4.6/4.7/4.8 Regression] I/O with g6.5 - wrong number of ** shown

2013-01-02 Thread jvdelisle at gcc dot gnu.org


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



--- Comment #21 from Jerry DeLisle jvdelisle at gcc dot gnu.org 2013-01-02 
20:46:02 UTC ---

Based on the interp, current gfortran is acceptable and we can close this PR.


[Bug c++/54325] [4.7/4.8 Regression] C++11 uniform initialization syntax for argument-less abstract base class constructor fails

2013-01-02 Thread jason at gcc dot gnu.org


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



--- Comment #11 from Jason Merrill jason at gcc dot gnu.org 2013-01-02 
20:54:46 UTC ---

Author: jason

Date: Wed Jan  2 20:54:42 2013

New Revision: 194820



URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=194820

Log:

PR c++/54325

* call.c (build_new_method_call_1): Don't use build_value_init for

user-provided default constructors.



Added:

trunk/gcc/testsuite/g++.dg/cpp0x/initlist-protected.C

Modified:

trunk/gcc/cp/ChangeLog

trunk/gcc/cp/call.c


[Bug c++/54325] [4.7/4.8 Regression] C++11 uniform initialization syntax for argument-less abstract base class constructor fails

2013-01-02 Thread jason at gcc dot gnu.org


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



--- Comment #12 from Jason Merrill jason at gcc dot gnu.org 2013-01-02 
20:56:37 UTC ---

Author: jason

Date: Wed Jan  2 20:56:29 2013

New Revision: 194821



URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=194821

Log:

PR c++/54325

* call.c (build_new_method_call_1): Don't use build_value_init for

user-provided default constructors.



Added:

branches/gcc-4_7-branch/gcc/testsuite/g++.dg/cpp0x/initlist-protected.C

Modified:

branches/gcc-4_7-branch/gcc/cp/ChangeLog

branches/gcc-4_7-branch/gcc/cp/call.c


[Bug c++/54325] [4.7/4.8 Regression] C++11 uniform initialization syntax for argument-less abstract base class constructor fails

2013-01-02 Thread jason at gcc dot gnu.org


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



Jason Merrill jason at gcc dot gnu.org changed:



   What|Removed |Added



 Status|REOPENED|RESOLVED

 Resolution||FIXED



--- Comment #13 from Jason Merrill jason at gcc dot gnu.org 2013-01-02 
21:05:46 UTC ---

Testcase from comment #1 fixed as well.


[Bug sanitizer/55844] -fsanitize=address -Os -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -m64 doesn't work

2013-01-02 Thread jakub at gcc dot gnu.org


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



--- Comment #4 from Jakub Jelinek jakub at gcc dot gnu.org 2013-01-02 
21:07:21 UTC ---

Could you please do an extra merge soon, even before switching the default?

You've raised some cases where on ubuntu _Unwind_* based backtrace wasn't

accurrate, it would be nice to check it out on other distros and find out the

reason.  BTW, glibc backtrace(3) on i?86 (32-bit only) uses a combination of

_Unwind_* based backtrace for as long as unwind info is provided, and then

grabs ebp from the unwind info at the outermost frame before unwind info isn't

provided, and from there attempts to use the fast backtrace method (for cases

where older i?86 code when gcc still didn't default to asynchronous unwind

tables on i?86 calls newer code where gcc defaults to it).  On x86_64 this

isn't done, as asynchronous unwind tables have been the default basically for

the whole support of the architecture.


[Bug middle-end/55198] [4.8 Regression] libquadmath/math/fmaq.c:233:7: internal compiler error

2013-01-02 Thread danglin at gcc dot gnu.org


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



--- Comment #8 from John David Anglin danglin at gcc dot gnu.org 2013-01-02 
21:14:22 UTC ---

Author: danglin

Date: Wed Jan  2 21:14:13 2013

New Revision: 194822



URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=194822

Log:

PR middle-end/55198

* expr.c (expand_expr_real_1): Don't use bitfield extraction for non

BLKmode objects when EXPAND_MEMORY is specified.





Modified:

trunk/gcc/ChangeLog

trunk/gcc/expr.c


[Bug middle-end/55198] [4.8 Regression] libquadmath/math/fmaq.c:233:7: internal compiler error

2013-01-02 Thread jakub at gcc dot gnu.org


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



Jakub Jelinek jakub at gcc dot gnu.org changed:



   What|Removed |Added



 Status|NEW |RESOLVED

 CC||jakub at gcc dot gnu.org

 Resolution||FIXED



--- Comment #9 from Jakub Jelinek jakub at gcc dot gnu.org 2013-01-02 
21:17:01 UTC ---

Assuming fixed.


[Bug libfortran/50105] [4.6/4.7/4.8 Regression] I/O with g6.5 - wrong number of ** shown

2013-01-02 Thread anlauf at gmx dot de


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



Harald Anlauf anlauf at gmx dot de changed:



   What|Removed |Added



 CC||anlauf at gmx dot de



--- Comment #22 from Harald Anlauf anlauf at gmx dot de 2013-01-02 21:40:03 
UTC ---

(In reply to comment #17)

 We should be able to diagnose this at compile time.



It might make sense to link PR45129 (and possibly PR28397)

to this one as part of a test suite.


[Bug fortran/55849] New: [OOP] Implement temporary support for SELECT TYPE(name = array ( [vector-subscript] ))

2013-01-02 Thread burnus at gcc dot gnu.org


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



 Bug #: 55849

   Summary: [OOP] Implement temporary support for SELECT TYPE(name

= array ( [vector-subscript] ))

Classification: Unclassified

   Product: gcc

   Version: 4.8.0

Status: UNCONFIRMED

  Keywords: rejects-valid

  Severity: normal

  Priority: P3

 Component: fortran

AssignedTo: unassig...@gcc.gnu.org

ReportedBy: bur...@gcc.gnu.org





From http://gcc.gnu.org/ml/fortran/2013-01/msg4.html. The following program

fails with:



   Error: CLASS selector at (1) needs a temporary which is not yet implemented



module gn

  type :: ncb

  end type ncb

  type, public :: tn

 class(ncb), allocatable, dimension(:) :: cb

  end type tn

contains

  integer function name(self)

implicit none

class (tn), intent(in) :: self

select type (component = self%cb([4,7+1]))

end select

  end function name

end module gn


[Bug fortran/55850] New: [OOP] SELECT TYPE issues

2013-01-02 Thread burnus at gcc dot gnu.org


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



 Bug #: 55850

   Summary: [OOP] SELECT TYPE issues

Classification: Unclassified

   Product: gcc

   Version: 4.8.0

Status: UNCONFIRMED

  Keywords: accepts-invalid, ice-on-invalid-code

  Severity: normal

  Priority: P3

 Component: fortran

AssignedTo: unassig...@gcc.gnu.org

ReportedBy: bur...@gcc.gnu.org

CC: pa...@gcc.gnu.org





a) Accepts invalid with coindexed variables. Fortran 2008:



R804  association  is  associate-name = selector

R805  selector  is  expr

or  variable

C801 (R804) If selector is not a variable or is a variable that has a vector

subscript, associate-name shall not appear in a variable definition context

(16.6.7).

C802 (R804) An associate-name shall not be the same as another associate-name

in the same associate-stmt.

C803 (R805) variable shall not be a coindexed object.

C804 (R805) expr shall not be a variable.





I think that prohibits:

  associate (myname = coarray[i])



For ASSOCIATE, one gets:



associate (x = caf[4])

  1

Error: Association target at (1) must not be coindexed





But for SELECT TYPE, it is accepted:



module gn

  type :: ncb

  end type ncb

  type, public :: tn

 class(ncb), allocatable :: cb(:)[:]

  end type tn

contains

  integer function name(self)

implicit none

class (tn), intent(in) :: self

select type (component = self%cb(1)[4])  ! INVALID due to the [4]

end select

  end function name

end module gn





Note: The problem is not the coarray, just the coindex (gfc_is_coindexed).







b) ICE with the following:

select type (t = self%cb)

Note the = opposed to =. Backtrace:



0x5e32d0 gfc_undo_symbols()

../../gcc/fortran/symbol.c:2972

0x5af3aa reject_statement

../../gcc/fortran/parse.c:1747

0x5af4dc match_word

../../gcc/fortran/parse.c:72





module gn

  type :: ncb

  end type ncb

  type, public :: tn

 class(ncb), allocatable :: cb

  end type tn

contains

  integer function name(self)

implicit none

class (tn), intent(in) :: self

select type (t = self%cb)

end select

  end function name

end module gn







c) The following also ICEs:



0x5cd395 resolve_select_type

../../gcc/fortran/resolve.c:7791

0x5cd395 resolve_code

../../gcc/fortran/resolve.c:9707





module gn

  type :: ncb

  end type ncb

  type, public :: tn

 type(ncb), allocatable :: cb

  end type tn

contains

  integer function name(self)

implicit none

class (tn), intent(in) :: self

select type (t = self%cb)

type is (ncb)

t = 5

end select

  end function name

end module gn


[Bug fortran/55850] [OOP] SELECT TYPE issues

2013-01-02 Thread burnus at gcc dot gnu.org


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



Tobias Burnus burnus at gcc dot gnu.org changed:



   What|Removed |Added



 CC||burnus at gcc dot gnu.org



--- Comment #1 from Tobias Burnus burnus at gcc dot gnu.org 2013-01-02 
22:45:38 UTC ---

See also PR 55172, the coarray issue

(http://gcc.gnu.org/ml/fortran/2013-01/msg4.html) and PR 54990.


[Bug target/43961] [ARM thumb] branch out of range with thumb1_output_casesi

2013-01-02 Thread jsm28 at gcc dot gnu.org


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



--- Comment #8 from Joseph S. Myers jsm28 at gcc dot gnu.org 2013-01-03 
00:00:08 UTC ---

Mikael, ping on this patch from June 2010 ... what happened in testing?  And

shouldn't this bug be marked as a regression, given the identification of the

responsible revision?


[Bug middle-end/55851] New: ICE in size_binop_loc, at fold-const.c:1385

2013-01-02 Thread jan.sm...@alcatel-lucent.com


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



 Bug #: 55851

   Summary: ICE in size_binop_loc, at fold-const.c:1385

Classification: Unclassified

   Product: gcc

   Version: 4.8.0

Status: UNCONFIRMED

  Severity: normal

  Priority: P3

 Component: middle-end

AssignedTo: unassig...@gcc.gnu.org

ReportedBy: jan.sm...@alcatel-lucent.com





Created attachment 29074

  -- http://gcc.gnu.org/bugzilla/attachment.cgi?id=29074

testcase



Trunk, testcase attached.





/tmp/ice.c: In function 'test':

/tmp/ice.c:36:45: internal compiler error: in size_binop_loc, at

fold-const.c:1385

 if ((found_bit_mask[dqs][word]  (1  j)) == 0)

 ^

0x6de9b5 size_binop_loc(unsigned int, tree_code, tree_node*, tree_node*)

../../trunk/gcc/fold-const.c:1385

0x74c4ec gimplify_compound_lval

../../trunk/gcc/gimplify.c:2239

0x744f5f gimplify_expr(tree_node**, gimple_statement_d**, gimple_statement_d**,

bool (*)(tree_node*), int)

../../trunk/gcc/gimplify.c:7146

0x7442b5 gimplify_expr(tree_node**, gimple_statement_d**, gimple_statement_d**,

bool (*)(tree_node*), int)

../../trunk/gcc/gimplify.c:7459

0x74530b gimplify_expr(tree_node**, gimple_statement_d**, gimple_statement_d**,

bool (*)(tree_node*), int)

../../trunk/gcc/gimplify.c:7814

0x74530b gimplify_expr(tree_node**, gimple_statement_d**, gimple_statement_d**,

bool (*)(tree_node*), int)

../../trunk/gcc/gimplify.c:7814

0x74530b gimplify_expr(tree_node**, gimple_statement_d**, gimple_statement_d**,

bool (*)(tree_node*), int)

../../trunk/gcc/gimplify.c:7814

0x7512bc gimplify_cond_expr

../../trunk/gcc/gimplify.c:3285

0x74542d gimplify_expr(tree_node**, gimple_statement_d**, gimple_statement_d**,

bool (*)(tree_node*), int)

../../trunk/gcc/gimplify.c:7150

0x74d978 gimplify_stmt(tree_node**, gimple_statement_d**)

../../trunk/gcc/gimplify.c:5726

0x7449e3 gimplify_statement_list

../../trunk/gcc/gimplify.c:1562

0x7449e3 gimplify_expr(tree_node**, gimple_statement_d**, gimple_statement_d**,

bool (*)(tree_node*), int)

../../trunk/gcc/gimplify.c:7583

0x74d978 gimplify_stmt(tree_node**, gimple_statement_d**)

../../trunk/gcc/gimplify.c:5726

0x74e898 gimplify_bind_expr

../../trunk/gcc/gimplify.c:1254

0x7455fe gimplify_expr(tree_node**, gimple_statement_d**, gimple_statement_d**,

bool (*)(tree_node*), int)

../../trunk/gcc/gimplify.c:7365

0x74d978 gimplify_stmt(tree_node**, gimple_statement_d**)

../../trunk/gcc/gimplify.c:5726

0x751845 gimplify_cond_expr

../../trunk/gcc/gimplify.c:3349

0x74542d gimplify_expr(tree_node**, gimple_statement_d**, gimple_statement_d**,

bool (*)(tree_node*), int)

../../trunk/gcc/gimplify.c:7150

0x74d978 gimplify_stmt(tree_node**, gimple_statement_d**)

../../trunk/gcc/gimplify.c:5726

0x7449e3 gimplify_statement_list

../../trunk/gcc/gimplify.c:1562


[Bug fortran/55852] New: internal compiler error: in gfc_build_intrinsic_call, at fortran/expr.c:4647

2013-01-02 Thread latlon90180+gcc_bugzilla at gmail dot com


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



 Bug #: 55852

   Summary: internal compiler error: in gfc_build_intrinsic_call,

at fortran/expr.c:4647

Classification: Unclassified

   Product: gcc

   Version: 4.8.0

Status: UNCONFIRMED

  Severity: normal

  Priority: P3

 Component: fortran

AssignedTo: unassig...@gcc.gnu.org

ReportedBy: latlon90180+gcc_bugzi...@gmail.com





Compilation of the following program causes internal compiler error:



!---

program bug

  implicit none



  Real, allocatable:: a(:)



  allocate(a(1:3))



  print*, ubound((a), 1) ! Bad

! print*, ubound(a, 1)   ! OK

! print*, lbound((a), 1) ! OK

! print*, lbound(a, 1)   ! OK



  stop

end program bug

!



$ gfortran-mp-4.8 -Wall -Wextra bug.F90

f951: internal compiler error: in gfc_build_intrinsic_call, at

fortran/expr.c:4647



f951: internal compiler error: Abort trap

gfortran-mp-4.8: internal compiler error: Abort trap (program f951)

Abort trap



$ gfortran-mp-4.8 -v

Using built-in specs.

COLLECT_GCC=gfortran-mp-4.8

COLLECT_LTO_WRAPPER=/opt/local/libexec/gcc/x86_64-apple-darwin10/4.8.0/lto-wrapper

Target: x86_64-apple-darwin10

Configured with: ../gcc-4.8-20121223/configure --prefix=/opt/local

--build=x86_64-apple-darwin10

--enable-languages=c,c++,objc,obj-c++,fortran,java

--libdir=/opt/local/lib/gcc48 --includedir=/opt/local/include/gcc48

--infodir=/opt/local/share/info --mandir=/opt/local/share/man

--datarootdir=/opt/local/share/gcc-4.8 --with-local-prefix=/opt/local

--with-system-zlib --disable-nls --program-suffix=-mp-4.8

--with-gxx-include-dir=/opt/local/include/gcc48/c++/ --with-gmp=/opt/local

--with-mpfr=/opt/local --with-mpc=/opt/local --with-ppl=/opt/local

--with-cloog=/opt/local --enable-cloog-backend=isl

--disable-cloog-version-check --enable-stage1-checking --disable-multilib

--enable-lto --enable-libstdcxx-time --with-as=/opt/local/bin/as

--with-ld=/opt/local/bin/ld --with-ar=/opt/local/bin/ar

--with-bugurl=https://trac.macports.org/newticket --with-pkgversion='MacPorts

gcc48 4.8-20121223_0'

Thread model: posix

gcc version 4.8.0 20121223 (experimental) (MacPorts gcc48 4.8-20121223_0)


[Bug c++/55853] New: [C++11] ICE calling member function of templated class in lambda

2013-01-02 Thread kyle.t.konrad at gmail dot com


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



 Bug #: 55853

   Summary: [C++11] ICE calling member function of templated class

in lambda

Classification: Unclassified

   Product: gcc

   Version: 4.7.2

Status: UNCONFIRMED

  Severity: normal

  Priority: P3

 Component: c++

AssignedTo: unassig...@gcc.gnu.org

ReportedBy: kyle.t.kon...@gmail.com





Created attachment 29075

  -- http://gcc.gnu.org/bugzilla/attachment.cgi?id=29075

preprocessed source



This appears to be similar but not identical to

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



Repro case:



#include map

#include functional



using namespace std;



struct tData {

  double a;

};



templateclass DataType

class MapWrap {

public:



  void Insert(const int p, const DataType data) {

m_[p] = data;

  }



  functionvoid(const DataType) CreateInserter(functionint(const DataType)

data_to_int) {

return [this, data_to_int](const DataType data) {

Insert(data_to_int(data), data); };

  }



private:

  mapint, DataType m_;

};



int main(int argc, char **argv) {

  MapWraptData m;

  auto fn = m.CreateInserter([](const tData d) { return static_castint(d.a);

});

  fn({12});

}


[Bug c++/55853] [C++11] ICE calling member function of templated class in lambda

2013-01-02 Thread kyle.t.konrad at gmail dot com


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



--- Comment #1 from Kyle Konrad kyle.t.konrad at gmail dot com 2013-01-03 
01:13:26 UTC ---

I forgot to mention that adding this- to the Insert() call causes

compilation to succeed.


[Bug c++/55853] [C++11] ICE calling member function of templated class in lambda

2013-01-02 Thread kyle.t.konrad at gmail dot com


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



--- Comment #2 from Kyle Konrad kyle.t.konrad at gmail dot com 2013-01-03 
01:15:56 UTC ---

Version information:



$ g++ -v

Using built-in specs.

COLLECT_GCC=g++

COLLECT_LTO_WRAPPER=/usr/lib/gcc/x86_64-linux-gnu/4.7/lto-wrapper

Target: x86_64-linux-gnu

Configured with: ../src/configure -v --with-pkgversion='Debian 4.7.2-4'

--with-bugurl=file:///usr/share/doc/gcc-4.7/README.Bugs

--enable-languages=c,c++,go,fortran,objc,obj-c++ --prefix=/usr

--program-suffix=-4.7 --enable-shared --enable-linker-build-id

--with-system-zlib --libexecdir=/usr/lib --without-included-gettext

--enable-threads=posix --with-gxx-include-dir=/usr/include/c++/4.7

--libdir=/usr/lib --enable-nls --with-sysroot=/ --enable-clocale=gnu

--enable-libstdcxx-debug --enable-libstdcxx-time=yes --enable-gnu-unique-object

--enable-plugin --enable-objc-gc --with-arch-32=i586 --with-tune=generic

--enable-checking=release --build=x86_64-linux-gnu --host=x86_64-linux-gnu

--target=x86_64-linux-gnu

Thread model: posix

gcc version 4.7.2 (Debian 4.7.2-4)


[Bug middle-end/55851] ICE in size_binop_loc, at fold-const.c:1385

2013-01-02 Thread pinskia at gcc dot gnu.org


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



--- Comment #1 from Andrew Pinski pinskia at gcc dot gnu.org 2013-01-03 
01:28:28 UTC ---

What options are you using and what is the target?


[Bug middle-end/55851] ICE in size_binop_loc, at fold-const.c:1385

2013-01-02 Thread pinskia at gcc dot gnu.org


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



--- Comment #2 from Andrew Pinski pinskia at gcc dot gnu.org 2013-01-03 
01:33:19 UTC ---

This works for me on x86_64-linux-gnu with revision 194774.


[Bug middle-end/55851] ICE in size_binop_loc, at fold-const.c:1385

2013-01-02 Thread pinskia at gcc dot gnu.org

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

Andrew Pinski pinskia at gcc dot gnu.org changed:

   What|Removed |Added

   Keywords||ice-on-valid-code
 Target||i?86-*-*

--- Comment #3 from Andrew Pinski pinskia at gcc dot gnu.org 2013-01-03 
01:36:09 UTC ---
apinski@apinskidesktop:~$ ./gcc-126/bin/gcc ice.c  -m32
ice.c: In function ‘test’:
ice.c:36:45: internal compiler error: in size_binop_loc, at fold-const.c:1385
 if ((found_bit_mask[dqs][word]  (1  j)) == 0) 

Needed -m32.


[Bug middle-end/55851] ICE in size_binop_loc, at fold-const.c:1385

2013-01-02 Thread pinskia at gcc dot gnu.org


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



--- Comment #4 from Andrew Pinski pinskia at gcc dot gnu.org 2013-01-03 
01:42:37 UTC ---

Confirmed reduced testcase:

enum { A=1 } something = A;

void test(void)

{

char found_bit_mask[1][something];

found_bit_mask[0][0] = 1;

}



--- CUT 

Fails with:

GNU C (GCC) version 4.8.0 20121127 (experimental) [trunk revision 193870]

(x86_64-unknown-linux-gnu)


[Bug middle-end/55851] [4.8 Regression] ICE in size_binop_loc, at fold-const.c:1385

2013-01-02 Thread pinskia at gcc dot gnu.org


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



Andrew Pinski pinskia at gcc dot gnu.org changed:



   What|Removed |Added



 Status|UNCONFIRMED |NEW

   Last reconfirmed||2013-01-03

  Known to work||4.7.0

   Target Milestone|--- |4.8.0

Summary|ICE in size_binop_loc, at   |[4.8 Regression] ICE in

   |fold-const.c:1385   |size_binop_loc, at

   ||fold-const.c:1385

 Ever Confirmed|0   |1



--- Comment #5 from Andrew Pinski pinskia at gcc dot gnu.org 2013-01-03 
01:47:47 UTC ---

Confirmed a regression from 4.7.0.


[Bug fortran/55854] New: ICE on intent(out) dummy argument with unlimited polymorphic component

2013-01-02 Thread damian at rouson dot net


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



 Bug #: 55854

   Summary: ICE on intent(out) dummy argument with unlimited

polymorphic component

Classification: Unclassified

   Product: gcc

   Version: 4.8.0

Status: UNCONFIRMED

  Severity: normal

  Priority: P3

 Component: fortran

AssignedTo: unassig...@gcc.gnu.org

ReportedBy: dam...@rouson.net





As demonstrated below, having an intent(out) dummy argument with an

unlimited polymorphic component generates an internal compiler error

with a December 23 build of gfortran 4.8:



$ cat ice_on_intent_out_with_unlimted.f90

  type foo

class(*), allocatable :: x

  end type

contains

  subroutine bar(this)

type(foo), intent(out) :: this

  end

end

$ gfortran ice_on_intent_out_with_unlimted.f90

ice_on_intent_out_with_unlimted.f90: In function 'bar':

ice_on_intent_out_with_unlimted.f90:5:0: internal compiler error:

Segmentation fault: 11

   subroutine bar(this)

 ^



ice_on_intent_out_with_unlimted.f90:5:0: internal compiler error: Abort trap: 6

gfortran: internal compiler error: Abort trap: 6 (program f951)

Abort trap: 6

$ gfortran --version

GNU Fortran (MacPorts gcc48 4.8-20121223_0) 4.8.0 20121223 (experimental)


[Bug libgcj/50895] Build failure in jni.cc

2013-01-02 Thread nwourms at gmail dot com


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



Nicholas Wourms nwourms at gmail dot com changed:



   What|Removed |Added



 CC||nwourms at gmail dot com



--- Comment #6 from Nicholas Wourms nwourms at gmail dot com 2013-01-03 
03:03:13 UTC ---

(In reply to comment #4)

 A question about this build-failure.  Were you using posix-threading model for

 4.6 ?



I can't speak for Ruben, but now that thread models have been inextricably

entwined into the core compiler, libjava really should be updated to handle

mingw64's posix thread support. It shouldn't be too difficult, but does require

some unraveling of the various Posix/Win32 native functions.



I think the main problem is the lack of any decent signal handling in win32. As

such, files such as:



libjava/java/lang/natWin32Process.cc

libjava/gnu/java/nio/natVMSelectorWin32.cc



seem to involve event handling that is linked to Win32 threading model,

specifically using the _Jv_Win32GetInterruptEvent() function. It appears that

libjava/win32-threads.cc also has some similarities to the underlying

pthread_cond* implementation in mingw-w64's pthreads library, so in theory it

could just be a matter of porting the interrupt event handlers to

posix-threads.cc to provide ifdef'd alternates to the signal handlers.



Alternatively, Kai and friends at mingw-w64 could implement improved signal

handling in librt, but that may be defeating the purpose of mingw.


[Bug sanitizer/55844] -fsanitize=address -Os -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -m64 doesn't work

2013-01-02 Thread kcc at gcc dot gnu.org


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



--- Comment #5 from Kostya Serebryany kcc at gcc dot gnu.org 2013-01-03 
06:17:38 UTC ---

 Could you please do an extra merge soon, even before switching the default?

I'll start somewhere after Jan 10. 

(I am on holidays before that. There are substantial changes in asan-rt, 

I afraid I won't be able to fix things if they break on non-x86 before I am

back to office)


[Bug fortran/55855] New: incorrect warning with type-bound procedure pointer

2013-01-02 Thread abensonca at gmail dot com

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

 Bug #: 55855
   Summary: incorrect warning with type-bound procedure pointer
Classification: Unclassified
   Product: gcc
   Version: 4.8.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: fortran
AssignedTo: unassig...@gcc.gnu.org
ReportedBy: abenso...@gmail.com


The following:

module eventMod
  type, public :: event
     private
    procedure(eventTask ), pointer, public :: task
 end type event
  abstract interface
     logical function eventTask(self)
       import event
       class(event), intent(in) :: self
     end function eventTask
  end interface
end module eventMod
program test
  use eventMod
  implicit none
  logical :: r
  type(event), pointer :: myEvent
  allocate(myEvent)
  r=myEvent%task()
end program test

causes the following warning when compiled (with gfortran 4.8.0):

$ gfortran -v
Using built-in specs.
COLLECT_GCC=gfortran
COLLECT_LTO_WRAPPER=/home/abenson/Galacticus/Tools/libexec/gcc/x86_64-unknown-
linux-gnu/4.8.0/lto-wrapper
Target: x86_64-unknown-linux-gnu
Configured with: ../gcc-trunk/configure --
prefix=/home/abenson/Galacticus/Tools --enable-languages=c,c++,fortran --
disable-multilib --with-gmp=/home/abenson/Galacticus/Tools
Thread model: posix
gcc version 4.8.0 20121219 (experimental) (GCC)

$ gfortran -o warn.exe warn.F90 -Wall
warn.F90:19.4:

  r=myEvent%task()
    1
Warning: POINTER valued function appears on right-hand side of assignment at
(1)

As far as I can tell, the code runs correctly despite this warning.

the warning is spurious as the task function returns a logical, not a
pointer.