[Bug c++/57673] New: pack sizeof ... groups ellipsis with preceding expression

2013-06-22 Thread potswa at mac dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=57673

Bug ID: 57673
   Summary: pack sizeof ... groups ellipsis with preceding
expression
   Product: gcc
   Version: 4.9.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: c++
  Assignee: unassigned at gcc dot gnu.org
  Reporter: potswa at mac dot com

In this example, template g compiles without issue but each member in d chokes
the parser. The only difference is grouping parentheses, which shouldn't be
significant.

There may be more than one issue. A left paren seems to get the parser into a
good state to accept sizeof ... , but it starts in a bad state at the beginning
of an initializer, and seeing a qualified-id puts it into a bad state.
(Reversing the order of subexpressions and writing ( sizeof ... ( p ) - i::m )
does not produce an error.)


struct i { static constexpr int m = 5; };

template int ... p 
struct g {
static constexpr int m = i::m - ( sizeof ... ( p ) );
int n = ( sizeof ... ( p ) );
};

template int ... p 
struct d {
static constexpr int m = ( i::m - sizeof ... ( p ) );
int n = sizeof ... ( p );
};


[Bug rtl-optimization/57497] [4.9 Regression] ICE in lra_create_new_reg_with_unique_value, at lra.c:155

2013-06-22 Thread antoine.balestrat at gmail dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=57497

--- Comment #3 from Antoine Balestrat antoine.balestrat at gmail dot com ---
This bug looks unreproducible with the current trunk.


[Bug c++/57673] pack sizeof ... groups ellipsis with preceding expression

2013-06-22 Thread potswa at mac dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=57673

--- Comment #1 from David Krauss potswa at mac dot com ---
Oops, g::m does not need to be static constexpr to produce an error; the
specifiers should be removed to produce a minimal test.


[Bug lto/57290] [4.9 Regression] After r198333 the aermod runtime is ~10% slower when compiled with -fprotect-parens and -flto

2013-06-22 Thread dominiq at lps dot ens.fr
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=57290

Dominique d'Humieres dominiq at lps dot ens.fr changed:

   What|Removed |Added

 Status|UNCONFIRMED |RESOLVED
 Resolution|--- |FIXED

--- Comment #4 from Dominique d'Humieres dominiq at lps dot ens.fr ---
At revision 200321 I get
(3) 17.83
(5) 17.82

Closing as FIXED.


[Bug rtl-optimization/50749] Auto-inc-dec does not find subsequent contiguous mem accesses

2013-06-22 Thread olegendo at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=50749

--- Comment #14 from Oleg Endo olegendo at gcc dot gnu.org ---
Just wanted to clarify the reason why the examples in the description have
'-fno-ivopts', as it caused some confusion on the mailing list:

int test_0 (char* p, int c)
{
  int r = 0;
  r += *p++;
  r += *p++;
  r += *p++;
  return r;
}

compiled with -m4 -O2:

mov.b   @(1,r4),r0
mov.b   @r4,r1
add r0,r1
mov.b   @(2,r4),r0
rts
add r1,r0

compiled with -m4 -Os:

mov.b   @(1,r4),r0
mov.b   @r4,r2
add r0,r2
mov.b   @(2,r4),r0
add r0,r2
rts
mov r2,r0

As seen above, the memory accesses are turned into reg+disp addressing,
although on SH using post-inc addressing would be cheaper (as it is also
reported 'sh_address_cost').
Turning off ivopts leaves the post-inc addressing and points out the original
problem of this PR.  I believe that the proper fix for this would be having PR
56590 fixed.


[Bug fortran/52413] Incorrect behavior of FRACTION when applied to a constant

2013-06-22 Thread dominiq at lps dot ens.fr
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=52413

--- Comment #3 from Dominique d'Humieres dominiq at lps dot ens.fr ---
 Tentative patch. Not regression tested, yet.

I have applied the patch in comment #1 on top of revision 200321. I have
regtested without regression and tested thet this PR is fixed for all the
available kinds (4, 8, 10, and 16).

Steven, would it help if I do the packaging and the submission on your behalf
(someone will have to commit after approval)?


[Bug fortran/53957] Polyhedron 11 benchmark: MP_PROP_DESIGN twice as long as other compiler

2013-06-22 Thread dominiq at lps dot ens.fr
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=53957

--- Comment #14 from Dominique d'Humieres dominiq at lps dot ens.fr ---
Anthony, could you provide a reduced test showing the problem?


[Bug fortran/53035] ICE with deferred-length module variable

2013-06-22 Thread dominiq at lps dot ens.fr
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=53035

Dominique d'Humieres dominiq at lps dot ens.fr changed:

   What|Removed |Added

 Status|NEW |WAITING

--- Comment #7 from Dominique d'Humieres dominiq at lps dot ens.fr ---
The tests in comments #4 and #5 compile with revision 187834 (2012-05-24), but
not with revision 187440 (2012-05-13). Could you test that your application
compiles with gfortran 4.8.1?


[Bug fortran/48303] [Legacy] Support Character constants in DATA statement for non-character variables

2013-06-22 Thread dominiq at lps dot ens.fr
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=48303

Dominique d'Humieres dominiq at lps dot ens.fr changed:

   What|Removed |Added

 Status|NEW |WAITING

--- Comment #4 from Dominique d'Humieres dominiq at lps dot ens.fr ---
No activity since more than two years. IMO this should go under the section

6.2 Extensions not implemented in GNU Fortran

of the manual. I can submit a draft patch for this PR if someone is will to fix
my Frenglish and formatting issues and do the commit.


[Bug fortran/44345] ICE in fold_convert_loc

2013-06-22 Thread dominiq at lps dot ens.fr
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44345

Dominique d'Humieres dominiq at lps dot ens.fr changed:

   What|Removed |Added

 Status|NEW |RESOLVED
 Resolution|--- |FIXED

--- Comment #5 from Dominique d'Humieres dominiq at lps dot ens.fr ---
 The code is now rejected with 4.8.0

Confirmed. Closing as FIXED. Please reopen if I am wrong.


[Bug libstdc++/57674] New: wrong distribution for std::binomial_distribution::operator()(g,param)

2013-06-22 Thread schlaffi at users dot sourceforge.net
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=57674

Bug ID: 57674
   Summary: wrong distribution for
std::binomial_distribution::operator()(g,param)
   Product: gcc
   Version: 4.7.2
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: libstdc++
  Assignee: unassigned at gcc dot gnu.org
  Reporter: schlaffi at users dot sourceforge.net

Created attachment 30337
  -- http://gcc.gnu.org/bugzilla/attachment.cgi?id=30337action=edit
example where bindist(gen,param) fails

std::binomial_distribution::operator()(g,param) produces an invalid statistic.
It uses the old probability p_old if param.p.5 and otherwise 1-p_old. Looks
like a typo.

That is, dist(gen,para2); gives 

distribution 1: p = 0.8, f = 0.798828
distribution 2: p = 0.3, f = 0.206055

while dist.param(para2);dist(gen); gives

distribution 1: p = 0.8, f = 0.324219
distribution 2: p = 0.3, f = 0.295898

I briefly checked the SVN, there does not seem to be a change since v2.7.8.


[Bug fortran/40958] module files too large

2013-06-22 Thread dominiq at lps dot ens.fr
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=40958

Dominique d'Humieres dominiq at lps dot ens.fr changed:

   What|Removed |Added

 Status|NEW |WAITING

--- Comment #12 from Dominique d'Humieres dominiq at lps dot ens.fr ---
Joost, is it fixed after revision 198023? If yes, could you close the PR as
FIXED?


[Bug libstdc++/57674] wrong distribution for std::binomial_distribution::operator()(g,param)

2013-06-22 Thread schlaffi at users dot sourceforge.net
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=57674

schlaffi at users dot sourceforge.net changed:

   What|Removed |Added

Version|4.7.2   |lno

--- Comment #1 from schlaffi at users dot sourceforge.net ---
i mean v4.7.2 :o


[Bug fortran/28105] Check for memory allocations bigger than size_t

2013-06-22 Thread dominiq at lps dot ens.fr
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=28105

Dominique d'Humieres dominiq at lps dot ens.fr changed:

   What|Removed |Added

 Status|NEW |RESOLVED
 Resolution|--- |FIXED

--- Comment #12 from Dominique d'Humieres dominiq at lps dot ens.fr ---
Since gfortran 4.8.1 up to trunk I get

pr28105.f90:1:0: error: size of variable 'm' is too large
real(4), dimension(1025*1024*1024) :: m

when compiling 

   real(4), dimension(1025*1024*1024) :: m
   m = 0.
   print *, m(1025*1024*1024)
end

with -m32. Revision 187017 (2012-05-01) does not give any error, but revision
187060 (2012-05-02) does. Closing as FIXED. Please reopen if I am wrong.


[Bug fortran/13615] -Wuninitialized produces wrong error message for characters

2013-06-22 Thread dominiq at lps dot ens.fr
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=13615

Dominique d'Humieres dominiq at lps dot ens.fr changed:

   What|Removed |Added

 Status|NEW |WAITING

--- Comment #11 from Dominique d'Humieres dominiq at lps dot ens.fr ---
At revision 200321, I still get no warning for tests as in comment #7 and

pr13615_1.f90:3:0: warning: 'c[1]{lb: 1 sz: 1}' is used uninitialized in this
function [-Wuninitialized]

as in comment #8. What dump(s) would be necessary for any progress for this PR?


[Bug fortran/13615] -Wuninitialized produces wrong error message for characters

2013-06-22 Thread manu at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=13615

--- Comment #12 from Manuel López-Ibáñez manu at gcc dot gnu.org ---
(In reply to Dominique d'Humieres from comment #11)
 At revision 200321, I still get no warning for tests as in comment #7 and
 
 pr13615_1.f90:3:0: warning: 'c[1]{lb: 1 sz: 1}' is used uninitialized in
 this function [-Wuninitialized]
 
 as in comment #8. What dump(s) would be necessary for any progress for this
 PR?

The SSA built is:

warn_character (character(kind=1)D.24[1:1]  restrict dD.1877,
integer(kind=4)D.8 _dD.1876)
{
  character(kind=1)D.24 cD.1878[1:1];
  character(kind=1)D.24 _2;

;;   basic block 2, loop depth 0, count 0, freq 0, maybe hot
;;prev block 0, next block 1, flags: (NEW, REACHABLE)
;;pred:   ENTRY (FALLTHRU)
;;   starting at line 3
  [z.f : 3:0] # VUSE .MEM_1(D)
  _2 = [z.f : 3] cD.1878[1]{lb: 1 sz: 1};
  [z.f : 3:0] # .MEM_4 = VDEF .MEM_1(D)
  [z.f : 3] [z.f : 3] *d_3(D)[1]{lb: 1 sz: 1} = _2;
  # .MEM_5 = VDEF .MEM_4
  cD.1878 ={v} {CLOBBER};
  [z.f : 4:0] # VUSE .MEM_5
  return;
;;succ:   EXIT

}

as you can see, the middle-end somehow thinks that the function reads from
uninitialized memory. If this is the fault of gfortran or the middle-end, I
really don't know. Perhaps Richard or Jakub have better idea of what is going
on.

[Bug target/57631] [patch] spurious warning for avr interrupts with asm labels

2013-06-22 Thread manu at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=57631

Manuel López-Ibáñez manu at gcc dot gnu.org changed:

   What|Removed |Added

 CC||manu at gcc dot gnu.org

--- Comment #11 from Manuel López-Ibáñez manu at gcc dot gnu.org ---
(In reply to pebbles from comment #9)
 I would like to learn to find out if this is a bug and contribute a fix to
 the gcc sources.  At the moment building gcc loads my computer for a day,
 and it is difficult to develop on.  I plan to pursue this when I am set up
 better, but if anybody else ever cares about it they should look at it.

You can use the GCC Farm for gcc development for free.
http://gcc.gnu.org/wiki/CompileFarm

There are scripts that simplify building and testing patches. See
contrib/patch_test.sh and other scripts in that directory.

You can also use my own script
http://gcc.gnu.org/wiki/ManuelL%C3%B3pezIb%C3%A1%C3%B1ez?action=AttachFiledo=viewtarget=gccfarming

[Bug other/57675] New: Complex division of NaN by zero not handled correctly

2013-06-22 Thread ian at airs dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=57675

Bug ID: 57675
   Summary: Complex division of NaN by zero not handled correctly
   Product: gcc
   Version: 4.8.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: other
  Assignee: unassigned at gcc dot gnu.org
  Reporter: ian at airs dot com

The rules in C99 Annex G say that if either part of a complex number is
infinity, then the whole number is treated as infinity.  The rules imply but do
not clearly state that an operation involving a NaN should yield a NaN. 
However, this program aborts:

__complex double f (__complex double, __complex double)
  __attribute__ ((noinline));
__complex double
f (__complex double a, __complex double b)
{
  return a / b;
}

int
main ()
{
  __complex double c = f (__builtin_nan() + 1.0i, 0);
  if (__builtin_isinf (__real__ c) || __builtin_isinf (__imag__ c))
abort ();
  exit (0);
}

Computing NaN+1.0i / 0+0i yields NaN+Inf*I.  The rules of Annex G say that the
latter is infinity.  But the result of dividing a NaN by 0 should be NaN, just
as the result of any operation involving NaN should be NaN.


[Bug other/57675] Complex division of NaN by zero not handled correctly

2013-06-22 Thread ian at airs dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=57675

Ian Lance Taylor ian at airs dot com changed:

   What|Removed |Added

 CC||jsm28 at gcc dot gnu.org

--- Comment #1 from Ian Lance Taylor ian at airs dot com ---
Adding Joseph in case he has any comment on the standards-based argument.


[Bug fortran/50538] formal argument cannot be same as procedure name (r178939)

2013-06-22 Thread dominiq at lps dot ens.fr
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=50538

Dominique d'Humieres dominiq at lps dot ens.fr changed:

   What|Removed |Added

 Status|UNCONFIRMED |NEW
   Last reconfirmed||2013-06-22
 Ever confirmed|0   |1

--- Comment #1 from Dominique d'Humieres dominiq at lps dot ens.fr ---
Still present at revision 200321.


[Bug fortran/50542] gfortran should detect violation of Fortran 95 R536 (r178939)

2013-06-22 Thread dominiq at lps dot ens.fr
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=50542

Dominique d'Humieres dominiq at lps dot ens.fr changed:

   What|Removed |Added

 Status|UNCONFIRMED |NEW
   Last reconfirmed||2013-06-22
 Ever confirmed|0   |1

--- Comment #1 from Dominique d'Humieres dominiq at lps dot ens.fr ---
Still present at revision 200321.


[Bug fortran/50546] gfortran should not accept missing operator (r178939)

2013-06-22 Thread dominiq at lps dot ens.fr
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=50546

Dominique d'Humieres dominiq at lps dot ens.fr changed:

   What|Removed |Added

 Status|UNCONFIRMED |RESOLVED
 Resolution|--- |FIXED

--- Comment #1 from Dominique d'Humieres dominiq at lps dot ens.fr ---
With gfortran 4.7.3 up to trunk, I get

  use m, only : operator(+)
   1
Error: Intrinsic operator '+' referenced at (1) not found in module 'm'

Closing as fixed. Please reopen if I am wrong.


[Bug fortran/50549] should detect different type parameters in structure constructors (r178939)

2013-06-22 Thread dominiq at lps dot ens.fr
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=50549

Dominique d'Humieres dominiq at lps dot ens.fr changed:

   What|Removed |Added

 Status|UNCONFIRMED |NEW
   Last reconfirmed||2013-06-22
 Ever confirmed|0   |1

--- Comment #1 from Dominique d'Humieres dominiq at lps dot ens.fr ---
Still present at revision 200321.


[Bug fortran/50550] does not recognize pointer variable at initialization (r178939)

2013-06-22 Thread dominiq at lps dot ens.fr
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=50550

Dominique d'Humieres dominiq at lps dot ens.fr changed:

   What|Removed |Added

 Status|UNCONFIRMED |NEW
   Last reconfirmed||2013-06-22
 Ever confirmed|0   |1

--- Comment #2 from Dominique d'Humieres dominiq at lps dot ens.fr ---
Still present at revision 200321.


[Bug fortran/50551] Argumentless NULL() cannot be used with assumed-length dummy (r178939)

2013-06-22 Thread dominiq at lps dot ens.fr
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=50551

Dominique d'Humieres dominiq at lps dot ens.fr changed:

   What|Removed |Added

 Status|UNCONFIRMED |NEW
   Last reconfirmed||2013-06-22
 Ever confirmed|0   |1

--- Comment #1 from Dominique d'Humieres dominiq at lps dot ens.fr ---
Still present at revision 200321.


[Bug fortran/52413] Incorrect behavior of FRACTION when applied to a constant

2013-06-22 Thread sgk at troutmask dot apl.washington.edu
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=52413

--- Comment #4 from Steve Kargl sgk at troutmask dot apl.washington.edu ---
On Sat, Jun 22, 2013 at 12:57:56PM +, dominiq at lps dot ens.fr wrote:
 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=52413
 
 --- Comment #3 from Dominique d'Humieres dominiq at lps dot ens.fr ---
  Tentative patch. Not regression tested, yet.
 
 I have applied the patch in comment #1 on top of revision 200321. I have
 regtested without regression and tested thet this PR is fixed for all the
 available kinds (4, 8, 10, and 16).
 
 Steven, would it help if I do the packaging and the submission on your behalf
 (someone will have to commit after approval)?
 

I do not have any problems if you want to pick up where I left
off with this bug.  I simply do not have much time for gfortran
anymore.


[Bug fortran/50552] type name cannot be statement function dummy argument (r178939)

2013-06-22 Thread dominiq at lps dot ens.fr
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=50552

Dominique d'Humieres dominiq at lps dot ens.fr changed:

   What|Removed |Added

 Status|UNCONFIRMED |WAITING
   Last reconfirmed||2013-06-22
 Ever confirmed|0   |1

--- Comment #4 from Dominique d'Humieres dominiq at lps dot ens.fr ---
 I am traveling in Korea, and I cannot look at the standard now.
 If you believe this is a non-issue then please close it.

Before I close this PR as INVALID, could someone have a look at it?


[Bug fortran/50555] synonymous namelist/statement function dummy argument not allowed (r178939)

2013-06-22 Thread dominiq at lps dot ens.fr
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=50555

Dominique d'Humieres dominiq at lps dot ens.fr changed:

   What|Removed |Added

 Status|UNCONFIRMED |NEW
   Last reconfirmed||2013-06-22
 Ever confirmed|0   |1

--- Comment #1 from Dominique d'Humieres dominiq at lps dot ens.fr ---
Still present at revision 200321.


[Bug fortran/50525] gfortran should not allow early reference to entry dummy argument (r178939)

2013-06-22 Thread dominiq at lps dot ens.fr
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=50525

Dominique d'Humieres dominiq at lps dot ens.fr changed:

   What|Removed |Added

 Status|UNCONFIRMED |NEW
   Last reconfirmed||2013-06-22
 Ever confirmed|0   |1

--- Comment #4 from Dominique d'Humieres dominiq at lps dot ens.fr ---
Still present at revision 200321.


[Bug rtl-optimization/57676] New: ICE: Maximum number of LRA constraint passes is achieved (30)

2013-06-22 Thread antoine.balestrat at gmail dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=57676

Bug ID: 57676
   Summary: ICE: Maximum number of LRA constraint passes is
achieved (30)
   Product: gcc
   Version: 4.9.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: rtl-optimization
  Assignee: unassigned at gcc dot gnu.org
  Reporter: antoine.balestrat at gmail dot com

Using GCC 4.9.0 as of 20130622 :

$ cat lra.c
int a, b, c;

void f(p1)
{
for(;;)
{
if(p1 ? : (c /= 0))
{
int d;

for(; d; d++)
{
for(b = 0; b  4; b++)
p1 /= p1;
lbl:
while(a);
}
}

if((c = 1))
goto lbl;
}
}

$ xgcc -w -O2 -funroll-loops lra.c
lra.c: In function ‘f’:
lra.c:23:1: internal compiler error: Maximum number of LRA constraint passes is
achieved (30)

 }
 ^
Please submit a full bug report,
with preprocessed source if appropriate.
See http://gcc.gnu.org/bugs.html for instructions.

[Bug libstdc++/57674] wrong distribution for std::binomial_distribution::operator()(g,param)

2013-06-22 Thread schlaffi at users dot sourceforge.net
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=57674

--- Comment #2 from schlaffi at users dot sourceforge.net ---
Created attachment 30338
  -- http://gcc.gnu.org/bugzilla/attachment.cgi?id=30338action=edit
corrected version of the example file

sorry, forgot one line, the output should be

distribution 1: p = 0.8, f = 0.798828
distribution 2: p = 0.3, f = 0.206055

(bad) vs.

distribution 1: p = 0.8, f = 0.793945
distribution 2: p = 0.3, f = 0.308594

(good)


[Bug fortran/31139] sum(w_re(1:nn,1)*fi(i(1:nn, ii))) up to 3.5x slower than C version

2013-06-22 Thread dominiq at lps dot ens.fr
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=31139

Dominique d'Humieres dominiq at lps dot ens.fr changed:

   What|Removed |Added

 Status|NEW |WAITING

--- Comment #8 from Dominique d'Humieres dominiq at lps dot ens.fr ---
 I have not tested this with latest trunk, but I wonder if any of the recent
 optimization work has improved this.  Can it be closed yet?

A quick test on a 2.5Ghz Core2Duo at revision 200321 with -Ofast shows

 Fortran:   0.330040932
 c_sse: 0.225150943
 c_struct:  0.227035046

and with -Ofast -funroll-loops

 Fortran:   0.213014960
 c_sse: 0.223238945
 c_struct:  0.209081888

The change occured between 4.5 and 4.6 (note that 4.6 and 4.7 gives 0.263675928
without -funroll-loops). Is this still an issue?


[Bug fortran/31298] F2003: use mod, operator(+) = operator(.userOp.) not supported

2013-06-22 Thread dominiq at lps dot ens.fr
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=31298

Dominique d'Humieres dominiq at lps dot ens.fr changed:

   What|Removed |Added

 Status|NEW |WAITING

--- Comment #16 from Dominique d'Humieres dominiq at lps dot ens.fr ---
Should not this PR be closed as FIXED (no activity for the past five years)?


[Bug fortran/31298] F2003: use mod, operator(+) = operator(.userOp.) not supported

2013-06-22 Thread burnus at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=31298

Tobias Burnus burnus at gcc dot gnu.org changed:

   What|Removed |Added

 Status|WAITING |NEW

--- Comment #17 from Tobias Burnus burnus at gcc dot gnu.org ---
(In reply to Dominique d'Humieres from comment #16)
 Should not this PR be closed as FIXED (no activity for the past five years)?

Of course not. It's still not implemented. By that argument, we could also
close bugs about UTIO or submodules as FIXED because they haven't be
implemented either.


[Bug other/57675] Complex division of NaN by zero not handled correctly

2013-06-22 Thread joseph at codesourcery dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=57675

--- Comment #2 from joseph at codesourcery dot com joseph at codesourcery dot 
com ---
N1399 has a detailed analysis of issues with complex multiply and divide 
in C99.  There was no consensus to adopt requirements in that detail, but 
N1496 was adopted with a more minimal fix for (1.0+1.0*I)/(0.0+NAN*I).  It 
appears that the GCC implementation does not suffer the particular issue 
being addressed in N1496.

http://www.open-std.org/jtc1/sc22/wg14/www/docs/n1399.txt
http://www.open-std.org/jtc1/sc22/wg14/www/docs/n1496.htm

I believe the model in N1399 (and more generally for NaNs in C99/C11 and 
the draft TS 18661 bindings to IEEE 754-2008; see e.g. how hypot(NaN, Inf) 
works) is that NaN+1.0i is considered (for a quiet NaN) to be 
unspecified-real+1.0i.  Dividing by zero then gives an unspecified (or 
not fully specified) infinity, so a result with one part infinity and one 
part NaN seems appropriate.


[Bug libstdc++/57674] wrong distribution for std::binomial_distribution::operator()(g,param)

2013-06-22 Thread paolo.carlini at oracle dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=57674

Paolo Carlini paolo.carlini at oracle dot com changed:

   What|Removed |Added

 Status|UNCONFIRMED |ASSIGNED
   Last reconfirmed||2013-06-22
   Assignee|unassigned at gcc dot gnu.org  |paolo.carlini at oracle 
dot com
   Target Milestone|--- |4.8.2
 Ever confirmed|0   |1

--- Comment #3 from Paolo Carlini paolo.carlini at oracle dot com ---
Thanks. It's indeed a stupid bug, but I would call it thinko more than typo (in
jargon): what is happening is that the operator (_M_waiting in particular) is
using the _M_q of the distribution itself (stored in _M_param._M_q), instead of
that coming with param, aka param._M_q. I'll fix it asap.


[Bug driver/57652] [4.7/4.8/4.9 Regression] collect2 does not clean up temporary files

2013-06-22 Thread dje at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=57652

David Edelsohn dje at gcc dot gnu.org changed:

   What|Removed |Added

 Status|NEW |RESOLVED
  Known to work||4.7.4, 4.8.2
 Resolution|--- |FIXED

--- Comment #3 from David Edelsohn dje at gcc dot gnu.org ---
Patch committed and backported.


[Bug c++/57677] New: Fstream should be allowed to move when returned from a function

2013-06-22 Thread mikhail_semenov at hotmail dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=57677

Bug ID: 57677
   Summary: Fstream should be allowed to move when returned from a
function
   Product: gcc
   Version: 4.8.1
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: c++
  Assignee: unassigned at gcc dot gnu.org
  Reporter: mikhail_semenov at hotmail dot com

Created attachment 30339
  -- http://gcc.gnu.org/bugzilla/attachment.cgi?id=30339action=edit
The program should compile and run for the ifstream.txt described above

Similar to the bug 53626 (reported before for version 4.7.0) for C++11.

The fstream should be able to open and be returned from a function: move should
be allowed to be used in this case. The program should run with the following
file contents (ifstream.txt):
My File
Some types are not amenable to copy semantics but can still be made movable.
For example:
(1)fstream
(2)unique_ptr (non-shared, non-copyable ownership)
(3)A type representing a thread of execution


[Bug libstdc++/53626] [C++11] move assignment for ifstream

2013-06-22 Thread paolo.carlini at oracle dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=53626

--- Comment #2 from Paolo Carlini paolo.carlini at oracle dot com ---
*** Bug 57677 has been marked as a duplicate of this bug. ***


[Bug c++/57677] Fstream should be allowed to move when returned from a function

2013-06-22 Thread paolo.carlini at oracle dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=57677

Paolo Carlini paolo.carlini at oracle dot com changed:

   What|Removed |Added

 Status|UNCONFIRMED |RESOLVED
 Resolution|--- |DUPLICATE

--- Comment #1 from Paolo Carlini paolo.carlini at oracle dot com ---
Dup.

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


[Bug other/57675] Complex division of NaN by zero not handled correctly

2013-06-22 Thread ian at airs dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=57675

Ian Lance Taylor ian at airs dot com changed:

   What|Removed |Added

 Status|UNCONFIRMED |RESOLVED
 Resolution|--- |INVALID

--- Comment #3 from Ian Lance Taylor ian at airs dot com ---
Closing as being C standard conformant.

Now I have to decide what to do with Go.


[Bug fortran/40958] module files too large

2013-06-22 Thread jb at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=40958

Janne Blomqvist jb at gcc dot gnu.org changed:

   What|Removed |Added

 Status|WAITING |REOPENED

--- Comment #13 from Janne Blomqvist jb at gcc dot gnu.org ---
(In reply to Dominique d'Humieres from comment #12)
 Joost, is it fixed after revision 198023? If yes, could you close the PR as
 FIXED?

With the introduction of the temp buffer for parsing modules the excessive
lseek() calls have been eliminated, and with the introduction of compressed
module files the total size of module files on disk have been reduced by an
order of magnitude for large projects.

However, the fundamental(?) issue of module sizes growing exponentially with
deep module hierarchies still remains. The solution to that is to not include
transitive dependencies, which in turn would require a module cache for good
performance. Whether that is worth doing, and who is willing and able to do it,
is unclear.


[Bug c++/57678] New: too many errors for bad template parameter

2013-06-22 Thread manu at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=57678

Bug ID: 57678
   Summary: too many errors for bad template parameter
   Product: gcc
   Version: 4.9.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: c++
  Assignee: unassigned at gcc dot gnu.org
  Reporter: manu at gcc dot gnu.org

templateint N int foo(int a) { return N; }

void bar(void)
{
foox(5);
}


triggers:

test.cpp:5:9: error: ‘x’ was not declared in this scope
 foox(5);
 ^
test.cpp:5:13: error: no matching function for call to ‘foo(int)’
 foox(5);
 ^
test.cpp:5:13: note: candidate is:
test.cpp:1:21: note: templateint N int foo(int)
 templateint N int foo(int a) { return N; }
 ^
test.cpp:1:21: note:   template argument deduction/substitution failed:
test.cpp:5:13: error: template argument 1 is invalid
 foox(5);
 ^

The second error is not useful (and the last error should be a note), why
even try to match the function call if the template argument was invalid?

Is there any case where the template argument is invalid and the invalidity is
not triggered by a previous error?

Clang:

test.cpp:5:9: error: use of undeclared identifier 'x'
foox(5);
^

[Bug c++/57678] too many errors for bad template parameter

2013-06-22 Thread pinskia at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=57678

--- Comment #1 from Andrew Pinski pinskia at gcc dot gnu.org ---
I think this is due to once a undeclared decl has been found, its type becomes
int which I think is just wrong.  We should use error_mark_node and then handle
the fall out from there.

There have been a few bugs with errors like this which points to the same issue
of treating undeclared decls as ints.


[Bug c++/57038] Latest libreoffice compilation fails with enabled LTO

2013-06-22 Thread hubicka at ucw dot cz
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=57038

--- Comment #29 from Jan Hubicka hubicka at ucw dot cz ---
 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=57038
 
 --- Comment #28 from Martin Liška marxin.liska at gmail dot com ---
 Gdb instruction dump of ScDocument::CalcAll, place where SIGSEGV was received
 is marked with '', address: 0x2aaab390c19d 
 ??
??0x2aaab390c188 _ZN10ScDocument7CalcAllEv+8push   %rbp  
   
   
  
 ??
??0x2aaab390c189 _ZN10ScDocument7CalcAllEv+9mov%rdi,%rbp 
   
   
  
   ??
   ??0x2aaab390c19d _ZN10ScDocument7CalcAllEv+29   mov0x1c8(%rbp),%rbx  
   

OK, so it seems to ICE on reading RBP+0x1c8 where RBP is the first parameter of
CalcAll,
so it is necessary to debug why it is wrong.
I think you can just LTO re-link with -g and get source level debugging...
Did you check if non-LTO build works?

Honza

[Bug c++/57038] Latest libreoffice compilation fails with enabled LTO

2013-06-22 Thread hubicka at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=57038

--- Comment #30 from Jan Hubicka hubicka at gcc dot gnu.org ---
BTW the first parameter is this pointer ;)


[Bug libstdc++/57674] wrong distribution for std::binomial_distribution::operator()(g,param)

2013-06-22 Thread paolo.carlini at oracle dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=57674

Paolo Carlini paolo.carlini at oracle dot com changed:

   What|Removed |Added

 Status|ASSIGNED|RESOLVED
 Resolution|--- |FIXED

--- Comment #4 from Paolo Carlini paolo.carlini at oracle dot com ---
Fixed mainline and 4.8.2.


[Bug c++/57679] New: c++11: ICE on template type alias to enum

2013-06-22 Thread schlaffi at users dot sourceforge.net
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=57679

Bug ID: 57679
   Summary: c++11: ICE on template type alias to enum
   Product: gcc
   Version: 4.7.2
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: c++
  Assignee: unassigned at gcc dot gnu.org
  Reporter: schlaffi at users dot sourceforge.net

struct B{ enum C{}; };
template typename T using A=typename T::C;
AB d;

triggers an ICE:

y.cc:3:4: internal compiler error: Segmentation fault

I would expect that this is even valid code? The struct B embedding is not
needed --- I just thought that using A=T look very wired. llvm compiles
without complains.


[Bug c++/57208] Latest chromium compilation fails with enabled LTO

2013-06-22 Thread marxin.liska at gmail dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=57208

--- Comment #21 from Martin Liška marxin.liska at gmail dot com ---
Ltrans grep


marxin@marxinbox /ssd/chrome-dumps $ grep
_ZN3net12_GLOBAL__N_113DnsTCPAttempt12OnIOCompleteEi chrome.ltrans*
Binary file chrome.ltrans16.o matches
chrome.ltrans16.s:leaq   
_ZN3net12_GLOBAL__N_113DnsTCPAttempt12OnIOCompleteEi(%rip), %rax
chrome.ltrans29.000i.cgraph:  References:
_ZN3net12_GLOBAL__N_113DnsTCPAttempt12OnIOCompleteEi/8859591 (addr)
chrome.ltrans29.000i.cgraph:  References:
_ZN3net12_GLOBAL__N_113DnsTCPAttempt12OnIOCompleteEi/8859591 (addr)
chrome.ltrans29.000i.cgraph:  References:
_ZN3net12_GLOBAL__N_113DnsTCPAttempt12OnIOCompleteEi/8859591 (addr)
chrome.ltrans29.000i.cgraph:  References:
_ZN3net12_GLOBAL__N_113DnsTCPAttempt12OnIOCompleteEi/8859591 (addr)
chrome.ltrans29.000i.cgraph:  Called by:
_ZN3net12_GLOBAL__N_113DnsTCPAttempt12OnIOCompleteEi/8859591 (1.00 per call)
_ZN3net12_GLOBAL__N_113DnsTCPAttempt5StartERKN4base8CallbackIFviEEE.lto_priv.62289/8859580
(0.62 per call) 
chrome.ltrans29.000i.cgraph:_ZN3net12_GLOBAL__N_113DnsTCPAttempt12OnIOCompleteEi/8859591
(OnIOComplete) @0x7ff6f304a5f0
chrome.ltrans29.000i.cgraph:  References:
_ZN3net12_GLOBAL__N_113DnsTCPAttempt12OnIOCompleteEi/8859591 (addr)
chrome.ltrans29.000i.cgraph:  References:
_ZN3net12_GLOBAL__N_113DnsTCPAttempt12OnIOCompleteEi/8859591 (addr)
chrome.ltrans29.000i.cgraph:  References:
_ZN3net12_GLOBAL__N_113DnsTCPAttempt12OnIOCompleteEi/8859591 (addr)
chrome.ltrans29.000i.cgraph:  References:
_ZN3net12_GLOBAL__N_113DnsTCPAttempt12OnIOCompleteEi/8859591 (addr)
chrome.ltrans29.000i.cgraph:  References:
_ZN3net12_GLOBAL__N_113DnsTCPAttempt12OnIOCompleteEi/8859591 (addr)
chrome.ltrans29.000i.cgraph:  Called by:
_ZN3net12_GLOBAL__N_113DnsTCPAttempt12OnIOCompleteEi/8859591 (1.00 per call)
_ZN3net12_GLOBAL__N_113DnsTCPAttempt5StartERKN4base8CallbackIFviEEE.lto_priv.62289/8859580
(0.62 per call) 
chrome.ltrans29.000i.cgraph:_ZN3net12_GLOBAL__N_113DnsTCPAttempt12OnIOCompleteEi/8859591
(OnIOComplete) @0x7ff6f304a5f0
chrome.ltrans29.000i.cgraph:  References:
_ZN3net12_GLOBAL__N_113DnsTCPAttempt12OnIOCompleteEi/8859591 (addr)
chrome.ltrans29.000i.cgraph:_ZN3net12_GLOBAL__N_113DnsTCPAttempt12OnIOCompleteEi/8859591
(OnIOComplete) @0x7ff6f304a5f0
chrome.ltrans29.000i.cgraph:  References:
_ZN3net12_GLOBAL__N_113DnsTCPAttempt12OnIOCompleteEi/8859591 (addr)
chrome.ltrans29.045i.cp:;; Function OnIOComplete
(_ZN3net12_GLOBAL__N_113DnsTCPAttempt12OnIOCompleteEi, funcdef_no=1376,
decl_uid=894468, symbol_order=8859591)
chrome.ltrans29.047i.inline:;; Function OnIOComplete
(_ZN3net12_GLOBAL__N_113DnsTCPAttempt12OnIOCompleteEi, funcdef_no=1376,
decl_uid=894468, symbol_order=8859591)
Binary file chrome.ltrans29.o matches
chrome.ltrans29.s:leaq   
_ZN3net12_GLOBAL__N_113DnsTCPAttempt12OnIOCompleteEi(%rip), %rsi
chrome.ltrans29.s:leaq   
_ZN3net12_GLOBAL__N_113DnsTCPAttempt12OnIOCompleteEi(%rip), %rsi
chrome.ltrans29.s:.type   
_ZN3net12_GLOBAL__N_113DnsTCPAttempt12OnIOCompleteEi, @function
chrome.ltrans29.s:_ZN3net12_GLOBAL__N_113DnsTCPAttempt12OnIOCompleteEi:
chrome.ltrans29.s:.size   
_ZN3net12_GLOBAL__N_113DnsTCPAttempt12OnIOCompleteEi,
.-_ZN3net12_GLOBAL__N_113DnsTCPAttempt12OnIOCompleteEi

[Bug c++/57208] Latest chromium compilation fails with enabled LTO

2013-06-22 Thread marxin.liska at gmail dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=57208

--- Comment #22 from Martin Liška marxin.liska at gmail dot com ---
Created attachment 30340
  -- http://gcc.gnu.org/bugzilla/attachment.cgi?id=30340action=edit
chrome.ltrans16.s

[Bug c++/57679] c++11: ICE on template type alias to enum

2013-06-22 Thread paolo.carlini at oracle dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=57679

Paolo Carlini paolo.carlini at oracle dot com changed:

   What|Removed |Added

 Status|UNCONFIRMED |RESOLVED
  Known to work||4.8.0, 4.9.0
 Resolution|--- |FIXED

--- Comment #1 from Paolo Carlini paolo.carlini at oracle dot com ---
This is fixed in 4.8.0.


[Bug c++/57208] Latest chromium compilation fails with enabled LTO

2013-06-22 Thread hubicka at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=57208

--- Comment #23 from Jan Hubicka hubicka at gcc dot gnu.org ---
It seems late optimizers translate

cloning Bind to
_ZN4base4BindIMN3net12_GLOBAL__N_113DnsTCPAttemptEFviENS_8internal17UnretainedWrapperIS3_NS_8CallbackINS6_9BindStateINS6_13FunctorTraitsIT_E12RunnableTypeENSD_7RunTypeEFvNS6_19CallbackParamTraitsIT0_E11StorageTypeEEE14UnboundRunTypeEEESC_RKSH_.constprop.12480
Bind (struct 
{   
  void DnsTCPAttempt::T2bc0a (struct DnsTCPAttempt *, int) * __pfn;
  long int __delta;
} functor, const struct UnretainedWrapper  p1)
{   
  void DnsTCPAttempt::T2bc0a (struct DnsTCPAttempt *, int) * method$__pfn;
  long int method$__delta;

  bb 2:
  method$__pfn_10 = MEM[(const struct  )functor];
  method$__delta_11 = MEM[(const struct  )functor + 8];
  _5 = operator new (40);
  _12 = MEM[(struct RefCountedThreadSafe *)_5 + 8B].D.4332;
  __base_ctor  (_12);
  MEM[(struct BindStateBase *)_5]._vptr.BindStateBase = MEM[(void
*)_ZTVN4base8internal13BindStateBaseE + 16B];
  MEM[(struct BindState *)_5].D.961227._vptr.BindStateBase = MEM[(void
*)_ZTVN4base8internal9BindStateINS0_15RunnableAdapterIMN3net12_GLOBAL__N_113DnsTCPAttemptEFviEEEFvPS5_iEFvNS0_17UnretainedWrapperIS5_E
+ 16B];
  MEM[(struct BindState *)_5 + 16B] = method$__pfn_10;
  MEM[(struct BindState *)_5 + 24B] = method$__delta_11;
  MEM[(struct BindState *)_5].p1_ = *p1_6(D);
  _13 = _8(D)-D.42504;
  __base_ctor  (_13, _5);
  _8(D)-D.42504.polymorphic_invoke_ = Run;
  return _8(D);

}

into 
.globl 
_ZN4base4BindIMN3net12_GLOBAL__N_113DnsTCPAttemptEFviENS_8internal17UnretainedWrapperIS3_NS_8CallbackINS6_9BindStateINS6_13FunctorTraitsIT_E12RunnableTypeENSD_7RunType
.hidden
_ZN4base4BindIMN3net12_GLOBAL__N_113DnsTCPAttemptEFviENS_8internal17UnretainedWrapperIS3_NS_8CallbackINS6_9BindStateINS6_13FunctorTraitsIT_E12RunnableTypeENSD_7RunType
.type  
_ZN4base4BindIMN3net12_GLOBAL__N_113DnsTCPAttemptEFviENS_8internal17UnretainedWrapperIS3_NS_8CallbackINS6_9BindStateINS6_13FunctorTraitsIT_E12RunnableTypeENSD_7RunType
_ZN4base4BindIMN3net12_GLOBAL__N_113DnsTCPAttemptEFviENS_8internal17UnretainedWrapperIS3_NS_8CallbackINS6_9BindStateINS6_13FunctorTraitsIT_E12RunnableTypeENSD_7RunTypeEFvNS6_19Callbac
.LFB10639:
.cfi_startproc
pushq   %rbp
.cfi_def_cfa_offset 16
.cfi_offset 6, -16
movq%rcx, %rbp
pushq   %rbx
.cfi_def_cfa_offset 24
.cfi_offset 3, -24
movq%rdi, %rbx
movl$40, %edi
subq$8, %rsp
.cfi_def_cfa_offset 32
call_Znwm@PLT
movl$0, 8(%rax)
movq%rax, %rsi
leaq   
16+_ZTVN4base8internal9BindStateINS0_15RunnableAdapterIMN3net12_GLOBAL__N_113DnsTCPAttemptEFviEEEFvPS5_iEFvNS0_17UnretainedWrapperIS5_E.lto_priv.73096(%rip),
%rax
movq$0, 24(%rsi)
movq%rbx, %rdi
movq%rax, (%rsi)
leaq_ZN3net12_GLOBAL__N_113DnsTCPAttempt12OnIOCompleteEi(%rip),
%rax
movq%rax, 16(%rsi)
movq0(%rbp), %rax
movq%rax, 32(%rsi)
call_ZN4base8internal12CallbackBaseC2EPNS0_13BindStateBaseE
leaq   
_ZN4base8internal7InvokerILi1ENS0_9BindStateINS0_15RunnableAdapterIMN3net12_GLOBAL__N_113DnsTCPAttemptEFviEEEFvPS6_iEFvNS0_17UnretainedWrapperIS6_ESB_E3RunEPNS0_13Bind
   movq%rax, 8(%rbx)
addq$8, %rsp
.cfi_def_cfa_offset 24 
movq%rbx, %rax
popq%rbx
.cfi_def_cfa_offset 16
popq%rbp
.cfi_def_cfa_offset 8
ret
.cfi_endproc
.LFE10639:

So someone folds
  MEM[(struct BindStateBase *)_5]._vptr.BindStateBase = MEM[(void
*)_ZTVN4base8internal13BindStateBaseE + 16B];
  MEM[(struct BindState *)_5].D.961227._vptr.BindStateBase = MEM[(void
*)_ZTVN4base8internal9BindStateINS0_15RunnableAdapterIMN3net12_GLOBAL__N_113DnsTCPAttemptEFviEEEFvPS5_iEFvNS0_17UnretainedWrapperIS5_E
+ 16B];
  MEM[(struct BindState *)_5 + 16B] = method$__pfn_10;
  MEM[(struct BindState *)_5 + 24B] = method$__delta_11;
  MEM[(struct BindState *)_5].p1_ = *p1_6(D);

into reference to the symbol that is in other ltrans and not seen by
partitioning...


[Bug c++/57208] Latest chromium compilation fails with enabled LTO

2013-06-22 Thread hubicka at ucw dot cz
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=57208

--- Comment #24 from Jan Hubicka hubicka at ucw dot cz ---
does this patch help?


[Bug libstdc++/57674] wrong distribution for std::binomial_distribution::operator()(g,param)

2013-06-22 Thread schlaffi at users dot sourceforge.net
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=57674

--- Comment #5 from schlaffi at users dot sourceforge.net ---
yes, it's fixed :) I tested various examples (also large param.t).


[Bug c++/57677] Fstream should be allowed to move when returned from a function

2013-06-22 Thread redi at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=57677

--- Comment #2 from Jonathan Wakely redi at gcc dot gnu.org ---
As I said on your other bug, this is documented as missing, you don't need to
report a dup of your own bug :)


[Bug middle-end/56888] memcpy implementation optimized as a call to memcpy

2013-06-22 Thread j...@deseret-tech.com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=56888

Jeff Cook j...@deseret-tech.com changed:

   What|Removed |Added

 CC||j...@deseret-tech.com

--- Comment #9 from Jeff Cook j...@deseret-tech.com ---
FYI this issue affects WINE. A workaround has been contributed as a
modification to WINE's configuration scripts. See
http://bugs.winehq.org/show_bug.cgi?id=33521 .


[Bug libstdc++/53631] [C++11] regex is unimplemented

2013-06-22 Thread zhaoxi.du at gmail dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=53631

Simbaba zhaoxi.du at gmail dot com changed:

   What|Removed |Added

 CC||zhaoxi.du at gmail dot com

--- Comment #14 from Simbaba zhaoxi.du at gmail dot com ---
Most guy need this feature, but just partial implemented. 
However, we have many choice, maybe CLANG or posix, or perl-regex.


[Bug target/57680] New: xgcc terminates with SIGILL

2013-06-22 Thread jojelino at gmail dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=57680

Bug ID: 57680
   Summary: xgcc terminates with SIGILL
   Product: gcc
   Version: 4.8.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: target
  Assignee: unassigned at gcc dot gnu.org
  Reporter: jojelino at gmail dot com
  Host: i686-pc-cygwin
Target: i686-pc-cygwin
 Build: i686-pc-cygwin

$ gdb --args ./xgcc -B./ -B/usr/i686-pc-cygwin/bin/ -isystem
/usr/i686-pc-cygwin/include -isystem /usr/i686-pc-cygwin/sys-include
-L/tmp/gcc/host-i686-pc-cygwin/gcc/../ld -dumpspecs
GNU gdb (GDB) 7.6.50.20130508-cvs (cygwin-special)
Copyright (C) 2013 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later http://gnu.org/licenses/gpl.html
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.  Type show copying
and show warranty for details.
This GDB was configured as i686-cygwin.
Type show configuration for configuration details.
For bug reporting instructions, please see:
http://www.gnu.org/software/gdb/bugs/...

warning: the current range check setting does not match the language.

Whether backtraces should continue past the entry point of a program is off.
Reading symbols from /tmp/gcc/host-i686-pc-cygwin/gcc/xgcc...done.
warning: File /tmp/gcc/host-i686-pc-cygwin/gcc/.gdbinit auto-loading has been
declined by your `auto-load safe-path' set to $debugdir:$datadir/auto-load.
To enable execution of this file add
add-auto-load-safe-path /tmp/gcc/host-i686-pc-cygwin/gcc/.gdbinit
line to your configuration file /home/Administrator/.gdbinit.
To completely disable this security protection add
set auto-load safe-path /
line to your configuration file /home/Administrator/.gdbinit.
For more information about this security protection see the
Auto-loading safe path section in the GDB manual.  E.g., run from the shell:
info (gdb)Auto-loading safe path
(gdb) r
Starting program: /tmp/gcc/host-i686-pc-cygwin/gcc/xgcc -B./
-B/usr/i686-pc-cygwin/bin/ -isystem /usr/i686-pc-cygwin/include -isystem
/usr/i686-pc-cygwin/sys-include -L/tmp/gcc/host-i686-pc-cygwin/gcc/../ld
-dumpspecs
[New Thread 3320.0xdf4]
warning: the debug information found in /usr/bin/cygwin1.dbg does not match
/usr/bin/cygwin1.dll (CRC mismatch).

[New Thread 3320.0x1dc8]
*asm:

.
..
...

Program received signal SIGILL, Illegal instruction.
0x0046e010 in __deregister_frame_info_bases (
begin=0x611623b5 __call_exitprocs+245)
at ../.././libgcc/unwind-dw2-fde.c:185
185   for (p = unseen_objects; *p ; p = (*p)-next)
(gdb) bt
#0  0x0046e010 in __deregister_frame_info_bases (
begin=0x611623b5 __call_exitprocs+245)
at ../.././libgcc/unwind-dw2-fde.c:185
#1  0x013aa8e8 in ?? ()
Backtrace stopped: previous frame inner to this frame (corrupt stack?)


[Bug target/57680] [META-BUG][target]deregister_frame_fn is set to invalid address in cygming-crtbegin.c:__gcc_deregister_frame due to unknown reason.

2013-06-22 Thread jojelino at gmail dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=57680

gee jojelino at gmail dot com changed:

   What|Removed |Added

Summary|deregister_frame_fn is set  |[META-BUG][target]deregiste
   |to invalid address in   |r_frame_fn is set to
   |cygming-crtbegin.c:__gcc_de |invalid address in
   |register_frame due to   |cygming-crtbegin.c:__gcc_de
   |unknown reason. |register_frame due to
   ||unknown reason.

--- Comment #1 from gee jojelino at gmail dot com ---
bootstrap failed with faulting libgcc static library.

Dump of assembler code for function __gcc_deregister_frame:
   0x00401160 +0: push   %ebp
   0x00401161 +1: mov%esp,%ebp
   0x00401163 +3: sub$0x18,%esp
   0x00401166 +6: movl   $0x475000,(%esp)
   0x0040116d +13:call   *0x5a0480
   0x00401173 +19:mov$0x46e010,%edx
= 0x00401178 +24:sub$0x4,%esp
   0x0040117b +27:test   %eax,%eax
   0x0040117d +29:je 0x401195 __gcc_deregister_frame+53
   0x0040117f +31:movl   $0x475047,0x4(%esp)
   0x00401187 +39:mov%eax,(%esp)
   0x0040118a +42:call   *0x5a0484
   0x00401190 +48:sub$0x8,%esp
   0x00401193 +51:mov%eax,%edx
   0x00401195 +53:test   %edx,%edx
   0x00401197 +55:je 0x4011a2 __gcc_deregister_frame+66
   0x00401199 +57:movl   $0x591000,(%esp)
   0x004011a0 +64:call   *%edx
   0x004011a2 +66:leave
   0x004011a3 +67:ret
(gdb) i li *0x46e010
Line 185 of ../.././libgcc/unwind-dw2-fde.c
   starts at address 0x46e00f __deregister_frame_info_bases+159
   and ends at 0x46e020 __deregister_frame_info.

why cygming-crtbegin.c:154 set invalid function pointer address??? it should be
__deregister_frame_info 
(gdb) x/i __deregister_frame_info
   0x46e020 __deregister_frame_info:
jmp0x46df70 __deregister_frame_info_bases

i think gcc is corrupted in calculating function pointer address.
and the failed bootstrap was using gcc with following version.
Using built-in specs.
COLLECT_GCC=gcc
COLLECT_LTO_WRAPPER=/usr/libexec/gcc/i686-pc-cygwin/4.9.0/lto-wrapper.exe
Target: i686-pc-cygwin
Configured with: ./configure --config-cache --prefix=/usr
--disable-win32-registry --enable-threads=single
--enable-languages=c,c++,lto,fortran --with-win32-nlsapi=unicode --enable-tls
--disable-bootstrap --enable-shared --disable-sjlj-exceptions --enable-gomp
--enable-cloog-backend=isl LTLDFLAGS=-no-undefined
lt_cv_deplibs_check_method=pass_all : (reconfigured) ./configure --config-cache
--prefix=/usr --disable-win32-registry --enable-threads=win32
--with-win32-nlsapi=unicode --enable-tls --disable-bootstrap --enable-shared
--disable-sjlj-exceptions --enable-gomp --enable-cloog-backend=isl
LTLDFLAGS=-no-undefined lt_cv_deplibs_check_method=pass_all
--enable-languages=c,c++,fortran,lto --no-create --no-recursion
Thread model: single
gcc version 4.9.0 20130516 (experimental) (GCC)


[Bug target/57680] [META-BUG][target]deregister_frame_fn is set to invalid address in cygming-crtbegin.c:__gcc_deregister_frame due to unknown reason.

2013-06-22 Thread jojelino at gmail dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=57680

--- Comment #2 from gee jojelino at gmail dot com ---
(gdb) x/i 0x46e010
   0x46e010 __deregister_frame_info_bases+160:fs

which is cause of SIGILL


[Bug fortran/53957] Polyhedron 11 benchmark: MP_PROP_DESIGN twice as long as other compiler

2013-06-22 Thread prop_design at yahoo dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=53957

--- Comment #15 from Anthony Falzone prop_design at yahoo dot com ---
(In reply to Dominique d'Humieres from comment #14)
 Anthony, could you provide a reduced test showing the problem?

Hi Dominique,

About the most reduced I can think of is PROP_DESIGN_ANALYSIS.  It contains the
core calculations that are required to determine aircraft propeller
performance.  PROP_DESIGN_ANALYSIS_BENCHMARK just adds some looping options
that in my mind could run in parallel.  However, I don't know anything about
parallel programming and when I tried some Fortran compilers with
auto-parallelization non of them can pick up on the loops that too me seem
obviously parallel.  So what I think and what is currently feasible with
auto-parallelization are not the same.

In any event, I have noticed that just using O3 optimizations there is a
substantial difference between Intel Fortran and gfortran.  So I am just
confirming what Tobias is saying here in this bug report.

If PROP_DESIGN_ANALYSIS_BENCHMARK is too complex of a test case for you the
only thing I can think to do is take PROP_DESIGN_ANALYSIS and strip out most of
the end parts where various outputs are created.  So the program would just
take the inputs run the minimum calculations with the least looping possible
and output pretty much nothing.  It wouldn't be hard for me to do something
like that if it would be of any benefit to you, I'm not sure.

Also, if there is anything programming wise that you would like changed for
some reason as far as Fortran syntax, I can try that too.  My knowledge of
Fortran is fairly basic.  I tried to stick strictly to Fortran 77, since that
is what I was trained in and have a lot of experience with.  I don't know any
other programming languages or even any other versions of Fortran such as 90/95
etc...

Anthony