[Bug libfortran/48906] Wrong rounding results with -m32

2011-06-01 Thread thenlich at users dot sourceforge.net
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=48906

--- Comment #19 from Thomas Henlich thenlich at users dot sourceforge.net 
2011-06-01 06:26:27 UTC ---
 Also, the test case, pr20755.f was originally intended to pass only with
 -std=legacy.  This is to mimic g77 which does not ignore the scale factor.  At
 least recently, gfortran passes this test case regardless of the -std=.  I am
 tempted to delete the test case, since it looks like it goes against current
 standards.  Any opinions about this?

Now you've lost me.

From what I understand PR20755 was about G editing resetting the scale factor
in certain cases (to 0 in the example) and not restoring it afterwards (to 1 in
this case). This is a bug both in legacy and in Fortran standard modes. The bug
was fixed and a testcase was created. The result is standard-compliant. Why
would you want to remove the testcase? The point of having a testcase is to
prevent a reappearing of the same bug in the future, so maybe we should keep
it.


[Bug debug/48203] ICE in dwarf2out.c while building eglibc.

2011-06-01 Thread jakub at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=48203

Jakub Jelinek jakub at gcc dot gnu.org changed:

   What|Removed |Added

 Status|ASSIGNED|RESOLVED
 Resolution||FIXED

--- Comment #15 from Jakub Jelinek jakub at gcc dot gnu.org 2011-06-01 
06:32:11 UTC ---
Hopefully.


[Bug other/49244] no intrinsics to emit 'lock bts' and 'lock btc'

2011-06-01 Thread jakub at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=49244

Jakub Jelinek jakub at gcc dot gnu.org changed:

   What|Removed |Added

 CC||aldyh at gcc dot gnu.org,
   ||jakub at gcc dot gnu.org,
   ||rth at gcc dot gnu.org

--- Comment #1 from Jakub Jelinek jakub at gcc dot gnu.org 2011-06-01 
06:54:05 UTC ---
I'm afraid this can't be done in the combiner nor in peephole2 and generally
would be hard to do after expansion, but perhaps it could be done during
expansion or earlier, by folding the (complex) sequence into a new builtin,
preferrably with space in the name to make it inaccessible to users and then
expanding that builtin.


[Bug libfortran/48906] Wrong rounding results with -m32

2011-06-01 Thread thenlich at users dot sourceforge.net
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=48906

--- Comment #20 from Thomas Henlich thenlich at users dot sourceforge.net 
2011-06-01 08:12:31 UTC ---
(In reply to comment #18)
 Created attachment 24406 [details]
 New updated patch
 
 This updated patch takes care of Comment #16.

Unfortunately, now the other testcases fail again (although with still another
results):

print (ru,g15.2), .099d0 !  0.10E-01 expected 0.10
print (rc,g15.1), .095d0 !  0.1E-01 expected 0.1
print (rc,g15.2), .0995d0 !  0.10E-01 expected 0.10
print (ru,g15.3), .0999d0 !  0.100E-01 expected 0.100

print (rc,g10.2), 99.5 ! 0.10E+02 expected 0.10E+03
print (rc,g10.2), 995. ! 0.10E+03 expected 0.10E+04
print (rc,g10.3), 999.5 ! 0.100E+03 expected 0.100E+04
print (rc,g10.3), 9995. ! 0.100E+04 expected 0.100E+05

It seems there is still a bug that doesn't increment the exponent in the
overflow case, i.e. when going from 0....E(x) to 0.1000...E(x+1)

The exponent test (decision between F and E editing) must be done after that! I
can not find this in the code right now.


[Bug c++/49251] New: [C++0x][parameter pack expanding] unused parameter warning with unpacking empty tuples

2011-06-01 Thread gintensubaru at gmail dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=49251

   Summary: [C++0x][parameter pack expanding] unused parameter
warning with unpacking empty tuples
   Product: gcc
   Version: 4.6.0
Status: UNCONFIRMED
  Severity: trivial
  Priority: P3
 Component: c++
AssignedTo: unassig...@gcc.gnu.org
ReportedBy: gintensub...@gmail.com


#include tuple

template std::size_t... Indices 
struct indices {};

template class... Args 
void sink( Args... ) {}

template class Tuple, std::size_t... Indices 
void unpack_test( Tuple  t, indicesIndices... ) {
  sink( std::getIndices(t)... );
}

int main() {
  unpack_test( std::tuple(), indices() );
}





This code, which is unpacking tuples, raises unused parameter warning:

$ g++ -std=c++0x -Wunused-parameter bug.cc

bug.cc: In instantiation of 'void unpack_test(Tuple, indicesIndices ...)
[with Tuple = std::tuple, unsigned int ...Indices = {}]':
bug.cc:15:44:   instantiated from here
bug.cc:10:6: warning: unused parameter 't' [-Wunused-parameter]


I've confirmed this behavior on following versions:

4.5.0
4.5.3
4.6.0
4.6-20110527
4.7-20110528


It can be avoided by using the parameter explicitly, like `(void)t;',
but it's not always used.
( For example, it cannot be used for constexpr functions. )


[Bug objc/47077] ICE on invalid code (method implementation outside of implementation context)

2011-06-01 Thread nicola at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=47077

Nicola Pero nicola at gcc dot gnu.org changed:

   What|Removed |Added

 Status|UNCONFIRMED |NEW
   Last reconfirmed||2011.06.01 08:40:25
 Ever Confirmed|0   |1

--- Comment #1 from Nicola Pero nicola at gcc dot gnu.org 2011-06-01 08:40:25 
UTC ---
Yes, confirmed.

Thanks


[Bug debug/48354] internal compiler error: in splice_child_die, at dwarf2out.c:8064

2011-06-01 Thread rguenther at suse dot de
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=48354

--- Comment #12 from rguenther at suse dot de rguenther at suse dot de 
2011-06-01 08:54:43 UTC ---
On Tue, 31 May 2011, hubicka at gcc dot gnu.org wrote:

 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=48354
 
 --- Comment #11 from Jan Hubicka hubicka at gcc dot gnu.org 2011-05-31 
 16:05:49 UTC ---
 The patch seems to work.  I now get the ICE at output_die (already reported)
 but also new
 /abuild/jh/trunk-install/bin/g++ -flto=24 -fuse-linker-plugin -o dump_syms 
 -fno-rtti -fno-exceptions -Wall -Wpointer-arith -Woverloaded-virtual -Wsynth
 -Wno-ctor-dtor-privacy -Wno-non-virtual-dtor -Wcast-align 
 -Wno-invalid-offsetof
 -Wno-variadic-macros -Werror=return-type -pedantic -Wno-long-long
 -fno-strict-aliasing -std=gnu++0x -pthread -pipe  -DNDEBUG -DTRIMMED -g -O3
 -lpthread-Wl,-rpath-link,/abuild/jh/build-mozilla-new12/dist/bin
 -Wl,-rpath-link,/usr/local/lib  -static host_dump_syms.o
 ../../../../../../../toolkit/crashreporter/google-breakpad/src/common/linux/libhost_breakpad_linux_common_s.a
 ../../../../../../../toolkit/crashreporter/google-breakpad/src/common/libhost_breakpad_common_s.a
 ../../../../../../../toolkit/crashreporter/google-breakpad/src/common/dwarf/libhost_breakpad_dwarf_s.a
  
 In file included from
 /abuild/jh/trunk-install/lib/gcc/x86_64-unknown-linux-gnu/4.7.0/../../../../include/c++/4.7.0/bits/stl_tree.h:930:0,
  from :311:
 /abuild/jh/mozilla-central2/mozilla-central/toolkit/crashreporter/google-breakpad/src/common/linux/file_id.cc:
 In function 'FindElfClassTextSection':
 /abuild/jh/mozilla-central2/mozilla-central/toolkit/crashreporter/google-breakpad/src/common/linux/file_id.cc:133:73:
 internal compiler error: in gen_typedef_die, at dwarf2out.c:21064
 Please submit a full bug report,
 with preprocessed source if appropriate.
 See http://gcc.gnu.org/bugs.html for instructions.
 make[6]: *** [/tmp/ccaKinu0.ltrans21.ltrans.o] Error 1
 
 
 Shall I try to get testcase?

No, that's another expected one.  I'll attach an updated patch.


[Bug c++/49221] [4.7 Regression] Several ICEs in the obj-c++ test suite after revision 174307

2011-06-01 Thread nicola at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=49221

Nicola Pero nicola at gcc dot gnu.org changed:

   What|Removed |Added

 Status|UNCONFIRMED |NEW
   Last reconfirmed||2011.06.01 09:28:00
 CC||nicola at gcc dot gnu.org
 Ever Confirmed|0   |1

--- Comment #5 from Nicola Pero nicola at gcc dot gnu.org 2011-06-01 09:28:00 
UTC ---
Yes, this is confirmed.  Here is what I see --

=== obj-c++ tests ===

Schedule of variations:
unix

Running target unix
Using /usr/share/dejagnu/baseboards/unix.exp as board description file for
target.
Using /usr/share/dejagnu/config/unix.exp as generic interface file for target.
Using /home/nicola/GCC/trunk2/gcc/testsuite/config/default.exp as
tool-and-target-specific interface file.
Running
/home/nicola/GCC/trunk2/gcc/testsuite/obj-c++.dg/attributes/attributes.exp ...
Running /home/nicola/GCC/trunk2/gcc/testsuite/obj-c++.dg/dg.exp ...
FAIL: obj-c++.dg/exceptions-3.mm -fgnu-runtime (internal compiler error)
FAIL: obj-c++.dg/exceptions-3.mm -fgnu-runtime (test for excess errors)
FAIL: obj-c++.dg/exceptions-4.mm -fgnu-runtime (internal compiler error)
FAIL: obj-c++.dg/exceptions-4.mm -fgnu-runtime (test for excess errors)
FAIL: obj-c++.dg/exceptions-5.mm -fgnu-runtime (internal compiler error)
FAIL: obj-c++.dg/exceptions-5.mm -fgnu-runtime (test for excess errors)
FAIL: obj-c++.dg/fobjc-exceptions-1.mm -fgnu-runtime (internal compiler error)
FAIL: obj-c++.dg/fobjc-exceptions-1.mm -fgnu-runtime (test for excess errors)
FAIL: obj-c++.dg/fobjc-exceptions-2.mm -fgnu-runtime (internal compiler error)
FAIL: obj-c++.dg/fobjc-exceptions-2.mm -fgnu-runtime (test for excess errors)
FAIL: obj-c++.dg/fobjc-exceptions-3.mm -fgnu-runtime (internal compiler error)
FAIL: obj-c++.dg/fobjc-exceptions-3.mm -fgnu-runtime (test for excess errors)
FAIL: obj-c++.dg/try-catch-13.mm -fgnu-runtime (internal compiler error)
FAIL: obj-c++.dg/try-catch-13.mm -fgnu-runtime (test for excess errors)
FAIL: obj-c++.dg/try-catch-4.mm -fgnu-runtime (internal compiler error)
FAIL: obj-c++.dg/try-catch-4.mm -fgnu-runtime (test for excess errors)
Running /home/nicola/GCC/trunk2/gcc/testsuite/obj-c++.dg/lto/lto.exp ...
Running /home/nicola/GCC/trunk2/gcc/testsuite/obj-c++.dg/property/property.exp
...
Running /home/nicola/GCC/trunk2/gcc/testsuite/obj-c++.dg/strings/strings.exp
...
Running /home/nicola/GCC/trunk2/gcc/testsuite/obj-c++.dg/tls/tls.exp ...
Running /home/nicola/GCC/trunk2/gcc/testsuite/obj-c++.dg/torture/dg-torture.exp
...
Running
/home/nicola/GCC/trunk2/gcc/testsuite/obj-c++.dg/torture/strings/strings.exp
...
Running /home/nicola/GCC/trunk2/gcc/testsuite/obj-c++.dg/torture/tls/tls.exp
...

=== obj-c++ Summary ===

# of expected passes1422
# of unexpected failures16
# of expected failures  2
# of unsupported tests  86
/home/nicola/GCC/build-trunk2-full-parallel/gcc/testsuite/obj-c++/../../g++ 
version 4.7.0 20110601 (experimental) (GCC) 

make[1]: [check-obj-c++] Error 1 (ignored)
make[1]: Leaving directory `/home/nicola/GCC/build-trunk2-full-parallel/gcc'

For the record, they are due to the compiler crashing in add_stmt().  Here is a 
stack trace of the compiler just before crashing --

Breakpoint 1, add_stmt (t=0xb7d9ebb8) at ../../trunk2/gcc/cp/semantics.c:381
381 {
(gdb) i stack
#0  add_stmt (t=0xb7d9ebb8) at ../../trunk2/gcc/cp/semantics.c:381
#1  0x08145b40 in cp_finish_decl (decl=0xb7da94e0, init=0x0,
init_const_expr_p=0 '\000', asmspec_tree=0x0, flags=0) at
../../trunk2/gcc/cp/decl.c:6194
#2  0x080de1bf in finish_var_decl (var=0xb7da94e0, initializer=0xb7da4300) at
../../trunk2/gcc/objc/objc-runtime-shared-support.c:144
#3  0x080e20a5 in objc_eh_runtime_type (type=0xb7d95780) at
../../trunk2/gcc/objc/objc-gnu-runtime-abi-01.c:2190
#4  0x0844c0c9 in add_type_for_runtime (type=0xb7d95780) at
../../trunk2/gcc/except.c:660
#5  add_type_for_runtime (type=0xb7d95780) at ../../trunk2/gcc/except.c:648
#6  0x0844c20d in gen_eh_region_catch (t=0xb7da8690, type_or_list=0xb7d95780)
at ../../trunk2/gcc/except.c:375
#7  0x086e3972 in lower_catch (state=0xbfffe634, seq=Unhandled dwarf expression
opcode 0xf3
) at ../../trunk2/gcc/tree-eh.c:1680
#8  lower_eh_constructs_2 (state=0xbfffe634, seq=Unhandled dwarf expression
opcode 0xf3
) at ../../trunk2/gcc/tree-eh.c:1958
#9  lower_eh_constructs_1 (state=0xbfffe634, seq=Unhandled dwarf expression
opcode 0xf3
) at ../../trunk2/gcc/tree-eh.c:1996
#10 0x086e3621 in lower_try_finally (state=0xbfffe6b4, seq=Unhandled dwarf
expression opcode 0xf3
) at ../../trunk2/gcc/tree-eh.c:1566
#11 lower_eh_constructs_2 (state=0xbfffe6b4, seq=Unhandled dwarf expression
opcode 0xf3
) at ../../trunk2/gcc/tree-eh.c:1945
#12 lower_eh_constructs_1 (state=0xbfffe6b4, seq=Unhandled dwarf

[Bug c++/49252] New: Problem with inline

2011-06-01 Thread jwillemsen at remedy dot nl
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=49252

   Summary: Problem with inline
   Product: gcc
   Version: 4.6.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: c++
AssignedTo: unassig...@gcc.gnu.org
ReportedBy: jwillem...@remedy.nl


Using gcc on OpenSuSE 4.6

g++-4.6 (SUSE Linux) 4.6.0 20110505 [gcc-4_6-branch revision 173419]
Copyright (C) 2011 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

The example program:

#include string

namespace Demo {
  class SOne
  {
std::string text (void) const;
  private:
std::string text_;

  };
}

inline std::string ::Demo::SOne::text (void) const { return this-text_; }

Gives the error:

johnny@m4500jw:~/ACE/IDL2CPP/test g++-4.6 -fno-strict-aliasing
-fvisibility=hidden -fvisibility-inlines-hidden -O3 -ggdb -m64 -pthread -Wall
-W -Wpointer-arith -pipe -D_GNU_SOURCE -std=c++0x  -c -o .obj/demoC.o a.cpp
a.cpp:13:8: error: ‘Demo’ in class ‘std::string’ does not name a type

Removing :: after std::string in the inline method resolves this error


[Bug c++/49252] Problem with inline

2011-06-01 Thread redi at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=49252

Jonathan Wakely redi at gcc dot gnu.org changed:

   What|Removed |Added

 Status|UNCONFIRMED |RESOLVED
 Resolution||INVALID

--- Comment #1 from Jonathan Wakely redi at gcc dot gnu.org 2011-06-01 
10:20:00 UTC ---
This has absolutely nothing to do with 'inline'

Whitespace is not significant in C++ so that line is equivalent to a single
qualified name:

std :: string :: Demo :: SOne :: text

Which is invalid.

Since the :: in ::Demo is optional you can just leave it out to cause the
correct name to be found.


[Bug lto/49249] LTO streaming of builtins corrupts BLOCK lists

2011-06-01 Thread rguenth at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=49249

Richard Guenther rguenth at gcc dot gnu.org changed:

   What|Removed |Added

   Keywords||lto
 Status|UNCONFIRMED |NEW
   Last reconfirmed||2011.06.01 10:23:50
 CC||rguenth at gcc dot gnu.org
 Ever Confirmed|0   |1

--- Comment #1 from Richard Guenther rguenth at gcc dot gnu.org 2011-06-01 
10:23:50 UTC ---
Ugh.  I suppose we should just stream them regularly ...


[Bug tree-optimization/49243] attribute((returns_twice)) doesn't work

2011-06-01 Thread rguenth at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=49243

--- Comment #3 from Richard Guenther rguenth at gcc dot gnu.org 2011-06-01 
10:30:42 UTC ---
Looks good.  Can you test the patch and post it to gcc-patches?


[Bug rtl-optimization/48496] [4.7 Regression] 'asm' operand requires impossible reload in libffi/src/ia64/ffi.c

2011-06-01 Thread sch...@linux-m68k.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=48496

--- Comment #5 from Andreas Schwab sch...@linux-m68k.org 2011-06-01 10:57:40 
UTC ---
Bootstrap broken for 2 months now.


[Bug c++/49253] New: [4.7 Regression] Debug-mode forward_list broken

2011-06-01 Thread paolo.carlini at oracle dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=49253

   Summary: [4.7 Regression] Debug-mode forward_list broken
   Product: gcc
   Version: 4.7.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: c++
AssignedTo: unassig...@gcc.gnu.org
ReportedBy: paolo.carl...@oracle.com


Something changed either in the front-end or the middle end over the next
couple of days which broke the debug-mode forward_list, like this:

...debug/forward_list:650:25: error: request for member
‘__gnu_debug::_Safe_iterator_base::_M_prior’ in ‘__rhs_iterators-’, which is
of non-class type ‘__gnu_debug::_Safe_iterator_base*’

To reproduce just compile, with -std=c++0x -D_GLIBCXX_DEBUG:


#include forward_list


No recent changes to the library itself can possibly have caused this.

HJ, can you search the offending patch?


[Bug c++/49223] Internal compiler error when using OpenMP

2011-06-01 Thread jakub at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=49223

Jakub Jelinek jakub at gcc dot gnu.org changed:

   What|Removed |Added

 Status|ASSIGNED|RESOLVED
 Resolution||FIXED

--- Comment #4 from Jakub Jelinek jakub at gcc dot gnu.org 2011-06-01 
11:08:38 UTC ---
Fixed.


[Bug c++/49253] [4.7 Regression] Debug-mode forward_list broken

2011-06-01 Thread paolo.carlini at oracle dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=49253

Paolo Carlini paolo.carlini at oracle dot com changed:

   What|Removed |Added

 CC||hjl at gcc dot gnu.org

--- Comment #1 from Paolo Carlini paolo.carlini at oracle dot com 2011-06-01 
11:09:14 UTC ---
Asking HJ help.


[Bug c/48716] gcc OpenMP static variable declared in scope inside construct is predetermined shared

2011-06-01 Thread jakub at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=48716

Jakub Jelinek jakub at gcc dot gnu.org changed:

   What|Removed |Added

 Status|UNCONFIRMED |RESOLVED
 Resolution||FIXED

--- Comment #3 from Jakub Jelinek jakub at gcc dot gnu.org 2011-06-01 
11:09:19 UTC ---
Fixed.


[Bug c++/49253] [4.7 Regression] Debug-mode forward_list broken

2011-06-01 Thread paolo.carlini at oracle dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=49253

Paolo Carlini paolo.carlini at oracle dot com changed:

   What|Removed |Added

 CC||jason at gcc dot gnu.org

--- Comment #2 from Paolo Carlini paolo.carlini at oracle dot com 2011-06-01 
11:22:57 UTC ---
Tried Rev 174498 and was Ok. Could be 174499.


[Bug objc++/49221] [4.7 Regression] Several ICEs in the obj-c++ test suite after revision 174307

2011-06-01 Thread froydnj at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=49221

Nathan Froyd froydnj at gcc dot gnu.org changed:

   What|Removed |Added

 CC||jason at gcc dot gnu.org

--- Comment #6 from Nathan Froyd froydnj at gcc dot gnu.org 2011-06-01 
12:01:06 UTC ---
I'm not sure what to do in this case; maybe Jason has an opinion.  Jason,
should we be push_stmt'ing somewhere in the objc code (objc_eh_runtime_type,
perhaps)?


[Bug c++/49254] New: cannot declare member template as friend of class template

2011-06-01 Thread redi at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=49254

   Summary: cannot declare member template as friend of class
template
   Product: gcc
   Version: 4.7.0
Status: UNCONFIRMED
  Keywords: rejects-valid
  Severity: minor
  Priority: P3
 Component: c++
AssignedTo: unassig...@gcc.gnu.org
ReportedBy: r...@gcc.gnu.org


templatetypename T
  class outer
  {
templatetypename U
  struct inner
  { };

templatetypename U
  friend class outer;

templatetypename U
  templatetypename
friend class outerU::inner;

  public:

outer() { }

  };

template class outervoid;
template class outervoid::innerint;


Gives this error:

priv2.cc: In instantiation of 'outervoid':
priv2.cc:21:16:   instantiated from here
priv2.cc:5:14: error: 'templateclass T templateclass U struct
outerT::inner' is private
priv2.cc:5:14: error: within this context

I don't think the friend declaration is actually needed to allow innerU to
access outerT, but I think it is valid and should be accepted.  Comeau and
Clang accept it.


[Bug c++/49253] [4.7 Regression] Debug-mode forward_list broken

2011-06-01 Thread rguenth at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=49253

Richard Guenther rguenth at gcc dot gnu.org changed:

   What|Removed |Added

   Target Milestone|--- |4.7.0


[Bug debug/49250] [4.7 Regression] ICE in set_slot_part, at var-tracking.c:6793

2011-06-01 Thread rguenth at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=49250

Richard Guenther rguenth at gcc dot gnu.org changed:

   What|Removed |Added

   Target Milestone|--- |4.7.0


[Bug libfortran/48906] Wrong rounding results with -m32

2011-06-01 Thread jvdelisle at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=48906

--- Comment #21 from Jerry DeLisle jvdelisle at gcc dot gnu.org 2011-06-01 
12:26:28 UTC ---
Regarding comment #18, the test case passes regardless 0f the -std=legacy
option specified at the beginning of the source file. I am questioning why that
option is ignored in current gfortran releases. Somewhere along the way,
something changed.  I am also asking, do we want the test case to pass under
-std=legacy only, or pass all the time.

Regarding, not incrementing the exponent, I missed that and will update on next
iteration.  thanks for reviews.


[Bug fortran/49255] New: -fcheck=pointer diagnosts too much: Passing NULL pointer to OPTIONAL argument

2011-06-01 Thread burnus at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=49255

   Summary: -fcheck=pointer diagnosts too much: Passing NULL
pointer to OPTIONAL argument
   Product: gcc
   Version: 4.7.0
Status: UNCONFIRMED
  Keywords: diagnostic, patch, rejects-valid
  Severity: normal
  Priority: P3
 Component: fortran
AssignedTo: unassig...@gcc.gnu.org
ReportedBy: bur...@gcc.gnu.org


Valid F2008 test case:

integer,pointer :: ptr = null()
call foo(ptr)
contains
  subroutine foo (x)
integer, optional :: x
print *, present (x)
  end subroutine foo
end


But with -fcheck=pointer, gfortran prints at run time:

At line 2 of file test.f90
Fortran runtime error: Pointer actual argument 'ptr' is not associated


--- a/gcc/fortran/trans-expr.c
+++ b/gcc/fortran/trans-expr.c
@@ -3269,13 +3269,16 @@ gfc_conv_procedure_call (gfc_se * se, gfc_symbol * sym,
  else
goto end_pointer_check;

-  if (attr.optional)
+  if (attr.optional
+  ((gfc_option.allow_std  GFC_STD_F2008) == 0
+ || attr.proc_pointer))
{
   /* If the actual argument is an optional pointer/allocatable and
 the formal argument takes an nonpointer optional value,
 it is invalid to pass a non-present argument on, even
 though there is no technical reason for this in gfortran.
-See Fortran 2003, Section 12.4.1.6 item (7)+(8).  */
+See Fortran 2003, Section 12.4.1.6 item (7)+(8).
+In Fortran 2008 that's allowed; cf. 12.5.2.12.  */
  tree present, null_ptr, type;

  if (attr.allocatable


[Bug lto/49256] New: [4.7 Regression] 403.gcc in SPEC CPU 2006 went to an infinite loop

2011-06-01 Thread hjl.tools at gmail dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=49256

   Summary: [4.7 Regression] 403.gcc in SPEC CPU 2006 went to an
infinite loop
   Product: gcc
   Version: 4.7.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: lto
AssignedTo: unassig...@gcc.gnu.org
ReportedBy: hjl.to...@gmail.com


On Linux/x86-64, revision 173870 compiles 403.gcc in SPEC CPU 2006 into
an infinite loop with

-O3 -funroll-loops -ffast-math -fwhole-program -flto=jobserver
-fuse-linker-plugin


[Bug target/49180] pr45070.c fails for -Os -mthumb

2011-06-01 Thread ibolton at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=49180

Ian Bolton ibolton at gcc dot gnu.org changed:

   What|Removed |Added

 Status|UNCONFIRMED |NEW
   Last reconfirmed||2011.06.01 13:32:49
 CC||ibolton at gcc dot gnu.org
 Ever Confirmed|0   |1

--- Comment #2 from Ian Bolton ibolton at gcc dot gnu.org 2011-06-01 13:32:49 
UTC ---
I have managed to reproduce this with latest trunk.

Hopefully, the copyright assignment will come through soon and Mikael can post
his patch.


[Bug lto/49256] [4.7 Regression] 403.gcc in SPEC CPU 2006 went to an infinite loop

2011-06-01 Thread rguenth at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=49256

Richard Guenther rguenth at gcc dot gnu.org changed:

   What|Removed |Added

   Target Milestone|--- |4.7.0

--- Comment #1 from Richard Guenther rguenth at gcc dot gnu.org 2011-06-01 
13:37:47 UTC ---
Works w/o -fwhole-program and GNU ld for me.


[Bug c++/49253] [4.7 Regression] Debug-mode forward_list broken

2011-06-01 Thread hjl.tools at gmail dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=49253

H.J. Lu hjl.tools at gmail dot com changed:

   What|Removed |Added

 Status|UNCONFIRMED |NEW
   Last reconfirmed||2011.06.01 13:46:19
 CC|hjl at gcc dot gnu.org  |hjl.tools at gmail dot com
 Ever Confirmed|0   |1

--- Comment #3 from H.J. Lu hjl.tools at gmail dot com 2011-06-01 13:46:19 
UTC ---
It is caused by revision 174499:

http://gcc.gnu.org/ml/gcc-cvs/2011-05/msg01280.html


[Bug debug/48354] internal compiler error: in splice_child_die, at dwarf2out.c:8064

2011-06-01 Thread rguenth at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=48354

Richard Guenther rguenth at gcc dot gnu.org changed:

   What|Removed |Added

  Attachment #24395|0   |1
is obsolete||

--- Comment #13 from Richard Guenther rguenth at gcc dot gnu.org 2011-06-01 
13:49:47 UTC ---
Created attachment 24407
  -- http://gcc.gnu.org/bugzilla/attachment.cgi?id=24407
another update

Try this instead.


[Bug c/49257] New: -mfpmath=sse generates x87 instructions on 32 bits OS

2011-06-01 Thread olivier_maury at mentor dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=49257

   Summary: -mfpmath=sse generates x87 instructions on 32 bits OS
   Product: gcc
   Version: 4.5.1
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: c
AssignedTo: unassig...@gcc.gnu.org
ReportedBy: olivier_ma...@mentor.com


Created attachment 24408
  -- http://gcc.gnu.org/bugzilla/attachment.cgi?id=24408
simple reproducer

Hi,

Please find attached a simple C program that shows the issue.
I compile it that way:

gcc -O0 simple.c -mfpmath=sse -msse3 -o ok.exe
./ok.exe returns the correct value

gcc -O0 simple.c -mfpmath=sse -msse3 -DRETURN_NAN -o nan.exe
./nan.exe returns a NAN

Both exe use some gcc intrinsic that change the FP stack into mmx registers. It
is expected that if I call a libc function (like printf) without restoring the
stack to its original state (using emms) then I'll have a wrong behavior. But,
here, because of the following assembly code:
.L4:
fildq   72(%esp)
cmpl$0, 76(%esp)
jns .L3
fldt.LC2
faddp   %st, %st(1)
.L3:
fstpl   24(%esp)
movsd   24(%esp), %xmm0
mulsd   56(%esp), %xmm0
movsd   %xmm0, 40(%esp)
movl68(%esp), %eax
movl4(%eax), %edx
movl(%eax), %eax
movl52(%esp), %ecx
movl%eax, 16(%esp)
movl%edx, 20(%esp)
movq16(%esp), %mm0
movntq  %mm0, (%ecx)
addl$1, 72(%esp)
adcl$0, 76(%esp)
.L2:
cmpl$0, 76(%esp)
jb  .L4
cmpl$0, 76(%esp)
ja  .L6
cmpl$9, 72(%esp)
jbe .L4


I've got a NAN why I shouldn't !?

The instruction that generates that x87 code is the line
(double)i * coeff; where i is an unsigned long long and coeff is a double. 
It works well if for instance 'i' is a long/int/unsigned int.

Maybe that behavior is expected ?

BR

Olivier


[Bug target/49257] -mfpmath=sse generates x87 instructions on 32 bits OS

2011-06-01 Thread rguenth at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=49257

Richard Guenther rguenth at gcc dot gnu.org changed:

   What|Removed |Added

 Target||i?86-*-*
 Status|UNCONFIRMED |NEW
   Keywords||wrong-code
   Last reconfirmed||2011.06.01 14:25:20
  Component|c   |target
 Ever Confirmed|0   |1
  Known to fail||3.3.3, 4.5.4, 4.7.0

--- Comment #1 from Richard Guenther rguenth at gcc dot gnu.org 2011-06-01 
14:25:20 UTC ---
Confirmed.


[Bug middle-end/48600] [4.6/4.7 Regression] ICE when using cold attribute

2011-06-01 Thread matt at use dot net
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=48600

--- Comment #5 from Matt Hargett matt at use dot net 2011-06-01 14:36:17 UTC 
---
any chance this can be fixed for 4.6.1? this is a critical regression for us.


[Bug other/47733] psignal (int, const? char*) in libiberty/strsignal.h

2011-06-01 Thread jan.sm...@alcatel-lucent.com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=47733

Jan Smets jan.sm...@alcatel-lucent.com changed:

   What|Removed |Added

 CC||jan.sm...@alcatel-lucent.co
   ||m

--- Comment #1 from Jan Smets jan.sm...@alcatel-lucent.com 2011-06-01 
15:05:34 UTC ---
I've seen this on 4.6.0 too.

Solutions works.


[Bug java/49258] New: -ffunction-sections and --gc-sectinons have no effect at gcj

2011-06-01 Thread licheng.1212 at gmail dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=49258

   Summary: -ffunction-sections and --gc-sectinons have no effect
at gcj
   Product: gcc
   Version: 4.4.2
Status: UNCONFIRMED
  Severity: major
  Priority: P3
 Component: java
AssignedTo: unassig...@gcc.gnu.org
ReportedBy: licheng.1...@gmail.com


there is many dead code at java source,and the gcj can't remove it.
I hava been add the function-sections and gc-sections to the compiler flags.


[Bug c++/49259] New: template/incomplete6.C ICE in build_target_expr

2011-06-01 Thread janis at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=49259

   Summary: template/incomplete6.C ICE in build_target_expr
   Product: gcc
   Version: 4.7.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: c++
AssignedTo: unassig...@gcc.gnu.org
ReportedBy: ja...@gcc.gnu.org


Test g++.dg/template/incomplete6.C fails for arm-none-linux-gnueabi and
arm-none-eabi:

/scratch/janisjo/arm-eabi-fsf/src/gcc-mainline/gcc/testsuite/g++.dg/template/incomplete6.C:
In member function 'Intsizeof (declvalF()(T())) SF, T::f(A) [with A =
int, F = int (*)(...), T = templint]':
/scratch/janisjo/arm-eabi-fsf/src/gcc-mainline/gcc/testsuite/g++.dg/template/incomplete6.C:21:29:
  instantiated from here
/scratch/janisjo/arm-eabi-fsf/src/gcc-mainline/gcc/testsuite/g++.dg/template/incomplete6.C:16:9:
internal compiler error: in build_target_expr, at cp/tree.c:296
Please submit a full bug report,
with preprocessed source if appropriate.
See http://gcc.gnu.org/bugs.html for instructions

The failure starts with this patch:

r174101 | jason | 2011-05-24 03:49:03 + (Tue, 24 May 2011)

PR c++/49102
* call.c (convert_arg_to_ellipsis): Call force_rvalue.


Re: 3-yr-old infloop in dwarf2out.c

2011-06-01 Thread Eric Botcazou
 coverity pointed out the infinite loop below.
 I guess it is unreachable or at least hard to reach,
 or it would have been reported/fixed before now:

Would you mind opening a PR with bugzilla?

-- 
Eric Botcazou


[Bug java/49258] -ffunction-sections and --gc-sectinons have no effect at gcj

2011-06-01 Thread licheng.1212 at gmail dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=49258

licheng.1...@gmail.com licheng.1212 at gmail dot com changed:

   What|Removed |Added

   Severity|major   |blocker


[Bug java/20215] gcj does not accept classes with same name fields

2011-06-01 Thread licheng.1212 at gmail dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=20215

--- Comment #11 from licheng.1212 at gmail dot com licheng.1212 at gmail dot 
com 2011-06-01 16:12:04 UTC ---
is anybody here???


[Bug debug/49250] [4.7 Regression] ICE in set_slot_part, at var-tracking.c:6793

2011-06-01 Thread ro at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=49250

Rainer Orth ro at gcc dot gnu.org changed:

   What|Removed |Added

 Target|hppa-unknown-linux-gnu  |hppa-unknown-linux-gnu,
   ||sparc-sun-solaris2.*
 CC||ebotcazou at gcc dot
   ||gnu.org, ro at gcc dot
   ||gnu.org
   Host|hppa-unknown-linux-gnu  |hppa-unknown-linux-gnu,
   ||sparc-sun-solaris2.*
  Build|hppa-unknown-linux-gnu  |hppa-unknown-linux-gnu,
   ||sparc-sun-solaris2.*

--- Comment #2 from Rainer Orth ro at gcc dot gnu.org 2011-06-01 16:45:43 UTC 
---
I see the same error on Solaris/SPARC:

$ cc1plus -fpreprocessed concept-inst.ii -mptr64 -mstack-bias -mno-v8plus
-mcpu=v9 -quiet -dumpbase concept-inst.cc -m64 -m64 -auxbase-strip
.libs/concept-inst.o -g -O2 -Wall -Wextra -Wwrite-strings -Wcast-qual -version
-fdiagnostics-show-location=once -ffunction-sections -fdata-sections
-fimplicit-templates -fPIC 
GNU C++ (GCC) version 4.7.0 20110601 (experimental) [trunk revision 174532]
(sparc-sun-solaris2.11)
compiled by GNU C version 4.4.2, GMP version 4.3.2, MPFR version
2.4.2-p3, MPC version 0.8.1
GGC heuristics: --param ggc-min-expand=30 --param ggc-min-heapsize=4096
GNU C++ (GCC) version 4.7.0 20110601 (experimental) [trunk revision 174532]
(sparc-sun-solaris2.11)
compiled by GNU C version 4.4.2, GMP version 4.3.2, MPFR version
2.4.2-p3, MPC version 0.8.1
GGC heuristics: --param ggc-min-expand=30 --param ggc-min-heapsize=4096
Compiler executable checksum: 048b49f675aa3693a0af4b87220c2538
In file included from
/var/gcc/regression/trunk/11-gcc/build/sparc-sun-solaris2.11/sparcv9/libstdc++-v3/include/bits/concept_check.h:55:0,
 from
/vol/gcc/src/hg/trunk/local/libstdc++-v3/src/concept-inst.cc:32:
/var/gcc/regression/trunk/11-gcc/build/sparc-sun-solaris2.11/sparcv9/libstdc++-v3/include/bits/boost_concept_check.h:
In function 'void __gnu_cxx::__aux_require_boolean_expr(const _Tp) [with _Tp =
bool]':
/var/gcc/regression/trunk/11-gcc/build/sparc-sun-solaris2.11/sparcv9/libstdc++-v3/include/bits/boost_concept_check.h:238:3:
internal compiler error: in set_slot_part, at var-tracking.c:6793


[Bug debug/49250] [4.7 Regression] ICE in set_slot_part, at var-tracking.c:6793

2011-06-01 Thread ro at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=49250

--- Comment #3 from Rainer Orth ro at gcc dot gnu.org 2011-06-01 16:46:38 UTC 
---
Created attachment 24409
  -- http://gcc.gnu.org/bugzilla/attachment.cgi?id=24409
preprocessed input


[Bug middle-end/31249] pseudo-optimization with sincos/cexpi

2011-06-01 Thread wschmidt at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=31249

William J. Schmidt wschmidt at gcc dot gnu.org changed:

   What|Removed |Added

 CC||wschmidt at gcc dot gnu.org

--- Comment #22 from William J. Schmidt wschmidt at gcc dot gnu.org 
2011-06-01 16:59:15 UTC ---
It seems we should give targets like darwin a permanent workaround for this
issue.  Since config can't correctly determine in all cases whether an
implementation has a fast enough sincos/cexp, the few targets where the
current flags don't work should be able to disable the transformation.

I can create a cse-sincos option flag, set on by default for most platforms. 
The darwin platform maintainer (and others, if necessary) could add
-fno-cse-sincos to the platform defaults.

Any concerns with this approach?


[Bug debug/49250] [4.7 Regression] ICE in set_slot_part, at var-tracking.c:6793

2011-06-01 Thread jakub at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=49250

Jakub Jelinek jakub at gcc dot gnu.org changed:

   What|Removed |Added

 Status|WAITING |ASSIGNED
 AssignedTo|unassigned at gcc dot   |jakub at gcc dot gnu.org
   |gnu.org |

--- Comment #4 from Jakub Jelinek jakub at gcc dot gnu.org 2011-06-01 
17:03:50 UTC ---
Created attachment 24410
  -- http://gcc.gnu.org/bugzilla/attachment.cgi?id=24410
gcc47-pr49250.patch

Untested fix.


[Bug debug/49250] [4.7 Regression] ICE in set_slot_part, at var-tracking.c:6793

2011-06-01 Thread ro at CeBiTec dot Uni-Bielefeld.DE
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=49250

--- Comment #5 from ro at CeBiTec dot Uni-Bielefeld.DE ro at CeBiTec dot 
Uni-Bielefeld.DE 2011-06-01 17:11:49 UTC ---
 --- Comment #4 from Jakub Jelinek jakub at gcc dot gnu.org 2011-06-01 
 17:03:50 UTC ---
 Created attachment 24410
   -- http://gcc.gnu.org/bugzilla/attachment.cgi?id=24410
 gcc47-pr49250.patch

 Untested fix.

The patch allowed the 64-bit libstdc++ to build on
sparc-sun-solaris2.11.

Thanks.
Rainer


[Bug c++/49253] [4.7 Regression] Debug-mode forward_list broken

2011-06-01 Thread jason at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=49253

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 |


[Bug c++/49260] New: cpp0x/lambda/lambda-eh2.C fails execution

2011-06-01 Thread janis at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=49260

   Summary: cpp0x/lambda/lambda-eh2.C fails execution
   Product: gcc
   Version: 4.7.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: c++
AssignedTo: unassig...@gcc.gnu.org
ReportedBy: ja...@gcc.gnu.org


Test g++.dg/cpp0x/lambda/lambda-eh2.C fails execution on several targets as
shown by archived test results:

  alpha-dec-osf5.1b
  arm-none-linux-gnueabi
  hppa2.0w-hp-hpux11.11
  i686-apple-darwin9
  powerpc-apple-darwin9.8.0
  powerpc64-unknown-linux-gnu
  sh4-unknown-linux-gnu
  sparc-sun-solaris2.8, 2.9, 2.10 (but not 2.11)

It also fails for arm-none-eabi, although the build has failed lately.

Testing on arm-none-linux-gnueabi shows that the test has failed on that target
since it was added on 2011-05-23 for r174076, to go with this fix:

  2011-05-23  Jason Merrill  ja...@redhat.com

PR c++/47263
* decl.c (use_eh_spec_block): Do use an EH spec block for a
lambda op().


[Bug c++/49253] [4.7 Regression] Debug-mode forward_list broken

2011-06-01 Thread jason at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=49253

--- Comment #4 from Jason Merrill jason at gcc dot gnu.org 2011-06-01 
17:31:08 UTC ---
It seems unfortunate that make check-libstdc++-v3 doesn't catch obvious
breakage like this; at the least we could make sure that stdc++.h compiles in
debug/parallel modes?


[Bug c++/49260] cpp0x/lambda/lambda-eh2.C fails execution

2011-06-01 Thread janis at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=49260

--- Comment #1 from Janis Johnson janis at gcc dot gnu.org 2011-06-01 
17:31:24 UTC ---
Output when the test runs on QEMU for arm-none-linux-gnueabi:

terminate called after throwing an instance of 'int'

*** EXIT code 4242
FAIL: g++.dg/cpp0x/lambda/lambda-eh2.C execution test


[Bug tree-optimization/39604] [4.3/4.4/4.5 Regression] tree-ssa-sink breaks stack layout

2011-06-01 Thread sandra at codesourcery dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39604

--- Comment #23 from Sandra Loosemore sandra at codesourcery dot com 
2011-06-01 17:34:56 UTC ---
Draft patch that addresses this bug here:

http://gcc.gnu.org/ml/gcc-patches/2011-05/msg02029.html


[Bug target/49257] -mfpmath=sse generates x87 instructions on 32 bits OS

2011-06-01 Thread ubizjak at gmail dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=49257

--- Comment #2 from Uros Bizjak ubizjak at gmail dot com 2011-06-01 17:57:44 
UTC ---
The problem is in floatunsdidf2 expander that is currently disabled on x86_32
due to TARGET_KEEPS_VECTOR_ALIGNED_STACK. Without this expander, gcc generates
unsigned DImode-XFmode conversion using floatdixf pattern with XFmode x87
registers.

Since latest x86_32 ABI linux ABI mandates 16 byte alignment, we can perhaps:

Index: config/i386/linux.h
===
--- config/i386/linux.h(revision 174535)
+++ config/i386/linux.h(working copy)
@@ -24,3 +24,6 @@
 #define GLIBC_DYNAMIC_LINKER /lib/ld-linux.so.2

 #define MD_UNWIND_SUPPORT config/i386/linux-unwind.h
+
+#undef TARGET_KEEPS_VECTOR_ALIGNED_STACK
+#define TARGET_KEEPS_VECTOR_ALIGNED_STACK 1


[Bug c++/44175] [C++0x] decltype sometimes cannot recurse

2011-06-01 Thread jason at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44175

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 |


[Bug c++/49253] [4.7 Regression] Debug-mode forward_list broken

2011-06-01 Thread jason at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=49253

--- Comment #5 from Jason Merrill jason at gcc dot gnu.org 2011-06-01 
18:07:06 UTC ---
Author: jason
Date: Wed Jun  1 18:07:03 2011
New Revision: 174539

URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=174539
Log:
PR c++/49253
* typeck2.c (build_x_arrow): Don't use build_min_nt.

Modified:
trunk/gcc/cp/ChangeLog
trunk/gcc/cp/typeck2.c


[Bug target/49257] -mfpmath=sse generates x87 instructions on 32 bits OS

2011-06-01 Thread ubizjak at gmail dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=49257

--- Comment #3 from Uros Bizjak ubizjak at gmail dot com 2011-06-01 18:27:49 
UTC ---
Actually, there is no DImode SSE conversion instruction for 32bit targets, so
implicit conversion generates fildq insn that uses x87 registers even with
unsigned DImode operands.


[Bug c++/49253] [4.7 Regression] Debug-mode forward_list broken

2011-06-01 Thread paolo.carlini at oracle dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=49253

--- Comment #6 from Paolo Carlini paolo.carlini at oracle dot com 2011-06-01 
18:39:43 UTC ---
Yes. Running by default the entire testsuite in debug-mode too is not an
option, would take too much time. Honestly, however, in my experience, isn't
*that* common that a front-end issue shows up *only* in debug-mode and, anyway,
the library developers proper run check-debug too rather  often and are willing
to file PRs ;) Thanks for the quick fix!


[Bug middle-end/31249] pseudo-optimization with sincos/cexpi

2011-06-01 Thread rguenther at suse dot de
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=31249

--- Comment #23 from rguenther at suse dot de rguenther at suse dot de 
2011-06-01 19:02:03 UTC ---
On Wed, 1 Jun 2011, wschmidt at gcc dot gnu.org wrote:

 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=31249
 
 William J. Schmidt wschmidt at gcc dot gnu.org changed:
 
What|Removed |Added
 
  CC||wschmidt at gcc dot gnu.org
 
 --- Comment #22 from William J. Schmidt wschmidt at gcc dot gnu.org 
 2011-06-01 16:59:15 UTC ---
 It seems we should give targets like darwin a permanent workaround for this
 issue.  Since config can't correctly determine in all cases whether an
 implementation has a fast enough sincos/cexp, the few targets where the
 current flags don't work should be able to disable the transformation.
 
 I can create a cse-sincos option flag, set on by default for most platforms. 
 The darwin platform maintainer (and others, if necessary) could add
 -fno-cse-sincos to the platform defaults.
 
 Any concerns with this approach?

The concern is that we might want to vectorize sincos and that might
have a fast implementation.  I think rather than a flag disabling
sincos a target with slow sincos should expand that to calling
sin and cos (they can define an optab for sincos for example).

That would also make user code that uses sincos fast.


[Bug c++/49181] [C++0x] Error reporting routines re-entered

2011-06-01 Thread redi at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=49181

--- Comment #2 from Jonathan Wakely redi at gcc dot gnu.org 2011-06-01 
19:08:45 UTC ---
Another Error reporting routines re-entered ICE, I think this code worked a
few days ago, using the 4.7-20110528 snapshot, but fails with trunk

#include memory

namespace std
{


  templatetypename _OuterAlloc, typename... _InnerAllocs
class scoped_allocator_adaptor
: public _OuterAlloc
{
  typedef allocator_traits_OuterAlloc __traits;


  templatetypename _Outer, typename... _Inner
friend class scoped_allocator_adaptor;

public:
  typedef _OuterAlloc outer_allocator_type;

  typedef typename __traits::size_type size_type;
  typedef typename __traits::pointer pointer;
  typedef typename __traits::const_void_pointer const_void_pointer;

  outer_allocator_type outer_allocator() noexcept;

  pointer allocate(size_type __n, const_void_pointer __hint)
  { return __traits::allocate(outer_allocator(), __n, __hint); }



};

}



typedef std::allocatorint salloc;

namespace std
{
template class scoped_allocator_adaptorsalloc;
}



In file included from
/home/redi/gcc/4.x/lib/gcc/x86_64-unknown-linux-gnu/4.7.0/../../../../include/c++/4.7.0/memory:65:0,
 from ice.cc:1:

Internal compiler error: Error reporting routines re-entered.
Please submit a full bug report,
with preprocessed source if appropriate.
See http://gcc.gnu.org/bugs.html for instructions.


[Bug middle-end/49261] New: [4.7 Regression] FAIL: gcc.dg/tree-ssa/forwprop-9.c

2011-06-01 Thread hjl.tools at gmail dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=49261

   Summary: [4.7 Regression] FAIL: gcc.dg/tree-ssa/forwprop-9.c
   Product: gcc
   Version: 4.7.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: middle-end
AssignedTo: unassig...@gcc.gnu.org
ReportedBy: hjl.to...@gmail.com


On Linux/ia32, revision 174538 gave

FAIL: gcc.dg/tree-ssa/forwprop-9.c scan-tree-dump-times optimized  = 1 2

Revision 174535 is OK.


[Bug c/49262] New: 3-yr-old infinite loop in dwarf2out.c

2011-06-01 Thread jim at meyering dot net
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=49262

   Summary: 3-yr-old infinite loop in dwarf2out.c
   Product: gcc
   Version: 4.7.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: c
AssignedTo: unassig...@gcc.gnu.org
ReportedBy: j...@meyering.net


coverity pointed out the infinite loop below, in dwarf2out.c.
I guess it is unreachable or at least hard to reach,
or it would have been reported/fixed before now:

17605  if (index  TREE_CODE (index) == RANGE_EXPR)
17606{
17607  int count = tree_low_cst (TREE_OPERAND (index, 1), 0)
17608  - tree_low_cst (TREE_OPERAND (index, 0), 0);

Event loop_top: Top of the loop.
Event loop_condition: 0  count must remain true for the loop to
continue.
Also see events: [loop_bottom]

17609  while (count  0)
17610{
17611  if (val)
17612memcpy (array + curpos, array + pos, fieldsize);

Event loop_bottom: Bottom of the loop.
Also see events: [loop_top][loop_condition]

17613  curpos += fieldsize;
17614}
17615}


Re: 3-yr-old infloop in dwarf2out.c

2011-06-01 Thread Jim Meyering
Eric Botcazou wrote:
 coverity pointed out the infinite loop below.
 I guess it is unreachable or at least hard to reach,
 or it would have been reported/fixed before now:

 Would you mind opening a PR with bugzilla?

Not at all:

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


[Bug middle-end/49261] [4.7 Regression] FAIL: gcc.dg/tree-ssa/forwprop-9.c

2011-06-01 Thread rguenth at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=49261

Richard Guenther rguenth at gcc dot gnu.org changed:

   What|Removed |Added

   Target Milestone|--- |4.7.0


[Bug target/48808] ICE in spill_failure, at reload1.c:2113

2011-06-01 Thread rsandifo at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=48808

--- Comment #3 from rsandifo at gcc dot gnu.org rsandifo at gcc dot gnu.org 
2011-06-01 19:47:22 UTC ---
Author: rsandifo
Date: Wed Jun  1 19:47:19 2011
New Revision: 174540

URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=174540
Log:
gcc/
PR rtl-optimization/48830
PR rtl-optimization/48808
PR rtl-optimization/48792
* reload.c (push_reload): Check contains_reg_of_mode.
* reload1.c (strip_paradoxical_subreg): New function.
(gen_reload_chain_without_interm_reg_p): Use it to handle
paradoxical subregs.
(emit_output_reload_insns, gen_reload): Likewise.

gcc/testsuite/
2011-06-01  Eric Botcazou  ebotca...@adacore.com
Hans-Peter Nilsson  h...@axis.com

PR rtl-optimization/48830
* gcc.target/sparc/ultrasp12.c: New test.

Added:
trunk/gcc/testsuite/gcc.target/sparc/ultrasp12.c
Modified:
trunk/gcc/ChangeLog
trunk/gcc/reload.c
trunk/gcc/reload1.c
trunk/gcc/testsuite/ChangeLog


[Bug rtl-optimization/48830] [4.4/4.5/4.6/4.7 Regression] unrecognized insn: storing invalid upper fp reg in SImode to stack

2011-06-01 Thread rsandifo at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=48830

--- Comment #13 from rsandifo at gcc dot gnu.org rsandifo at gcc dot gnu.org 
2011-06-01 19:47:22 UTC ---
Author: rsandifo
Date: Wed Jun  1 19:47:19 2011
New Revision: 174540

URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=174540
Log:
gcc/
PR rtl-optimization/48830
PR rtl-optimization/48808
PR rtl-optimization/48792
* reload.c (push_reload): Check contains_reg_of_mode.
* reload1.c (strip_paradoxical_subreg): New function.
(gen_reload_chain_without_interm_reg_p): Use it to handle
paradoxical subregs.
(emit_output_reload_insns, gen_reload): Likewise.

gcc/testsuite/
2011-06-01  Eric Botcazou  ebotca...@adacore.com
Hans-Peter Nilsson  h...@axis.com

PR rtl-optimization/48830
* gcc.target/sparc/ultrasp12.c: New test.

Added:
trunk/gcc/testsuite/gcc.target/sparc/ultrasp12.c
Modified:
trunk/gcc/ChangeLog
trunk/gcc/reload.c
trunk/gcc/reload1.c
trunk/gcc/testsuite/ChangeLog


[Bug target/48792] ICE in failed_reload, at reload1.c:6000

2011-06-01 Thread rsandifo at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=48792

--- Comment #3 from rsandifo at gcc dot gnu.org rsandifo at gcc dot gnu.org 
2011-06-01 19:47:22 UTC ---
Author: rsandifo
Date: Wed Jun  1 19:47:19 2011
New Revision: 174540

URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=174540
Log:
gcc/
PR rtl-optimization/48830
PR rtl-optimization/48808
PR rtl-optimization/48792
* reload.c (push_reload): Check contains_reg_of_mode.
* reload1.c (strip_paradoxical_subreg): New function.
(gen_reload_chain_without_interm_reg_p): Use it to handle
paradoxical subregs.
(emit_output_reload_insns, gen_reload): Likewise.

gcc/testsuite/
2011-06-01  Eric Botcazou  ebotca...@adacore.com
Hans-Peter Nilsson  h...@axis.com

PR rtl-optimization/48830
* gcc.target/sparc/ultrasp12.c: New test.

Added:
trunk/gcc/testsuite/gcc.target/sparc/ultrasp12.c
Modified:
trunk/gcc/ChangeLog
trunk/gcc/reload.c
trunk/gcc/reload1.c
trunk/gcc/testsuite/ChangeLog


[Bug target/45074] GCC Segmentation fault - negating global register variables

2011-06-01 Thread rsandifo at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=45074

--- Comment #7 from rsandifo at gcc dot gnu.org rsandifo at gcc dot gnu.org 
2011-06-01 19:49:55 UTC ---
Author: rsandifo
Date: Wed Jun  1 19:49:53 2011
New Revision: 174541

URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=174541
Log:
gcc/
PR target/45074
* optabs.h (valid_multiword_target_p): Declare.
* expmed.c (extract_bit_field_1): Check valid_multiword_target_p when
doing multi-word operations.
* optabs.c (expand_binop): Likewise.
(expand_doubleword_bswap): Likewise.
(expand_absneg_bit): Likewise.
(expand_unop): Likewise.
(expand_copysign_bit): Likewise.
(multiword_target_p): New function.

gcc/testsuite/
PR target/45074
* gcc.target/mips/pr45074.c: New test.

Added:
trunk/gcc/testsuite/gcc.target/mips/pr45074.c
Modified:
trunk/gcc/ChangeLog
trunk/gcc/expmed.c
trunk/gcc/optabs.c
trunk/gcc/optabs.h
trunk/gcc/testsuite/ChangeLog


[Bug c++/49134] ICE in g++.dg/cpp0x/constexpr tests for arm

2011-06-01 Thread ramana at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=49134

Ramana Radhakrishnan ramana at gcc dot gnu.org changed:

   What|Removed |Added

 CC||jason at gcc dot gnu.org,
   ||ramana at gcc dot gnu.org

--- Comment #1 from Ramana Radhakrishnan ramana at gcc dot gnu.org 2011-06-01 
19:53:02 UTC ---
Adding Jason to the CC.

Ramana


[Bug target/45074] GCC Segmentation fault - negating global register variables

2011-06-01 Thread rsandifo at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=45074

rsand...@gcc.gnu.org rsandifo at gcc dot gnu.org changed:

   What|Removed |Added

 CC||rsandifo at gcc dot gnu.org

--- Comment #8 from rsandifo at gcc dot gnu.org rsandifo at gcc dot gnu.org 
2011-06-01 19:54:55 UTC ---
Fixed on trunk.  The underlying bug has been around for a long time,
so I don't think the fix is appropriate for release branches.


[Bug rtl-optimization/49157] Unnecessary stack save/restore code generated for a leaf function (arm-elf-gcc)

2011-06-01 Thread ramana at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=49157

Ramana Radhakrishnan ramana at gcc dot gnu.org changed:

   What|Removed |Added

 Status|UNCONFIRMED |NEW
   Last reconfirmed||2011.06.01 19:56:05
 CC||ramana at gcc dot gnu.org
 Ever Confirmed|0   |1

--- Comment #1 from Ramana Radhakrishnan ramana at gcc dot gnu.org 2011-06-01 
19:56:05 UTC ---
With an arm-linux-gnueabi toolchain I see the following code - it's pointless
creating space on the stack in this case. 

foo:
@ args = 0, pretend = 0, frame = 8
@ frame_needed = 0, uses_anonymous_args = 0
@ link register save eliminated.
addr0, r0, r0, lsr #16
subsp, sp, #8
sxthr0, r0
addsp, sp, #8
bxlr


Possibly related to PR36409.

Ramana


[Bug c++/49134] ICE in g++.dg/cpp0x/constexpr tests for arm

2011-06-01 Thread ramana at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=49134

Ramana Radhakrishnan ramana at gcc dot gnu.org changed:

   What|Removed |Added

   Keywords||ice-on-valid-code
 Status|UNCONFIRMED |NEW
   Last reconfirmed||2011.06.01 19:58:11
 Ever Confirmed|0   |1


[Bug target/49263] New: SH Target: underutilized TST #imm, R0 instruction

2011-06-01 Thread oleg.e...@t-online.de
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=49263

   Summary: SH Target: underutilized TST #imm, R0 instruction
   Product: gcc
   Version: 4.6.1
Status: UNCONFIRMED
  Severity: enhancement
  Priority: P3
 Component: target
AssignedTo: unassig...@gcc.gnu.org
ReportedBy: oleg.e...@t-online.de


Created attachment 24411
  -- http://gcc.gnu.org/bugzilla/attachment.cgi?id=24411
test for various integer types and constant values 0...255

The TST #imm, R0 instruction is a bit underutilized on SH targets. For some
bit patterns of the immediate constant it tries to extract the bits in question
by various means and test the result against zero/non-zero and misses the
straight forward instruction.
In particular: 
* one single bit 
* n contiguous bits starting at bit 0

When testing a byte against 0x80 it uses CMP/PZ, which is as good as a TST
instruction (in terms of costs), so this is OK. 

I've spotted this in version around 4.4. It still happens with 4.6 and the
following config:

Using built-in specs.
COLLECT_GCC=sh-elf-gcc
COLLECT_LTO_WRAPPER=/usr/local/libexec/gcc/sh-elf/4.6.1/lto-wrapper
Target: sh-elf
Configured with: ../gcc-4.6-20110527/configure --target=sh-elf
--prefix=/usr/local --enable-languages=c,c++ --enable-multilib --disable-libssp
--without-headers --disable-nls --disable-werror --enable-lto --with-newlib
--with-gnu-as --with-gnu-ld --with-system-zlib
Thread model: single
gcc version 4.6.1 20110527 (prerelease) (GCC)


[Bug rtl-optimization/48830] [4.4/4.5/4.6 regression] unrecognized insn: storing invalid upper fp reg in SImode to stack

2011-06-01 Thread ebotcazou at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=48830

Eric Botcazou ebotcazou at gcc dot gnu.org changed:

   What|Removed |Added

 Depends on|49226   |
Summary|[4.4/4.5/4.6/4.7|[4.4/4.5/4.6 regression]
   |Regression] unrecognized|unrecognized insn: storing
   |insn: storing invalid upper |invalid upper fp reg in
   |fp reg in SImode to stack   |SImode to stack

--- Comment #14 from Eric Botcazou ebotcazou at gcc dot gnu.org 2011-06-01 
20:27:06 UTC ---
Fixed on the mainline by Richard.  This is a reload patch so backporting it to
the branches is IMO not really an option, at least in the immediate future. 
And
I don't think that modifying CANNOT_CHANGE_MODE_CLASS is one either.


[Bug c++/44175] [C++0x] decltype sometimes cannot recurse

2011-06-01 Thread jason at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44175

--- Comment #6 from Jason Merrill jason at gcc dot gnu.org 2011-06-01 
20:27:26 UTC ---
Author: jason
Date: Wed Jun  1 20:27:22 2011
New Revision: 174543

URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=174543
Log:
PR c++/44175
* pt.c (template_args_equal): Handle one arg being NULL_TREE.
(deduction_tsubst_fntype): Handle excessive non-infinite recursion.

Added:
trunk/gcc/testsuite/g++.dg/cpp0x/decltype28.C
trunk/gcc/testsuite/g++.dg/cpp0x/decltype29.C
Modified:
trunk/gcc/cp/ChangeLog
trunk/gcc/cp/pt.c
trunk/gcc/testsuite/ChangeLog


[Bug c/49262] 3-yr-old infinite loop in dwarf2out.c

2011-06-01 Thread ebotcazou at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=49262

Eric Botcazou ebotcazou at gcc dot gnu.org changed:

   What|Removed |Added

 Status|UNCONFIRMED |NEW
   Last reconfirmed||2011.06.01 20:36:56
 CC||ebotcazou at gcc dot
   ||gnu.org, jakub at gcc dot
   ||gnu.org
 Ever Confirmed|0   |1

--- Comment #1 from Eric Botcazou ebotcazou at gcc dot gnu.org 2011-06-01 
20:36:56 UTC ---
Jakub, this appears to come from one of your patches.


[Bug target/49263] SH Target: underutilized TST #imm, R0 instruction

2011-06-01 Thread oleg.e...@t-online.de
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=49263

--- Comment #1 from Oleg Endo oleg.e...@t-online.de 2011-06-01 20:42:00 UTC 
---
Created attachment 24412
  -- http://gcc.gnu.org/bugzilla/attachment.cgi?id=24412
Proposed Patch

Although the patch gets the job done, programmer's sense tells me it is fishy,
or at least pretty much brute forced cure of the symptoms, not the cause. It's
my first GCC patch, so any feedback is highly appreciated.

What I did was looking at the RTL, in particular the combine pass, identifying
patterns it failed to find a shortcut (tst insn) for and adding them to the
insn descriptions. 

I also had to expand the costs calculation of the AND instruction to cover AND,
OR and XOR (on SH they are the same anyways), or else the cost of a matched
replacement insn would result in a rejection in the combine pass.


[Bug target/48840] [4.4/4.5/4.7 Regression] assertion failure (old_frame_size == get_frame_size ()) in reload1.c

2011-06-01 Thread ebotcazou at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=48840

Eric Botcazou ebotcazou at gcc dot gnu.org changed:

   What|Removed |Added

 Status|NEW |ASSIGNED
 AssignedTo|unassigned at gcc dot   |ebotcazou at gcc dot
   |gnu.org |gnu.org

--- Comment #2 from Eric Botcazou ebotcazou at gcc dot gnu.org 2011-06-01 
20:51:57 UTC ---
Investigating.


[Bug target/49257] -mfpmath=sse generates x87 instructions on 32 bits OS

2011-06-01 Thread ubizjak at gmail dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=49257

--- Comment #4 from Uros Bizjak ubizjak at gmail dot com 2011-06-01 20:52:13 
UTC ---
Created attachment 24413
  -- http://gcc.gnu.org/bugzilla/attachment.cgi?id=24413
Patch that wires up ix86_expand_convert_sign_didf_sse

For some reason, ix86_expand_convert_sign_didf_sse is not wired into floatdi
expander, so we never generate sse sequence for 32bit floatdi.

Attached patch also includes my pathetic attempt to implement
ix86_expand_convert_sign_disf_sse, but surely would need some help here...


[Bug rtl-optimization/48658] [4.3 Regression]: ICE in reload_cse_simplify_operands, at postreload.c:395

2011-06-01 Thread ebotcazou at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=48658

Eric Botcazou ebotcazou at gcc dot gnu.org changed:

   What|Removed |Added

 Status|NEW |ASSIGNED
 CC||ebotcazou at gcc dot
   ||gnu.org
 AssignedTo|unassigned at gcc dot   |ebotcazou at gcc dot
   |gnu.org |gnu.org

--- Comment #1 from Eric Botcazou ebotcazou at gcc dot gnu.org 2011-06-01 
20:54:07 UTC ---
Investigating.


[Bug target/49257] -mfpmath=sse generates x87 instructions on 32 bits OS

2011-06-01 Thread ubizjak at gmail dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=49257

Uros Bizjak ubizjak at gmail dot com changed:

   What|Removed |Added

 CC||rguenth at gcc dot gnu.org,
   ||ubizjak at gmail dot com

--- Comment #5 from Uros Bizjak ubizjak at gmail dot com 2011-06-01 20:54:33 
UTC ---
(In reply to comment #4)

 Attached patch also includes my pathetic attempt to implement
 ix86_expand_convert_sign_disf_sse, but surely would need some help here...

Let's ask the author of SSE expanders.


[Bug c++/49181] [C++0x] Error reporting routines re-entered

2011-06-01 Thread redi at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=49181

--- Comment #3 from Jonathan Wakely redi at gcc dot gnu.org 2011-06-01 
21:06:37 UTC ---
I take it back - that works ok with latest trunk - I must have not updated
something in the front end


[Bug c++/49264] New: Internal compiler error: segmentation fault

2011-06-01 Thread eftaxi12 at otenet dot gr
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=49264

   Summary: Internal compiler error: segmentation fault
   Product: gcc
   Version: 4.6.1
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: c++
AssignedTo: unassig...@gcc.gnu.org
ReportedBy: eftax...@otenet.gr


$ g++ -v
Using built-in specs.
COLLECT_GCC=g++
COLLECT_LTO_WRAPPER=/usr/lib/gcc/x86_64-linux-gnu/4.6.1/lto-wrapper
Target: x86_64-linux-gnu
Configured with: ../src/configure -v --with-pkgversion='Debian 4.6.0-10'
--with-bugurl=file:///usr/share/doc/gcc-4.6/README.Bugs
--enable-languages=c,c++,fortran,objc,obj-c++,go --prefix=/usr
--program-suffix=-4.6 --enable-shared --enable-multiarch
--with-multiarch-defaults=x86_64-linux-gnu --enable-linker-build-id
--with-system-zlib --libexecdir=/usr/lib --without-included-gettext
--enable-threads=posix --with-gxx-include-dir=/usr/include/c++/4.6
--libdir=/usr/lib --enable-nls --enable-clocale=gnu --enable-libstdcxx-debug
--enable-libstdcxx-time=yes --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.6.1 20110526 (prerelease) (Debian 4.6.0-10)


$ g++ -DHAVE_CONFIG_H -I. -I../.. -I../lglib -I../bamglib -I../Graphics
-I../femlib-g  -DNDEBUG -O3 -mmmx -msse -msse2 -DDRAWING -DBAMG_LONG_LONG 
-DNCHECKPTR -fPIC -c -fno-strict-aliasing -fwrapv -save-temps -Wall -Wextra -o
array_long.o array_long.cpp
In file included from array_tlp.hpp:34:0,
 from array_long.cpp:28:
AFunction.hpp:1422:15: warning: unused parameter ‘i’ [-Wunused-parameter]
AFunction.hpp:1454:11: warning: unused parameter ‘k’ [-Wunused-parameter]
AFunction.hpp:1739:13: warning: unused parameter ‘r’ [-Wunused-parameter]
AFunction.hpp:1739:13: warning: unused parameter ‘top’ [-Wunused-parameter]
In file included from array_tlp.hpp:34:0,
 from array_long.cpp:28:
AFunction.hpp:2233:19: warning: unused parameter ‘a’ [-Wunused-parameter]
AFunction.hpp:2233:19: warning: unused parameter ‘b’ [-Wunused-parameter]
In file included from array_tlp.hpp:34:0,
 from array_long.cpp:28:
AFunction.hpp:2872:18: warning: type qualifiers ignored on function return type
[-Wignored-qualifiers]
AFunction.hpp:2944:13: warning: unused parameter ‘l’ [-Wunused-parameter]
AFunction.hpp:2944:13: warning: unused parameter ‘top’ [-Wunused-parameter]
In file included from array_long.cpp:28:0:
array_tlp.hpp: In function ‘void ArrayOperator() [with K = long int, Z = long
int]’:
array_long.cpp:135:31:   instantiated from here
array_tlp.hpp:871:12: warning: unused variable ‘knrp’ [-Wunused-variable]
array_tlp.hpp:872:12: warning: unused variable ‘knr_’ [-Wunused-variable]
array_tlp.hpp:883:12: warning: unused variable ‘knlp’ [-Wunused-variable]
In file included from array_long.cpp:28:0:
array_tlp.hpp: At global scope:
array_tlp.hpp: In instantiation of ‘A fSubArrayc(const A, const char) [with A
= KN_long int]’:
array_tlp.hpp:887:6:   instantiated from ‘void ArrayOperator() [with K = long
int, Z = long int]’
array_long.cpp:135:31:   instantiated from here
array_tlp.hpp:229:3: warning: unused parameter ‘b’ [-Wunused-parameter]
array_tlp.hpp: In instantiation of ‘A fSubArrayc(const A, const char) [with A
= KNlong int*]’:
array_tlp.hpp:890:6:   instantiated from ‘void ArrayOperator() [with K = long
int, Z = long int]’
array_long.cpp:135:31:   instantiated from here
array_tlp.hpp:229:3: warning: unused parameter ‘b’ [-Wunused-parameter]
In file included from array_tlp.hpp:40:0,
 from array_long.cpp:28:
../femlib/RNM.hpp: In member function ‘void KNMR::resize(long int, long int)
[with R = long int]’:
array_resize.hpp:23:3:   instantiated from ‘T* resize2(const ResizeT, const
long int, const long int) [with T = KNMlong int]’
array_tlp.hpp:954:6:   instantiated from ‘void ArrayOperator() [with K = long
int, Z = long int]’
array_long.cpp:135:31:   instantiated from here
../femlib/RNM.hpp:1203:10: warning: unused variable ‘lso’ [-Wunused-variable]
In file included from array_tlp.hpp:42:0,
 from array_long.cpp:28:
Operator.hpp: At global scope:
Operator.hpp: In instantiation of ‘static R* Op3_pR, A, B, C::f(Stack, const
A, const B, const C) [with R = if_arth_KN_long int, A = KN_long int, B =
KN_long int, C = KN_long int, Stack = void*]’:
AFunction.hpp:2127:69:   instantiated from ‘AnyType
OneTernaryOperator3T::Op::operator()(Stack) const [with T =
Op3_pif_arth_KN_long int, KN_long int, KN_long int, KN_long int ,
AnyType = AnyTypeWithOutCheck, Stack = void*]’
array_long.cpp:167:1:   instantiated from here
Operator.hpp:585:13: warning: unused parameter ‘s’ [-Wunused-parameter]
In file included from array_long.cpp:28:0:
array_tlp.hpp: In static member function ‘static if_arth_KN_R*
Op3_paccK::f(Stack, const KN_R, const K, const K) [with K = long int,
Stack = void*]’:

[Bug debug/49250] [4.7 Regression] ICE in set_slot_part, at var-tracking.c:6793

2011-06-01 Thread jakub at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=49250

--- Comment #6 from Jakub Jelinek jakub at gcc dot gnu.org 2011-06-01 
21:45:37 UTC ---
Author: jakub
Date: Wed Jun  1 21:45:34 2011
New Revision: 174548

URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=174548
Log:
PR debug/49250
* var-tracking.c (add_uses, add_stores): Don't call
cselib_subst_to_values on ENTRY_VALUE.

Modified:
trunk/gcc/ChangeLog
trunk/gcc/var-tracking.c


[Bug debug/49250] [4.7 Regression] ICE in set_slot_part, at var-tracking.c:6793

2011-06-01 Thread jakub at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=49250

Jakub Jelinek jakub at gcc dot gnu.org changed:

   What|Removed |Added

 Status|ASSIGNED|RESOLVED
 Resolution||FIXED

--- Comment #7 from Jakub Jelinek jakub at gcc dot gnu.org 2011-06-01 
21:50:41 UTC ---
Fixed.


[Bug middle-end/49261] [4.7 Regression] FAIL: gcc.dg/tree-ssa/forwprop-9.c

2011-06-01 Thread xinliangli at gmail dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=49261

davidxl xinliangli at gmail dot com changed:

   What|Removed |Added

 CC||xinliangli at gmail dot com

--- Comment #1 from davidxl xinliangli at gmail dot com 2011-06-01 22:27:59 
UTC ---
(In reply to comment #0)
 On Linux/ia32, revision 174538 gave
 
 FAIL: gcc.dg/tree-ssa/forwprop-9.c scan-tree-dump-times optimized  = 1 2
 
 Revision 174535 is OK.

Right -- the counting of '= 1' is screwed up.

David


[Bug c++/49264] Internal compiler error: segmentation fault

2011-06-01 Thread redi at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=49264

Jonathan Wakely redi at gcc dot gnu.org changed:

   What|Removed |Added

 Status|UNCONFIRMED |WAITING
   Last reconfirmed||2011.06.01 23:25:53
 Ever Confirmed|0   |1

--- Comment #1 from Jonathan Wakely redi at gcc dot gnu.org 2011-06-01 
23:25:53 UTC ---
(In reply to comment #0)
 Please submit a full bug report,
 with preprocessed source if appropriate.
 See file:///usr/share/doc/gcc-4.6/README.Bugs for instructions.

Or see http://gcc.gnu.org/bugs/


[Bug fortran/49265] New: Double colon in procedure-stmt (generic interface)

2011-06-01 Thread eh.toussaint at gmail dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=49265

   Summary: Double colon in procedure-stmt (generic interface)
   Product: gcc
   Version: 4.7.0
Status: UNCONFIRMED
  Severity: minor
  Priority: P3
 Component: fortran
AssignedTo: unassig...@gcc.gnu.org
ReportedBy: eh.toussa...@gmail.com


In Fortran 2008 the (module) procedure statement in a generic
interface can contain a double colon, according to R1206:

R1206  procedure-stmt   is   [ MODULE ] PROCEDURE [ :: ] procedure-name-list

When I try to compile the following module with gfortran 4.7-20110423
I get an error.

module m1
  implicit none
  interface foo
 module procedure :: bar
  end interface
contains
  subroutine bar
  end subroutine
end module

$ gfortran -c -std=f2008 m1.f90
m1.f90:4.23:

 module procedure :: bar
  1
Error: Syntax error in MODULE PROCEDURE statement at (1)

(The '1' indicates the double colon as the location of the error.)

If I remove the double colon the file compiles without error - which is
expected, as the optional double colon didn't appear in the rule in previous
versions of the standard.

$ gcc -v
Using built-in specs.
COLLECT_GCC=d:\Programs\MinGW\gcc47\bin\gcc.exe
COLLECT_LTO_WRAPPER=d:/programs/mingw/gcc47/bin/../libexec/gcc/i686-pc-mingw32/4
.7.0/lto-wrapper.exe
Target: i686-pc-mingw32
Configured with: ../src/configure --prefix=/mingw --with-gmp=/mingw
--with-mpfr=
/mingw --with-mpc=/mingw --disable-nls --enable-languages=c,c++,fortran
--enable
-libgomp --disable-win32-registry
Thread model: win32
gcc version 4.7.0 20110423 (experimental) (GCC)


[Bug fortran/49265] Double colon in procedure-stmt (generic interface)

2011-06-01 Thread kargl at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=49265

kargl at gcc dot gnu.org changed:

   What|Removed |Added

 Status|UNCONFIRMED |NEW
   Last reconfirmed||2011.06.02 00:26:32
 CC||kargl at gcc dot gnu.org
 Ever Confirmed|0   |1

--- Comment #1 from kargl at gcc dot gnu.org 2011-06-02 00:26:32 UTC ---
I have a patch that is regression testing.


F95 has

R1206 module-procedure-stmt is MODULE PROCEDURE procedure-name-list

F2003 has

R1206 procedure-stmt is [ MODULE ] PROCEDURE procedure-name-list

F2008 has

R1206 procedure-stmt is [ MODULE ] PROCEDURE [ :: ] procedure-name-list


[Bug debug/48354] internal compiler error: in splice_child_die, at dwarf2out.c:8064

2011-06-01 Thread hubicka at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=48354

--- Comment #14 from Jan Hubicka hubicka at gcc dot gnu.org 2011-06-02 
01:02:10 UTC ---
Same get_typedef_die ICE with this patch, too.


[Bug tree-optimization/44897] -flto + ipa-sra misoptimize sqlite (non-plugin only)

2011-06-01 Thread hubicka at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44897

--- Comment #20 from Jan Hubicka hubicka at gcc dot gnu.org 2011-06-02 
01:12:12 UTC ---
The problem as confirmed in Comment 9 no longer reproduce on mainline. So
problem is either fixed or went latent.  I am going to try 4.6.


[Bug libfortran/48906] Wrong rounding results with -m32

2011-06-01 Thread jvdelisle at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=48906

Jerry DeLisle jvdelisle at gcc dot gnu.org changed:

   What|Removed |Added

  Attachment #24406|0   |1
is obsolete||

--- Comment #22 from Jerry DeLisle jvdelisle at gcc dot gnu.org 2011-06-02 
03:57:49 UTC ---
Created attachment 24414
  -- http://gcc.gnu.org/bugzilla/attachment.cgi?id=24414
Fixed revised patch

This patch fixes my omissions on the last patch.  In addition, studying the
test case pr20755.f, I see that it has the wrong number of significant digits
in the expected result.  I have revised it now so that it passes. I have also
added a new test case, to capture the various errors we found here while
developing the patch

Feel free to continue testing and if no new errors show up, I will submit to
the gfortran list for approval.  /me crosses his fingers.  ;)


[Bug fortran/49255] -fcheck=pointer diagnoses too much: Passing NULL pointer to OPTIONAL argument

2011-06-01 Thread burnus at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=49255

--- Comment #1 from Tobias Burnus burnus at gcc dot gnu.org 2011-06-02 
05:54:53 UTC ---
The patch was not quite correct...

Submitted patch: http://gcc.gnu.org/ml/fortran/2011-06/msg00015.html