[Bug fortran/34640] ICE with c_f_pointer

2008-01-03 Thread burnus at gcc dot gnu dot org


--- Comment #2 from burnus at gcc dot gnu dot org  2008-01-03 08:19 ---
Valgrind:

==3611== Invalid read of size 8
==3611==at 0x4A4029: gfc_trans_pointer_assignment (trans-expr.c:3756)
==3611==by 0x485AC7: gfc_trans_code (trans.c:1002)
==3611==by 0x49B7B9: gfc_generate_function_code (trans-decl.c:3298)


-- 

burnus at gcc dot gnu dot org changed:

   What|Removed |Added

OtherBugsDependingO||32630
  nThis||
 Status|UNCONFIRMED |NEW
 Ever Confirmed|0   |1
   Keywords||ice-on-valid-code
   Last reconfirmed|-00-00 00:00:00 |2008-01-03 08:19:08
   date||


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



[Bug tree-optimization/29484] [4.0/4.1/4.2/4.3 Regression] tree-inline.c bug with local static vars

2008-01-03 Thread jakub at gcc dot gnu dot org


--- Comment #5 from jakub at gcc dot gnu dot org  2008-01-03 08:34 ---
Subject: Bug 29484

Author: jakub
Date: Thu Jan  3 08:33:57 2008
New Revision: 131300

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=131300
Log:
PR tree-optimization/29484
* tree-inline.c (inline_forbidden_p_2): New function.
(inline_forbidden_p): Disallow inlining if some static var
has an address of a local LABEL_DECL in its initializer.
* doc/extend.texi (Labels as Values): Document &&foo behaviour
vs. inlining.

* gcc.c-torture/execute/20071220-1.c: New test.
* gcc.c-torture/execute/20071220-2.c: New test.

Added:
trunk/gcc/testsuite/gcc.c-torture/execute/20071220-1.c
trunk/gcc/testsuite/gcc.c-torture/execute/20071220-2.c
Modified:
trunk/gcc/ChangeLog
trunk/gcc/doc/extend.texi
trunk/gcc/testsuite/ChangeLog
trunk/gcc/tree-inline.c


-- 


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



[Bug tree-optimization/34591] [4.3 Regression] internal compiler error: in cost_for_stmt, at tree-vect-transform.c:98

2008-01-03 Thread fhimpe at telenet dot be


--- Comment #5 from fhimpe at telenet dot be  2008-01-03 08:58 ---
I can confirm that pulseaudio 0.9.8 sources which caused the crash, compile
fine now with the latest gcc 4.3 snapshot.


-- 


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



[Bug middle-end/31309] 6 byte assignment at end of structure reads/writes past end of structure causing SEGV when that memory is not accessable.

2008-01-03 Thread rguenth at gcc dot gnu dot org


--- Comment #12 from rguenth at gcc dot gnu dot org  2008-01-03 09:05 
---
It's not marked as regression, so it shouldn't have a release target at all.


-- 

rguenth at gcc dot gnu dot org changed:

   What|Removed |Added

   Target Milestone|4.1.3   |---


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



[Bug ada/34646] Ada runtime missing floating point and error handler initialization on OpenBSD

2008-01-03 Thread sam at gcc dot gnu dot org


-- 

sam at gcc dot gnu dot org changed:

   What|Removed |Added

 AssignedTo|unassigned at gcc dot gnu   |sam at gcc dot gnu dot org
   |dot org |
 Status|UNCONFIRMED |ASSIGNED
 Ever Confirmed|0   |1
   Last reconfirmed|-00-00 00:00:00 |2008-01-03 09:09:52
   date||


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



[Bug ada/34647] Ada runtime includes unsafe calls to mktemp and tmpname on OpenBSD

2008-01-03 Thread sam at gcc dot gnu dot org


-- 

sam at gcc dot gnu dot org changed:

   What|Removed |Added

 AssignedTo|unassigned at gcc dot gnu   |sam at gcc dot gnu dot org
   |dot org |
 Status|UNCONFIRMED |ASSIGNED
 Ever Confirmed|0   |1
   Last reconfirmed|-00-00 00:00:00 |2008-01-03 09:09:59
   date||


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



[Bug fortran/34640] ICE when assigning item of a derived-component to a pointer

2008-01-03 Thread burnus at gcc dot gnu dot org


--- Comment #3 from burnus at gcc dot gnu dot org  2008-01-03 09:14 ---
Reduced test; has nothing to do with BIND(C). I am not 100% sure it is valid.
(Actually, glancing at the code, I had said it is invalid). However, it gives
no error/warning (or ICE) with other compilers such as NAG f95, g95, openf95,
ifort, which implies that it is presumably valid.

MODULE test
  IMPLICIT NONE
  TYPE :: my_type
INTEGER :: value
  END TYPE
CONTAINS
  SUBROUTINE get_values(values)
INTEGER,POINTER :: values(:)
TYPE(my_type),POINTER :: d(:)
values => d(:)%value
  END SUBROUTINE
END MODULE


-- 

burnus at gcc dot gnu dot org changed:

   What|Removed |Added

OtherBugsDependingO|32630   |32834
  nThis||
  GCC build triplet|20080102 (experimental) |
   |[trunk revision 131253] |
   GCC host triplet|i686-pc-linux-gnu   |
 GCC target triplet|GNU Fortran (GCC) 4.3.0 |
Summary|ICE with c_f_pointer|ICE when assigning item of a
   ||derived-component to a
   ||pointer


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



[Bug rtl-optimization/11832] Optimization of common code in switch statements

2008-01-03 Thread aldot at gcc dot gnu dot org


--- Comment #6 from aldot at gcc dot gnu dot org  2008-01-03 09:19 ---
Dummy sample that has a hoisting opportunity:

int bazoo (unsigned int in)
{
  int i = 0;
  if (in >= 0)
++i; /* hoist */
  if (in >= 1)
++i;
  if (in >= 2)
++i;
  if (in >= 3)
++i;
  if (in >= 4)
++i;
  return i;
}


-- 


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



[Bug ada/34645] Ada.Text_IO.Get_Immediate does not work on OpenBSD

2008-01-03 Thread sam at gcc dot gnu dot org


-- 

sam at gcc dot gnu dot org changed:

   What|Removed |Added

 AssignedTo|unassigned at gcc dot gnu   |sam at gcc dot gnu dot org
   |dot org |
 Status|UNCONFIRMED |ASSIGNED
 Ever Confirmed|0   |1
   Last reconfirmed|-00-00 00:00:00 |2008-01-03 09:09:45
   date||


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



[Bug ada/34644] Ada runtime build failure on OpenBSD, missing clearenv()

2008-01-03 Thread sam at gcc dot gnu dot org


-- 

sam at gcc dot gnu dot org changed:

   What|Removed |Added

 AssignedTo|unassigned at gcc dot gnu   |sam at gcc dot gnu dot org
   |dot org |
 Status|UNCONFIRMED |ASSIGNED
 Ever Confirmed|0   |1
   Last reconfirmed|-00-00 00:00:00 |2008-01-03 09:09:39
   date||


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



[Bug ada/34645] Ada.Text_IO.Get_Immediate does not work on OpenBSD

2008-01-03 Thread sam at gcc dot gnu dot org


--- Comment #2 from sam at gcc dot gnu dot org  2008-01-03 09:37 ---
Subject: Bug 34645

Author: sam
Date: Thu Jan  3 09:35:04 2008
New Revision: 131301

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=131301
Log:
2008-01-03  Tero Koskinen <[EMAIL PROTECTED]>

gcc/ada/
PR ada/34647
* adaint.c (__gnat_open_new_temp, __gnat_tmp_name): Use mkstemp()
on OpenBSD as is done on other BSD systems.

PR ada/34645
* sysdep.c (__gnat_ttyname, getc_immediate_nowait,
getc_immediate_common): Treat OpenBSD as FreeBSD regarding immediate
I/O.

PR ada/34644
* env.c (__gnat_clearenv): Treat OpenBSD as other BSD systems missing
clearenv().

PR ada/34646
* init.c (__gnat_error_handler, __gnat_install_handler,
__gnat_init_float): Define for OpenBSD.

* initialize.c (__gnat_initialize): Define for OpenBSD.

Modified:
trunk/gcc/ada/ChangeLog
trunk/gcc/ada/adaint.c
trunk/gcc/ada/env.c
trunk/gcc/ada/init.c
trunk/gcc/ada/initialize.c
trunk/gcc/ada/sysdep.c


-- 


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



[Bug ada/34644] Ada runtime build failure on OpenBSD, missing clearenv()

2008-01-03 Thread sam at gcc dot gnu dot org


--- Comment #2 from sam at gcc dot gnu dot org  2008-01-03 09:38 ---
Patch committed, thanks.


-- 

sam at gcc dot gnu dot org changed:

   What|Removed |Added

 Status|ASSIGNED|RESOLVED
 Resolution||FIXED
   Target Milestone|--- |4.3.0


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



[Bug ada/34644] Ada runtime build failure on OpenBSD, missing clearenv()

2008-01-03 Thread sam at gcc dot gnu dot org


--- Comment #3 from sam at gcc dot gnu dot org  2008-01-03 09:38 ---
Subject: Bug 34644

Author: sam
Date: Thu Jan  3 09:35:04 2008
New Revision: 131301

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=131301
Log:
2008-01-03  Tero Koskinen <[EMAIL PROTECTED]>

gcc/ada/
PR ada/34647
* adaint.c (__gnat_open_new_temp, __gnat_tmp_name): Use mkstemp()
on OpenBSD as is done on other BSD systems.

PR ada/34645
* sysdep.c (__gnat_ttyname, getc_immediate_nowait,
getc_immediate_common): Treat OpenBSD as FreeBSD regarding immediate
I/O.

PR ada/34644
* env.c (__gnat_clearenv): Treat OpenBSD as other BSD systems missing
clearenv().

PR ada/34646
* init.c (__gnat_error_handler, __gnat_install_handler,
__gnat_init_float): Define for OpenBSD.

* initialize.c (__gnat_initialize): Define for OpenBSD.

Modified:
trunk/gcc/ada/ChangeLog
trunk/gcc/ada/adaint.c
trunk/gcc/ada/env.c
trunk/gcc/ada/init.c
trunk/gcc/ada/initialize.c
trunk/gcc/ada/sysdep.c


-- 


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



[Bug ada/34647] Ada runtime includes unsafe calls to mktemp and tmpname on OpenBSD

2008-01-03 Thread sam at gcc dot gnu dot org


--- Comment #2 from sam at gcc dot gnu dot org  2008-01-03 09:38 ---
Subject: Bug 34647

Author: sam
Date: Thu Jan  3 09:35:04 2008
New Revision: 131301

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=131301
Log:
2008-01-03  Tero Koskinen <[EMAIL PROTECTED]>

gcc/ada/
PR ada/34647
* adaint.c (__gnat_open_new_temp, __gnat_tmp_name): Use mkstemp()
on OpenBSD as is done on other BSD systems.

PR ada/34645
* sysdep.c (__gnat_ttyname, getc_immediate_nowait,
getc_immediate_common): Treat OpenBSD as FreeBSD regarding immediate
I/O.

PR ada/34644
* env.c (__gnat_clearenv): Treat OpenBSD as other BSD systems missing
clearenv().

PR ada/34646
* init.c (__gnat_error_handler, __gnat_install_handler,
__gnat_init_float): Define for OpenBSD.

* initialize.c (__gnat_initialize): Define for OpenBSD.

Modified:
trunk/gcc/ada/ChangeLog
trunk/gcc/ada/adaint.c
trunk/gcc/ada/env.c
trunk/gcc/ada/init.c
trunk/gcc/ada/initialize.c
trunk/gcc/ada/sysdep.c


-- 


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



[Bug ada/34646] Ada runtime missing floating point and error handler initialization on OpenBSD

2008-01-03 Thread sam at gcc dot gnu dot org


--- Comment #2 from sam at gcc dot gnu dot org  2008-01-03 09:38 ---
Subject: Bug 34646

Author: sam
Date: Thu Jan  3 09:35:04 2008
New Revision: 131301

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=131301
Log:
2008-01-03  Tero Koskinen <[EMAIL PROTECTED]>

gcc/ada/
PR ada/34647
* adaint.c (__gnat_open_new_temp, __gnat_tmp_name): Use mkstemp()
on OpenBSD as is done on other BSD systems.

PR ada/34645
* sysdep.c (__gnat_ttyname, getc_immediate_nowait,
getc_immediate_common): Treat OpenBSD as FreeBSD regarding immediate
I/O.

PR ada/34644
* env.c (__gnat_clearenv): Treat OpenBSD as other BSD systems missing
clearenv().

PR ada/34646
* init.c (__gnat_error_handler, __gnat_install_handler,
__gnat_init_float): Define for OpenBSD.

* initialize.c (__gnat_initialize): Define for OpenBSD.

Modified:
trunk/gcc/ada/ChangeLog
trunk/gcc/ada/adaint.c
trunk/gcc/ada/env.c
trunk/gcc/ada/init.c
trunk/gcc/ada/initialize.c
trunk/gcc/ada/sysdep.c


-- 


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



[Bug ada/34645] Ada.Text_IO.Get_Immediate does not work on OpenBSD

2008-01-03 Thread sam at gcc dot gnu dot org


--- Comment #3 from sam at gcc dot gnu dot org  2008-01-03 09:38 ---
Patch committed, thanks.


-- 

sam at gcc dot gnu dot org changed:

   What|Removed |Added

 Status|ASSIGNED|RESOLVED
 Resolution||FIXED
   Target Milestone|--- |4.3.0


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



[Bug ada/34646] Ada runtime missing floating point and error handler initialization on OpenBSD

2008-01-03 Thread sam at gcc dot gnu dot org


--- Comment #3 from sam at gcc dot gnu dot org  2008-01-03 09:38 ---
Patch committed, thanks.


-- 

sam at gcc dot gnu dot org changed:

   What|Removed |Added

   Target Milestone|--- |4.3.0


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



[Bug ada/34647] Ada runtime includes unsafe calls to mktemp and tmpname on OpenBSD

2008-01-03 Thread sam at gcc dot gnu dot org


--- Comment #3 from sam at gcc dot gnu dot org  2008-01-03 09:39 ---
Patch committed, thanks.


-- 

sam at gcc dot gnu dot org changed:

   What|Removed |Added

 Status|ASSIGNED|RESOLVED
 Resolution||FIXED
   Target Milestone|--- |4.3.0


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



[Bug ada/34646] Ada runtime missing floating point and error handler initialization on OpenBSD

2008-01-03 Thread sam at gcc dot gnu dot org


--- Comment #4 from sam at gcc dot gnu dot org  2008-01-03 09:39 ---
Fixed, closing


-- 

sam at gcc dot gnu dot org changed:

   What|Removed |Added

 Status|ASSIGNED|RESOLVED
 Resolution||FIXED


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



[Bug tree-optimization/34648] New: [4.3 Regression] ICE in find_or_generate_expression

2008-01-03 Thread jakub at gcc dot gnu dot org
The following testcase distilled from tinyfugue-5.0 ICEs with
internal compiler error: in find_or_generate_expression, at tree-ssa-pre.c:2255

/* { dg-do compile } */
/* { dg-options "-O2 -fexceptions" } */

extern const unsigned short int **bar (void) __attribute__ ((const));
const char *a;
int b;
char c;

char
foo (int *x)
{
  char r;

  c = '\0';
  if (!b)
{
  while (((*bar ())[a[*x]] & 0x2000) != 0)
(*x)++;
  if (a[++(*x)] == '-')
{
  (*x)++;
  if (a[*x] && !((*bar ())[a[*x]] & 0x2000))
return '?';
}
  if (!a[*x] || ((*bar ())[a[*x]] & 0x2000))
{
  while (((*bar ())[a[*x]] & 0x2000))
++(*x);
  return '\0';
}
}

  r = a[*x];
  b = a[*x] && !((*bar ())[a[*x]] & 0x2000);
  return r;
}


-- 
   Summary: [4.3 Regression] ICE in find_or_generate_expression
   Product: gcc
   Version: 4.3.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: tree-optimization
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: jakub at gcc dot gnu dot org


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



[Bug target/34641] [4.3 Regression] ICE in reload_cse_simplify_operands, at postreload.c:395

2008-01-03 Thread rguenth at gcc dot gnu dot org


--- Comment #4 from rguenth at gcc dot gnu dot org  2008-01-03 09:52 ---
Created an attachment (id=14865)
 --> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=14865&action=view)
reduced testcase


-- 


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



[Bug tree-optimization/34591] [4.3 Regression] internal compiler error: in cost_for_stmt, at tree-vect-transform.c:98

2008-01-03 Thread dorit at gcc dot gnu dot org


--- Comment #6 from dorit at gcc dot gnu dot org  2008-01-03 10:08 ---
(In reply to comment #5)
> I can confirm that pulseaudio 0.9.8 sources which caused the crash, compile
> fine now with the latest gcc 4.3 snapshot.

thanks. (I usually prefer to wait for the person who reported the bug to
confirm that it can be closed)


-- 


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



[Bug tree-optimization/34591] [4.3 Regression] internal compiler error: in cost_for_stmt, at tree-vect-transform.c:98

2008-01-03 Thread dorit at gcc dot gnu dot org


--- Comment #7 from dorit at gcc dot gnu dot org  2008-01-03 10:17 ---
fixed


-- 

dorit at gcc dot gnu dot org changed:

   What|Removed |Added

 Status|ASSIGNED|RESOLVED
 Resolution||FIXED


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



[Bug c++/34619] [4.3 regression] ICE with "-fmudflap" and templates

2008-01-03 Thread jakub at gcc dot gnu dot org


--- Comment #3 from jakub at gcc dot gnu dot org  2008-01-03 10:29 ---
Subject: Bug 34619

Author: jakub
Date: Thu Jan  3 10:28:30 2008
New Revision: 131302

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=131302
Log:
PR c++/34619
* cgraphunit.c (cgraph_build_static_cdtor): set_cfun back to NULL
before returning.

* testsuite/libmudflap.c++/pass61-frag.cxx: New test.

Added:
trunk/libmudflap/testsuite/libmudflap.c++/pass61-frag.cxx
Modified:
trunk/gcc/ChangeLog
trunk/gcc/cgraphunit.c
trunk/libmudflap/ChangeLog


-- 


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



[Bug c++/34619] [4.3 regression] ICE with "-fmudflap" and templates

2008-01-03 Thread jakub at gcc dot gnu dot org


--- Comment #4 from jakub at gcc dot gnu dot org  2008-01-03 10:34 ---
Fixed.


-- 

jakub at gcc dot gnu dot org changed:

   What|Removed |Added

 Status|ASSIGNED|RESOLVED
 Resolution||FIXED


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



[Bug tree-optimization/34648] [4.3 Regression] ICE in find_or_generate_expression

2008-01-03 Thread rguenth at gcc dot gnu dot org


--- Comment #1 from rguenth at gcc dot gnu dot org  2008-01-03 11:02 ---
Confirmed.  We only have SSA_NAMEs in the expression set, which we do not PRE.
Danny, is this supposed not to happen somehow?


-- 

rguenth at gcc dot gnu dot org changed:

   What|Removed |Added

 CC||dberlin at gcc dot gnu dot
   ||org, rguenth at gcc dot gnu
   ||dot org
 Status|UNCONFIRMED |NEW
 Ever Confirmed|0   |1
   Last reconfirmed|-00-00 00:00:00 |2008-01-03 11:02:13
   date||


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



[Bug tree-optimization/34648] [4.3 Regression] ICE in find_or_generate_expression

2008-01-03 Thread rguenth at gcc dot gnu dot org


--- Comment #2 from rguenth at gcc dot gnu dot org  2008-01-03 11:05 ---
We are creating *VH.97 by pieces but fail to create the 'piece' for VH.97
because
we don't consider a SSA_NAME ok for it.


-- 


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



[Bug tree-optimization/34649] New: redundant if expression in find_conditional_asserts

2008-01-03 Thread zhouyi04 at ios dot cn
/*gcc/tree-vrp.c */

3603 static bool
3604 find_conditional_asserts (basic_block bb, tree last)
3605 {
...
   if (e->dest == bb)
3623 continue;
...
3652   if (e->dest != bb)
3653 need_assert |= find_assert_locations (e->dest);


-- 
   Summary: redundant if expression in find_conditional_asserts
   Product: gcc
   Version: tree-ssa
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: tree-optimization
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: zhouyi04 at ios dot cn
 GCC build triplet: i486-pc-linux-gnu
  GCC host triplet: i486-pc-linux-gnu
GCC target triplet: i486-pc-linux-gnu


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



[Bug fortran/34557] [4.3 regression] Rejects valid: EQUIVALENCE of character substrings

2008-01-03 Thread burnus at gcc dot gnu dot org


--- Comment #2 from burnus at gcc dot gnu dot org  2008-01-03 12:53 ---
> Confirmed.  This is a regression vs. 4.2:

I think it is not a regression with regards to 4.1 or 4.2. Here, it gives no
ICE/error/warning for .f (fixed-form source) but it does so for .f90 (free-form
source).

With free-form source, it works if one changes
  EQUIVALENCE (A (2,1) (1:1), B (1) (2:3), C (3:5))
into
  EQUIVALENCE (A (2,1)(1:1), B (1)(2:3), C(3:5))
Which explains why fixed form works and indicates what we do not eat the
whitespaces when matching a substring.


-- 


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



[Bug middle-end/31631] Folding of A & (1 << B) pessimizes FRE

2008-01-03 Thread rguenth at gcc dot gnu dot org


--- Comment #1 from rguenth at gcc dot gnu dot org  2008-01-03 15:06 ---
Confirmed.  LIM and DOM together remove the redundancy later.  If the loop
enclosing the redundancy is removed this doesn't happen.


-- 

rguenth at gcc dot gnu dot org changed:

   What|Removed |Added

 Status|UNCONFIRMED |NEW
 Ever Confirmed|0   |1
   Last reconfirmed|-00-00 00:00:00 |2008-01-03 15:06:46
   date||


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



[Bug tree-optimization/34648] [4.3 Regression] ICE in find_or_generate_expression

2008-01-03 Thread pinskia at gcc dot gnu dot org


-- 

pinskia at gcc dot gnu dot org changed:

   What|Removed |Added

 CC||pinskia at gcc dot gnu dot
   ||org
   Keywords||ice-on-valid-code
   Target Milestone|--- |4.3.0


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



[Bug fortran/34640] ICE when assigning item of a derived-component to a pointer

2008-01-03 Thread pault at gcc dot gnu dot org


--- Comment #4 from pault at gcc dot gnu dot org  2008-01-03 15:24 ---
(In reply to comment #3)
> Reduced test; has nothing to do with BIND(C). I am not 100% sure it is valid.
> (Actually, glancing at the code, I had said it is invalid). However, it gives
> no error/warning (or ICE) with other compilers such as NAG f95, g95, openf95,
> ifort, which implies that it is presumably valid.

It is valid and runs OK, as long as 'values' is not a dummy. This is because
gfc_get_symbol_decl does not set GFC_DECL_SPAN for pointers I forgot about
it, apparently.

I'm taking a look at how it might be done.

Paul 


-- 

pault at gcc dot gnu dot org changed:

   What|Removed |Added

 AssignedTo|unassigned at gcc dot gnu   |pault at gcc dot gnu dot org
   |dot org |
 Status|NEW |ASSIGNED
   Last reconfirmed|2008-01-03 08:19:08 |2008-01-03 15:24:11
   date||


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



[Bug gcov-profile/34610] [4.3 regression] ICE with "-fprofile-arcs -fopenmp"

2008-01-03 Thread jakub at gcc dot gnu dot org


--- Comment #3 from jakub at gcc dot gnu dot org  2008-01-03 15:01 ---
Additionally, pass_tree_profile is executed multiple times with -fopenmp, e.g.
on
void foo (int i)
{
  #pragma omp parallel
  if (i > 2)
bar (i + 1);
  else if (i < -2)
bar (i / 2);
  else
bar (i * 2);
}
(which compiles) profile counters are added before omp expansion and once again
for the child function.  Is there a reason why pass_tree_profile can't run
after
pass_cleanup_cfg/pass_init_datastructures/pass_expand_omp?
If it can't be moved, could it at least skip all edges in omp parallel regions?
Or if it is not thread safe, just disable pass_tree_profile if flag_openmp...


-- 


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



[Bug tree-optimization/26400] Missed jump threading on the tree level

2008-01-03 Thread rguenth at gcc dot gnu dot org


--- Comment #3 from rguenth at gcc dot gnu dot org  2008-01-03 15:17 ---
forwprop with the help of fold now simplifies the second comparison to

  if (b_2(D) == c_3(D))

and VRP gets rid of the function body and optimizes it to return zero.  We have
a similar testcase excercising the forwprop transformation in
gcc.dg/tree-ssa/forwprop-3.c.

This was fixed by

http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=129256


-- 

rguenth at gcc dot gnu dot org changed:

   What|Removed |Added

 Status|NEW |RESOLVED
 Resolution||FIXED
   Target Milestone|--- |4.3.0


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



[Bug middle-end/31309] 6 byte assignment at end of structure reads/writes past end of structure causing SEGV when that memory is not accessable.

2008-01-03 Thread peeterj at ca dot ibm dot com


--- Comment #13 from peeterj at ca dot ibm dot com  2008-01-03 15:26 ---
It's a regression relative to gcc version 3.3.3.


-- 


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



[Bug c++/34650] New: 'this' pointer goes null on x86_64-linux-gnu

2008-01-03 Thread nam3l3ss dot bugreportaccount at gmail dot com
-The error:
A segfault, according to "insight" at one point the 'this' pointer refers to
0x0.

-What should it do:
Definately not segfault, instead, after writing:
No such edge as (NOSUCH):true
It should write: (according to supplied source)
There is an edge as(EXISTS):true
But instead, it segfaults.

-The reason why I think this is a bug:
Compiled and executed on multiple 32 bit platforms, executes without any
problems.


-- 
   Summary: 'this' pointer goes null on x86_64-linux-gnu
   Product: gcc
   Version: 4.2.3
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: c++
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: nam3l3ss dot bugreportaccount at gmail dot com


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



[Bug middle-end/25878] Excessive memory and compile-time with std::map init sequence

2008-01-03 Thread rguenth at gcc dot gnu dot org


--- Comment #11 from rguenth at gcc dot gnu dot org  2008-01-03 15:35 
---
Created an attachment (id=14866)
 --> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=14866&action=view)
revised testcase

The problem persists with 4.2 if you remove the anonymous namespace around the
initializer function.  With 4.3 the testcase no longer builds.

Thus, a new testcase which is not preprocessed attached, observations still
apply.


-- 

rguenth at gcc dot gnu dot org changed:

   What|Removed |Added

  Attachment #10688|0   |1
is obsolete||


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



[Bug c++/34650] 'this' pointer goes null on x86_64-linux-gnu

2008-01-03 Thread nam3l3ss dot bugreportaccount at gmail dot com


--- Comment #1 from nam3l3ss dot bugreportaccount at gmail dot com  
2008-01-03 15:37 ---
Created an attachment (id=14867)
 --> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=14867&action=view)
Full, preprocessed source code.


-- 


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



[Bug c/27214] The C frontend introduces undefined pointer overflow

2008-01-03 Thread rguenth at gcc dot gnu dot org


--- Comment #10 from rguenth at gcc dot gnu dot org  2008-01-03 15:54 
---
"Fixed" only in the sense that we now create

 
unit size 
align 8 symtab 0 alias set -1 canonical type 0x2b6e7ed8c300
precision 8 min  max 
pointer_to_this >
unsigned DI
size 
unit size 
align 64 symtab 0 alias set -1 canonical type 0x2b6e7eda3000>

arg 0 
used unsigned DI file t.i line 1 col 17 size  unit size 
align 64 context  initial
 arg-type >
arg 1  constant invariant public overflow -4>>

but I consider the 'overflow' bit set on the -4 a bug.  Also POINTER_PLUS_EXPR
does not in any way change the issues we raised with undefinedness of
overflow in pointer + offset expressions.

Now, Joseph says

> This bug is about the interpretation of GCC's internal representation, not 
> that of the standard.

where yes, we seem to agreed to having an unsigned offset argument to
POINTER_PLUS_EXPR which we need to interpret as a signed quantity.  And
in a different place we sort-of agreed to limit the maximum object size
gcc handles to half of SIZE_T_MAX.


-- 


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



[Bug fortran/34557] [4.3 regression] Rejects valid: EQUIVALENCE of character substrings

2008-01-03 Thread burnus at gcc dot gnu dot org


--- Comment #3 from burnus at gcc dot gnu dot org  2008-01-03 15:38 ---
Patch.

Index: gcc/fortran/primary.c
===
--- gcc/fortran/primary.c   (Revision 131302)
+++ gcc/fortran/primary.c   (Arbeitskopie)
@@ -1679,6 +1679,7 @@ match_varspec (gfc_expr *primary, int eq

   tail = NULL;

+  gfc_gobble_whitespace ();
   if ((equiv_flag && gfc_peek_char () == '(') || sym->attr.dimension)
 {
   /* In EQUIVALENCE, we don't know yet whether we are seeing
@@ -1692,6 +1693,7 @@ match_varspec (gfc_expr *primary, int eq
   if (m != MATCH_YES)
return m;

+  gfc_gobble_whitespace ();
   if (equiv_flag && gfc_peek_char () == '(')
{
  tail = extend_ref (primary, tail);


-- 


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



[Bug middle-end/25878] Excessive memory and compile-time with std::map init sequence

2008-01-03 Thread rguenth at gcc dot gnu dot org


--- Comment #12 from rguenth at gcc dot gnu dot org  2008-01-03 15:44 
---
On a second look, 4.3 behaves much better than 4.2 for this testcase, so I
consider it fixed.

3.3-hammer: 13s  321MB

4.1.3: 29s  588MB

4.2.2: 27s  440MB

4.3.0: 20s  188MB


-- 

rguenth at gcc dot gnu dot org changed:

   What|Removed |Added

 Status|NEW |RESOLVED
 Resolution||FIXED
   Target Milestone|--- |4.3.0


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



[Bug c++/34052] [4.3 regression] Trouble with variadic templates as template-template parameter

2008-01-03 Thread rguenth at gcc dot gnu dot org


--- Comment #3 from rguenth at gcc dot gnu dot org  2008-01-03 16:01 ---
I agree, these sort of bugs should be P4 as a user will only see

t.C:1: error: ISO C++ does not include variadic templates
t.C:3: confused by earlier errors, bailing out


-- 


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



[Bug tree-optimization/34649] redundant if expression in find_conditional_asserts

2008-01-03 Thread ubizjak at gmail dot com


--- Comment #1 from ubizjak at gmail dot com  2008-01-03 16:10 ---
(In reply to comment #0)
> /*gcc/tree-vrp.c */
> 
> 3603 static bool
> 3604 find_conditional_asserts (basic_block bb, tree last)
> 3605 {
> ...
>if (e->dest == bb)
> 3623 continue;
> ...
> 3652   if (e->dest != bb)
> 3653 need_assert |= find_assert_locations (e->dest);

Please post a patch (including a ChangeLog entry) to [EMAIL PROTECTED]
mailing list. I'll regression test the patch for you, if you are not (yet)
familiar with testing procedure.


-- 


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



[Bug tree-optimization/30132] [4.1/4.2/4.3 Regression] ICE in find_lattice_value, at tree-complex.c:133

2008-01-03 Thread pinskia at gcc dot gnu dot org


--- Comment #15 from pinskia at gcc dot gnu dot org  2008-01-03 16:23 
---
This was caused by the patch which fixed PR 20280 and the 2nd iteration of the
patch was rejected so unassigning from me.


-- 

pinskia at gcc dot gnu dot org changed:

   What|Removed |Added

 CC||aoliva at gcc dot gnu dot
   ||org
 AssignedTo|pinskia at gcc dot gnu dot  |unassigned at gcc dot gnu
   |org |dot org
 Status|ASSIGNED|NEW


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



[Bug tree-optimization/34029] [4.3 Regression] internal compiler error: verify_stmts failed

2008-01-03 Thread rguenth at gcc dot gnu dot org


--- Comment #6 from rguenth at gcc dot gnu dot org  2008-01-03 16:23 ---
I will test the following

bool
is_gimple_min_invariant (const_tree t)
{
  switch (TREE_CODE (t))
{
case ADDR_EXPR:
  /* We do not allow arbitrary invariant expressions as gimple
 such as &a[1 - &b], but only allow constant array indices
 inside the otherwise TREE_INVARIANT expression.  */
  if (!TREE_INVARIANT (t))
return false;
  t = TREE_OPERAND (t, 0);
  while (handled_component_p (t))
{
  if ((TREE_CODE (t) == ARRAY_REF
   || TREE_CODE (t) == ARRAY_RANGE_REF)
  && TREE_CODE (TREE_OPERAND (t, 1)) != INTEGER_CST)
return false;
  t = TREE_OPERAND (t, 0);
}
  return true;


-- 


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



[Bug tree-optimization/34029] [4.3 Regression] internal compiler error: verify_stmts failed

2008-01-03 Thread pinskia at gcc dot gnu dot org


--- Comment #7 from pinskia at gcc dot gnu dot org  2008-01-03 16:23 ---
I don't have time to work on this any more.


-- 

pinskia at gcc dot gnu dot org changed:

   What|Removed |Added

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


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



[Bug c++/34650] 'this' pointer goes null on x86_64-linux-gnu

2008-01-03 Thread rguenth at gcc dot gnu dot org


--- Comment #2 from rguenth at gcc dot gnu dot org  2008-01-03 16:48 ---
This is obviously an error in your program or LGraph as you can see

#2  0x00402cb3 in std::find<__gnu_cxx::__normal_iterator const*, std::vector,
std::allocator > > >, int> (__first={_M_current =
0x0}, __last=
  {_M_current = 0x7fffef4c1201}, [EMAIL PROTECTED]) at t.ii:18268
18268  std::__iterator_category(__first));
(gdb) 
#3  0x00403442 in LGraph::has (
this=0x7fffef4c1230, n1=1, n2=3) at t.ii:14506
14506 
if(one->second.end()!=find(one->second.begin(),one->second.end(),n2)){
(gdb) 
#4  0x004073f3 in LGraph::operator() (
this=0x7fffef4c1230, node1=1, node2=3) at t.ii:14543
14543 if(has(node1,node2)){
(gdb) 
#5  0x0040186c in main (argv=1, args=0x7fffef4c1448) at t.ii:32882
32882std::cout << "There is an edge as(EXISTS):" << (( "EXISTS" == cdg(1,3)
) ? "true" : "false") 

[Bug tree-optimization/30132] [4.1/4.2/4.3 Regression] ICE in find_lattice_value, at tree-complex.c:133

2008-01-03 Thread pinskia at gcc dot gnu dot org


--- Comment #16 from pinskia at gcc dot gnu dot org  2008-01-03 16:26 
---
4.0.0 really did not work either, it just did not cause a crash as the checks
for invalid gimple was not there.


-- 

pinskia at gcc dot gnu dot org changed:

   What|Removed |Added

  Known to work|4.0.4   |3.4.0


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



[Bug fortran/34387] FAIL: gfortran.dg/optional_dim_2.f90: FE vs library argument missmatch

2008-01-03 Thread burnus at gcc dot gnu dot org


--- Comment #8 from burnus at gcc dot gnu dot org  2008-01-03 16:43 ---
(In reply to comment #6)
> The problem is that cshift0's target-independent function type says that the 
> SHIFT and DIM arguments are integers, rather than pointers to integers.

Indeed. Thanks Richard! The dump has:
  integer(kind=8) D.879; [...]
  D.879 = (integer(kind=8)) dimmy;
  _gfortran_cshift0_8 (&parm.0, &parm.2, &C.877, D.879);

while the libgfortran has:
  void cshift0_8 (gfc_array_char *ret, const gfc_array_char *array,
  const GFC_INTEGER_8 *pshift, const GFC_INTEGER_8 *pdim)

The problem seems to be in trans-expr.c's gfc_conv_missing_dummy or (less
likely) in the way it is called in trans-intrinsic.c's
gfc_conv_intrinsic_function_args.


-- 

burnus at gcc dot gnu dot org changed:

   What|Removed |Added

 CC||burnus at gcc dot gnu dot
   ||org
  GCC build triplet|hppa-unknown-linux-gnu  |
   GCC host triplet|hppa-unknown-linux-gnu  |
 GCC target triplet|hppa-unknown-linux-gnu  |
   Keywords||wrong-code
   Last reconfirmed|2008-01-01 23:07:28 |2008-01-03 16:43:32
   date||
Summary|FAIL:   |FAIL:
   |gfortran.dg/optional_dim_2.f|gfortran.dg/optional_dim_2.f
   |90  |90: FE vs library argument
   ||missmatch


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



[Bug middle-end/31309] 6 byte assignment at end of structure reads/writes past end of structure causing SEGV when that memory is not accessable.

2008-01-03 Thread rguenth at gcc dot gnu dot org


--- Comment #14 from rguenth at gcc dot gnu dot org  2008-01-03 17:06 
---
With optimization we now avoid the error, but unoptimized code is still wrong:

_Z10InitializeP16SQLU_DICT_INFO_0:
.LFB3:
pushq   %rbp
.LCFI2:
movq%rsp, %rbp
.LCFI3:
pushq   %rbx
.LCFI4:
subq$8, %rsp
.LCFI5:
movq%rdi, -16(%rbp)
movq-16(%rbp), %rax
movb$0, 8(%rax)
movq-16(%rbp), %rax
movb$0, 9(%rax)
movq-16(%rbp), %rbx
call_Z17INIT_6_BYTES_ZEROv
movzbl  %al, %ecx
movzbl  10(%rbx), %edx
andl$0, %edx
orl %ecx, %edx
movb%dl, 10(%rbx)
movzbl  %ah, %edx
mov %edx, %ecx
movq10(%rbx), %rdx
   ^  here
movb%cl, %dh
movq%rdx, 10(%rbx)
   ^  and here
movq%rax, %rdx
shrq$16, %rdx
movzbq  %dl,%rcx
movzbl  12(%rbx), %edx
andl$0, %edx
orl %ecx, %edx
movb%dl, 12(%rbx)
movq%rax, %rdx
shrq$24, %rdx
movzbq  %dl,%rcx
movzbl  13(%rbx), %edx
andl$0, %edx
orl %ecx, %edx
movb%dl, 13(%rbx)
movq%rax, %rdx
shrq$32, %rdx
movzbq  %dl,%rcx
movzbl  14(%rbx), %edx
andl$0, %edx
orl %ecx, %edx
movb%dl, 14(%rbx)
shrq$40, %rax
movzbq  %al,%rdx
movzbl  15(%rbx), %eax
andl$0, %eax
orl %edx, %eax
movb%al, 15(%rbx)
addq$8, %rsp
popq%rbx
leave
ret

without inlining we do optimize this to

_Z10InitializeP16SQLU_DICT_INFO_0:
.LFB3:
pushq   %rbx
.LCFI0:
movq%rdi, %rbx
movb$0, 8(%rdi)
movb$0, 9(%rdi)
call_Z17INIT_6_BYTES_ZEROv
movb%al, 10(%rbx)
movzbl  %ah, %edx
movb%dl, 11(%rbx)
movq%rax, %rdx
shrq$16, %rdx
movb%dl, 12(%rbx)
movq%rax, %rdx
shrq$24, %rdx
movb%dl, 13(%rbx)
movq%rax, %rdx
shrq$32, %rdx
movb%dl, 14(%rbx)
shrq$40, %rax
movb%al, 15(%rbx)
popq%rbx
ret

which doesn't have the 8 byte move any more.  4.2, even when optimizing
retains the 8 byte move.


-- 

rguenth at gcc dot gnu dot org changed:

   What|Removed |Added

   Last reconfirmed|2007-03-22 10:03:14 |2008-01-03 17:06:20
   date||


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



[Bug middle-end/31309] 6 byte assignment at end of structure reads/writes past end of structure causing SEGV when that memory is not accessable.

2008-01-03 Thread rguenth at gcc dot gnu dot org


--- Comment #15 from rguenth at gcc dot gnu dot org  2008-01-03 17:10 
---
Ian, Eric?  Any advice on the bitfield stuff as of comments 7/9?


-- 

rguenth at gcc dot gnu dot org changed:

   What|Removed |Added

 CC||ian at gcc dot gnu dot org,
   ||ebotcazou at gcc dot gnu dot
   ||org
  Known to work||3.3.3


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



[Bug target/34651] New: [4.3 Regression] ICE in set_value_range, at tree-vrp.c:321

2008-01-03 Thread tbm at cyrius dot com
I get the following ICE with trunk from 20071212 on hppa (but not
on x86_64):

[EMAIL PROTECTED]:~$ /usr/lib/gcc-snapshot/bin/g++ -c -Wno-multichar -O2 
libgtkol-cmenu.ii
cmenu.cpp: In member function 'virtual void
CMenuItem::Serialize(CXMLElementNode*&, int)':
cmenu.cpp:551: internal compiler error: in set_value_range, at tree-vrp.c:321
Please submit a full bug report,
with preprocessed source if appropriate.
See  for instructions.
[EMAIL PROTECTED]:~$ /usr/lib/gcc-snapshot/bin/g++ -c -Wno-multichar -O1 
libgtkol-cmenu.ii
[EMAIL PROTECTED]:~$


-- 
   Summary: [4.3 Regression] ICE in set_value_range, at tree-
vrp.c:321
   Product: gcc
   Version: 4.3.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: target
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: tbm at cyrius dot com
GCC target triplet: hppa-linux-gnu


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



[Bug target/34651] [4.3 Regression] ICE in set_value_range, at tree-vrp.c:321

2008-01-03 Thread tbm at cyrius dot com


--- Comment #1 from tbm at cyrius dot com  2008-01-03 17:18 ---
Created an attachment (id=14868)
 --> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=14868&action=view)
preprocessed source


-- 


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



[Bug c++/34052] [4.3 regression] Trouble with variadic templates as template-template parameter

2008-01-03 Thread mmitchel at gcc dot gnu dot org


--- Comment #4 from mmitchel at gcc dot gnu dot org  2008-01-03 17:02 
---
A user that has turned on C++0x will of course not see the message that ISO C++
doesn't allow variadic templates.  Our NEWS file is going to say that we have a
great new feature: variadic templates.  Given that, it's a feature just like
any other.  I'd like to see new features held to a high quality standard.

I see the argument that this isn't a regression, but if I'm a user, and I read
about the new feature, and I try it out, and things break, that seems bad.  So,
I'd prefer to leave it P2, but I agree that it's sort of a "low P2".


-- 


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



[Bug tree-optimization/34651] [4.3 Regression] ICE in set_value_range, at tree-vrp.c:321

2008-01-03 Thread pinskia at gcc dot gnu dot org


-- 

pinskia at gcc dot gnu dot org changed:

   What|Removed |Added

 CC||pinskia at gcc dot gnu dot
   ||org
  Component|target  |tree-optimization
   Keywords||ice-on-valid-code
   Target Milestone|--- |4.3.0


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



[Bug c++/28989] [4.0/4.1/4.2 Regression] post-increment of bool variable accepted as lvalue

2008-01-03 Thread pinskia at gcc dot gnu dot org


--- Comment #13 from pinskia at gcc dot gnu dot org  2008-01-03 17:40 
---
I am not going to patch 4.2 and before for this, I will let someone else do it.


-- 

pinskia at gcc dot gnu dot org changed:

   What|Removed |Added

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


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



[Bug target/33236] -mminimal-toc register should be psedu-register

2008-01-03 Thread pinskia at gcc dot gnu dot org


--- Comment #3 from pinskia at gcc dot gnu dot org  2008-01-03 17:41 ---
This is harder to do than I expected, the minimal toc register is used while
doing reload and using a psedu-register there causes reload to use a memory
location.


-- 

pinskia at gcc dot gnu dot org changed:

   What|Removed |Added

 AssignedTo|pinskia at gcc dot gnu dot  |unassigned at gcc dot gnu
   |org |dot org
 Status|ASSIGNED|NEW
Summary|-minimal-toc register should|-mminimal-toc register
   |be psedu-register   |should be psedu-register


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



[Bug gcov-profile/34609] [4.3 regression] ICE with "-ftest-coverage" and references

2008-01-03 Thread jakub at gcc dot gnu dot org


--- Comment #1 from jakub at gcc dot gnu dot org  2008-01-03 17:42 ---
Created an attachment (id=14869)
 --> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=14869&action=view)
gcc43-pr34609.patch

I'll be testing attached patch.  This works without -ftest-coverage, as
function
is cleaned up before inlining it again.


-- 

jakub at gcc dot gnu dot org changed:

   What|Removed |Added

 AssignedTo|unassigned at gcc dot gnu   |jakub at gcc dot gnu dot org
   |dot org |
 Status|UNCONFIRMED |ASSIGNED


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



[Bug fortran/22210] gfc_conv_array_initializer weirdness

2008-01-03 Thread pinskia at gcc dot gnu dot org


--- Comment #12 from pinskia at gcc dot gnu dot org  2008-01-03 17:42 
---
(In reply to comment #11)
> So, did you have time? :-)

Maybe this weekend :).  I guess I have been really behind on my FSF bugs.


-- 


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



[Bug objc/24777] objc needs to use normal builtins for functions it declares

2008-01-03 Thread pinskia at gcc dot gnu dot org


--- Comment #3 from pinskia at gcc dot gnu dot org  2008-01-03 17:43 ---
Not going to happen any time soon so unassigning.  CCing the objective-C
maintainer.


-- 

pinskia at gcc dot gnu dot org changed:

   What|Removed |Added

 CC||mrs at apple dot com
 AssignedTo|pinskia at gcc dot gnu dot  |unassigned at gcc dot gnu
   |org |dot org
 Status|ASSIGNED|NEW


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



[Bug c++/30303] [4.2 regression] ICE with invalid constructor definition

2008-01-03 Thread pinskia at gcc dot gnu dot org


--- Comment #14 from pinskia at gcc dot gnu dot org  2008-01-03 17:44 
---
I am not going to be able to get this done for 4.2.x so unassigning.


-- 

pinskia at gcc dot gnu dot org changed:

   What|Removed |Added

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


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



[Bug c++/22154] [DR 382] qualified names should allow typename keyword in front of it (even in non-templates)

2008-01-03 Thread pinskia at gcc dot gnu dot org


--- Comment #9 from pinskia at gcc dot gnu dot org  2008-01-03 17:46 ---
I do have a correct patch which I will submit when stage1 comes around.


-- 

pinskia at gcc dot gnu dot org changed:

   What|Removed |Added

OtherBugsDependingO||33702
  nThis||


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



[Bug middle-end/16660] attribute((aligned)) doesn't work for variables on the stack for greater than required alignement

2008-01-03 Thread pinskia at gcc dot gnu dot org


--- Comment #13 from pinskia at gcc dot gnu dot org  2008-01-03 17:47 
---
I am getting tried of pinging this patch, I guess if nobody wants to comment
that is up to them.


-- 

pinskia at gcc dot gnu dot org changed:

   What|Removed |Added

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


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



[Bug c/31128] __builtin_stack_restore/__builtin_stack_save should not be exposed to the user

2008-01-03 Thread pinskia at gcc dot gnu dot org


--- Comment #13 from pinskia at gcc dot gnu dot org  2008-01-03 17:48 
---
I am not going to work on this anymore.


-- 

pinskia at gcc dot gnu dot org changed:

   What|Removed |Added

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


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



[Bug fortran/34640] ICE when assigning item of a derived-component to a pointer

2008-01-03 Thread pault at gcc dot gnu dot org


--- Comment #5 from pault at gcc dot gnu dot org  2008-01-03 17:58 ---

I'm taking a look at how it might be done.

This allows compilation to proceed:

Index: gcc/fortran/trans-decl.c
===
*** gcc/fortran/trans-decl.c(revision 131237)
--- gcc/fortran/trans-decl.c(working copy)
*** gfc_get_symbol_decl (gfc_symbol * sym)
*** 951,956 
--- 951,970 
  sym->backend_decl = decl;
}

+   if (sym->attr.subref_array_pointer)
+   {
+ tree span;
+ GFC_DECL_SUBREF_ARRAY_P (sym->backend_decl) = 1;
+ span = build_decl (VAR_DECL, create_tmp_var_name ("span"),
+gfc_array_index_type);
+ gfc_allocate_lang_decl (sym->backend_decl);
+ gfc_finish_var_decl (span, sym);
+ TREE_STATIC (span) = 1;
+ DECL_INITIAL (span) = build_int_cst (NULL_TREE, 0);
+
+ GFC_DECL_SPAN (sym->backend_decl) = span;
+   }
+
TREE_USED (sym->backend_decl) = 1;
if (sym->attr.assign && GFC_DECL_ASSIGN (sym->backend_decl) == 0)
{

but the span is not passed back to the actual argument, as this demonstrates:

MODULE test
  IMPLICIT NONE
  TYPE :: my_type
INTEGER :: value = 99
INTEGER :: spacer = 199
  END TYPE
CONTAINS
  SUBROUTINE get_values(values, d)
INTEGER,POINTER :: values(:)
TYPE(my_type),POINTER :: d(:)
values => d(:)%value
print *, "in get_values  ", values
  END SUBROUTINE
END MODULE

  use test
  TYPE(my_type),POINTER :: d(:)
  INTEGER,POINTER :: values(:)
  allocate (d(2))
  call get_values (values, d)
  print *, "in MAIN", values
  deallocate (d)
end

I'll have to figure out how this can be done.  No doubt 'span' will have to be
added to the parent scope and the assignment performed on function entry and
return.  Hmmm!!  Better still would be to copy in and copy out.

Back to PR34431 and friends - I'll do this next.

Paul


-- 

pault at gcc dot gnu dot org changed:

   What|Removed |Added

 Status|ASSIGNED|WAITING


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



[Bug preprocessor/34602] [4.1/4.2 regression] Internal error with invalid #line directive

2008-01-03 Thread tromey at gcc dot gnu dot org


--- Comment #2 from tromey at gcc dot gnu dot org  2008-01-03 17:59 ---
Fixed on trunk.


-- 

tromey at gcc dot gnu dot org changed:

   What|Removed |Added

  Known to work||4.3.0
Summary|[4.1/4.2/4.3 regression]|[4.1/4.2 regression]
   |Internal error with invalid |Internal error with invalid
   |#line directive |#line directive


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



[Bug preprocessor/34602] [4.1/4.2 regression] Internal error with invalid #line directive

2008-01-03 Thread tromey at gcc dot gnu dot org


--- Comment #3 from tromey at gcc dot gnu dot org  2008-01-03 17:59 ---
Subject: Bug 34602

Author: tromey
Date: Thu Jan  3 17:58:26 2008
New Revision: 131304

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=131304
Log:
libcpp
PR preprocessor/34602.
* directives.c (do_line): Don't try to spell EOF token.
(do_linemarker): Add comment.
gcc/testsuite
PR preprocessor/34602:
* gcc.dg/cpp/pr34602.c: New file.

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


-- 


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



[Bug tree-optimization/34043] Missed optimization causing extra loads and stores when using x86_64 builtin function together with aggregate types.

2008-01-03 Thread rguenth at gcc dot gnu dot org


--- Comment #9 from rguenth at gcc dot gnu dot org  2008-01-03 17:29 ---
Confirmed.  While I have a patch to make VN handle the case of type-punning
constants, making it to generate VIEW_CONVERT_EXPRs instead runs into the
principle barrier that FRE does not do insertion.

The patch looks like

Index: tree-ssa-sccvn.c
===
*** tree-ssa-sccvn.c(revision 131302)
--- tree-ssa-sccvn.c(working copy)
*** visit_reference_op_store (tree lhs, tree
*** 1231,1236 
--- 1247,1292 
}

vn_reference_insert (lhs, op, vdefs);
+
+   /* For unions and constant stores we can register stores to
+the other union members as well, allowing propagation.
+Do this for two-element unions only, as they are likely
+used for type-punning which we want to optimize.  */
+   if (TREE_CODE (lhs) == COMPONENT_REF
+ && TREE_CODE (TREE_TYPE (TREE_OPERAND (lhs, 0))) == UNION_TYPE
+ /* We may be able to handle non-constant type-punnings as well.  */
+ && (TREE_CODE (op) == INTEGER_CST
+ || TREE_CODE (op) == REAL_CST
+ || TREE_CODE (op) == VECTOR_CST
+ || TREE_CODE (op) == COMPLEX_CST)
+ && fields_length (TREE_TYPE (TREE_OPERAND (lhs, 0))) == 2)
+   {
+ tree field = TYPE_FIELDS (TREE_TYPE (TREE_OPERAND (lhs, 0)));
+ tree val;
+
+ if (field == TREE_OPERAND (lhs, 1))
+   field = TREE_CHAIN (field);
+
+ /* Do not generate VIEW_CONVERT_EXPRs, but only handle the
+cases we can fold it away.  */
+ val = fold_unary (VIEW_CONVERT_EXPR, TREE_TYPE (field), op);
+ if (val)
+   {
+ if (dump_file)
+   {
+ fprintf (dump_file, "Value numbering store to alternate "
+  "union field ");
+ print_generic_expr (dump_file, field, 0);
+ fprintf (dump_file, " with type-punned value ");
+ print_generic_expr (dump_file, val, 0);
+ fprintf (dump_file, "\n");
+   }
+ vn_reference_insert (build3 (COMPONENT_REF, TREE_TYPE (field),
+  TREE_OPERAND (lhs, 0), field,
+  NULL_TREE),
+  val, vdefs);
+   }
+   }
  }
else
  {

and it handles the testcase in comment #6 correctly.


-- 

rguenth at gcc dot gnu dot org changed:

   What|Removed |Added

 CC||rguenth at gcc dot gnu dot
   ||org
 Status|UNCONFIRMED |NEW
 Ever Confirmed|0   |1
   Last reconfirmed|-00-00 00:00:00 |2008-01-03 17:29:45
   date||


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



[Bug target/34628] [4.2/4.3 Regression] problems with inlining on ARM

2008-01-03 Thread tbm at cyrius dot com


--- Comment #4 from tbm at cyrius dot com  2008-01-03 18:03 ---
Bugzilla wraps the testcase in a way that some commented out is no longer
commented out and so you don't see the segfault.  Here's the testcase again
with proper wrapping:

typedef unsigned short u16;
typedef unsigned char u8;

static void
do_segfault(u8 in_buf[], const u8 out_buf[], const int len)
{
  int i;

  for (i = 0; i < len; i++) {
//SSVAL(in_buf, 2*i, SVAL(out_buf,2*i)); // more or less just a
 // byte-wise memcpy

asm("nop\n");

in_buf[2*i] = (   out_buf[2*i] | out_buf[(2*i)+1]<<8  ) & 0xFF;
 // in_buf[2*i] = out_buf[2*i];

asm("nop\n");

in_buf[(2*i)+1] =  ( out_buf[2*i] | out_buf[(2*i)+1]<<8 ) >> 8;
 // in_buf[(2*i)+1] = out_buf[(2*i)+1];

asm("nop\n");
  }
}

int main(int argc, char *argv[])
{
  u8 outbuf[32] = "buffer ";
  u8 inbuf[32] = "\f";

  asm("nop\n");
  do_segfault(inbuf, outbuf, 12);
  asm("nop\n");

  return 0;
}


-- 


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



[Bug target/34628] [4.2/4.3 Regression] problems with inlining on ARM

2008-01-03 Thread tbm at cyrius dot com


--- Comment #5 from tbm at cyrius dot com  2008-01-03 18:07 ---
Created an attachment (id=14870)
 --> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=14870&action=view)
optimized tree dump (4.2)


-- 


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



[Bug target/34628] [4.2/4.3 Regression] problems with inlining on ARM

2008-01-03 Thread tbm at cyrius dot com


-- 

tbm at cyrius dot com changed:

   What|Removed |Added

 Status|WAITING |UNCONFIRMED


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



[Bug c/34457] [4.3 regression] ICE with VLA and -combine

2008-01-03 Thread tromey at gcc dot gnu dot org


--- Comment #3 from tromey at gcc dot gnu dot org  2008-01-03 18:08 ---
Testing my patch on mainline.


-- 

tromey at gcc dot gnu dot org changed:

   What|Removed |Added

 AssignedTo|unassigned at gcc dot gnu   |tromey at gcc dot gnu dot
   |dot org |org
 Status|NEW |ASSIGNED
   Last reconfirmed|2007-12-28 01:12:52 |2008-01-03 18:08:00
   date||


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



[Bug c++/34573] [4.3 Regression] ICE with nested class in template

2008-01-03 Thread jakub at gcc dot gnu dot org


--- Comment #5 from jakub at gcc dot gnu dot org  2008-01-03 18:09 ---
Related to PR19407 I guess.  CCing Jason.


-- 

jakub at gcc dot gnu dot org changed:

   What|Removed |Added

 CC||jason at gcc dot gnu dot org


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



[Bug tree-optimization/34648] [4.3 Regression] ICE in find_or_generate_expression

2008-01-03 Thread dberlin at gcc dot gnu dot org


--- Comment #3 from dberlin at gcc dot gnu dot org  2008-01-03 18:16 ---
It is never okay to base an existing expression on an SSA_NAME alone, which is
why we avoid it.

If the SSA_NAME was available, it would have been in the AVAIL set and been
found by the "find" part of find_or_generate_expression.
:)

(In reply to comment #2)
> We are creating *VH.97 by pieces but fail to create the 'piece' for VH.97
> because
> we don't consider a SSA_NAME ok for it.
> 


-- 


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



[Bug target/34628] [4.2/4.3 Regression] problems with inlining on ARM

2008-01-03 Thread tbm at cyrius dot com


--- Comment #6 from tbm at cyrius dot com  2008-01-03 18:22 ---
(In reply to comment #2)
> I see different IL for 4.2 compared to 4.3, is the bug present in 4.3?  Can 
> you
> attach the optimized tree dump?

I also get a segfault with the testcase and 4.3.0 20070916.

The original program (samba) compiled with 4.2 shows bad code (smbclient
returning 'string length'+1 of the first character of the share name rather
than the share name) whereas it segfaults when compiled with 4.3.


-- 


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



[Bug target/34652] arm-only miscompilation of alloca code

2008-01-03 Thread tbm at cyrius dot com


--- Comment #1 from tbm at cyrius dot com  2008-01-03 18:27 ---
This happens with 4.1, 4.2 and trunk on old ABI.  Apparently it doesn't
happen with EABI.


-- 

tbm at cyrius dot com changed:

   What|Removed |Added

 CC||debian-gcc at lists dot
   ||debian dot org


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



[Bug target/34652] New: arm-only miscompilation of alloca code

2008-01-03 Thread tbm at cyrius dot com
[ Forwarded from http://bugs.debian.org/458745 ]

Camm Maguire <[EMAIL PROTECTED]>
arm-only miscompilation of alloca code

i386:
cc -g /tmp/foo.c -o /tmp/foo
/tmp/foo
0xbf867bd0
0x1
0x2
0x3

arm:
cc -g foo.c -o foo
./foo
0x18beed5d
Segmentation fault

Testcase:

#include 
#include 
#include 
#define object void *

int VFUN_NARGS;
void *alloca_val;
struct cons {
  object c_cdr;
  object c_car;
};

#define Cnil 0

static void
foo(object first,...) {
  va_list ap;
  int narg = VFUN_NARGS;
  struct cons *V1128;
  object V1129;

  va_start(ap,first);
  V1129 =
!narg? Cnil : (alloca_val=alloca((narg)*sizeof(struct
cons)+sizeof(object)),
   ({object _b=(void *)alloca_val;if (((unsigned
long)_b)&sizeof(_b)) _b++;
   {struct cons *_p=(void *)_b;
   {struct cons *_e=_p+(narg-1);
   for (;_p<_e;_p++) {_p->c_car=({object
_t=first;first=va_arg(ap,object);_t;});_p->c_cdr=(object)(_p+1);}}
_p->c_car=first;_p->c_cdr=Cnil;}_b;}));
  va_end(ap);
  V1128= V1129;
  for (;V1128!=Cnil;V1128=V1128->c_cdr)
printf("%p\n",V1128->c_car);

}

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

  VFUN_NARGS=4;
  foo(&argc,1,2,3);
  return 0;

}


-- 
   Summary: arm-only miscompilation of alloca code
   Product: gcc
   Version: 4.2.3
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: target
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: tbm at cyrius dot com
GCC target triplet: arm*-linux-gnu


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



[Bug target/17943] building gcc head (20041011) for arc-elf32 results in a lot of warnings

2008-01-03 Thread saurabh dot verma at celunite dot com


--- Comment #4 from saurabh dot verma at celunite dot com  2008-01-03 18:36 
---
Patch submitted. 
Pending approval/commit.

http://gcc.gnu.org/ml/gcc-patches/2008-01/msg00046.html


-- 


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



[Bug target/34653] New: unnecessary REX prefix

2008-01-03 Thread dean at arctic dot org
for this code:

extern unsigned long table[];

unsigned long foo(unsigned char *p) {
  unsigned long long tag = *p;
  return table[tag >> 4];
}

gcc generates:

 :
   0:   0f b6 07movzbl (%rdi),%eax
   3:   48 c1 e8 04 shr$0x4,%rax
   7:   48 8b 04 c5 00 00 00mov0x0(,%rax,8),%rax
   e:   00
b: R_X86_64_32S table
   f:   c3  retq

that "shr $0x4,%rax" would be better as "shr $0x4,%eax" because it produces the
same result (due to dominating movzbl) and it's one byte shorter which favours
both space and the narrow decoder on the core2.

thanks
-dean

/home/odo/gcc/bin/gcc -v
Using built-in specs.
Target: x86_64-unknown-linux-gnu
Configured with: ../gcc/configure --prefix=/home/odo/gcc --disable-multilib
--disable-biarch x86_64-unknown-linux-gnu --enable-languages=c
Thread model: posix
gcc version 4.3.0 20071128 (experimental) (GCC)


-- 
   Summary: unnecessary REX prefix
   Product: gcc
   Version: 4.3.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: target
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: dean at arctic dot org
 GCC build triplet: x86_64-unknown-linux-gnu
  GCC host triplet: x86_64-unknown-linux-gnu
GCC target triplet: x86_64-unknown-linux-gnu


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



[Bug target/34653] unnecessary REX prefix

2008-01-03 Thread pinskia at gcc dot gnu dot org


-- 

pinskia at gcc dot gnu dot org changed:

   What|Removed |Added

   Severity|normal  |enhancement


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



[Bug target/34653] unnecessary REX prefix

2008-01-03 Thread dean at arctic dot org


--- Comment #1 from dean at arctic dot org  2008-01-03 19:27 ---
oops i should have used an "unsigned long" for the tag rather than unsigned
long long, not that it matters much.

here's an expanded example showing another unnecessary REX:

extern unsigned long table[];

unsigned long foo(unsigned char *p) {
  unsigned long tag = *p;
  return table[tag >> 4] + table[tag & 0xf];
}

which generates:

   0:   0f b6 17movzbl (%rdi),%edx
   3:   48 89 d0mov%rdx,%rax
   6:   48 c1 ea 04 shr$0x4,%rdx
   a:   83 e0 0fand$0xf,%eax
   d:   48 8b 04 c5 00 00 00mov0x0(,%rax,8),%rax
  14:   00
11: R_X86_64_32Stable
  15:   48 03 04 d5 00 00 00add0x0(,%rdx,8),%rax
  1c:   00
19: R_X86_64_32Stable
  1d:   c3  retq

and in this case the "mov %rdx,%rax" could be "mov %edx,%eax" because of the
dominating movzbl.


-- 


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



[Bug target/34628] [4.2/4.3 Regression] problems with inlining on ARM

2008-01-03 Thread rguenth at gcc dot gnu dot org


--- Comment #7 from rguenth at gcc dot gnu dot org  2008-01-03 18:58 ---
The final tree IL looks good, so I suspect the RTL loop optimizer gets this
wrong.


-- 

rguenth at gcc dot gnu dot org changed:

   What|Removed |Added

 CC||rakdver at gcc dot gnu dot
   ||org
   Keywords||wrong-code


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



[Bug fortran/34565] internal write to string array fails

2008-01-03 Thread tkoenig at gcc dot gnu dot org


--- Comment #8 from tkoenig at gcc dot gnu dot org  2008-01-03 19:50 ---
Subject: Bug 34565

Author: tkoenig
Date: Thu Jan  3 19:49:38 2008
New Revision: 131305

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=131305
Log:
2008-01-03  Thomas Koenig  <[EMAIL PROTECTED]>

PR libfortran/34565
* io/io.h:  Adjust protoypes for open_internal(),
next_array_record() and init_loop_spec().
* io/list_read.c (next_char):  Use argument "finished"
of next_array_record to check for end on internal file.
* io/unit.c:  Calculate the offset for an array
internal file and supply this informatin to open_internal().
* io/unix.c (open_internal):  Set the offset for the internal
file on open.
* io/transfer.c (init_loop_spec):  Calculate the starting
record in case of negative strides.  Return size of 0 for
an empty array.
(next_array_record):  Use an extra flag to signal that the
array is finished.
(next_record_r):  Use the new flag to next_array_record().
(next_record_w):  Likewise.

2008-01-03  Thomas Koenig  <[EMAIL PROTECTED]>

PR libfortran/34565
* gfortran.dg/internal_readwrite_1.f90:  New test.
* gfortran.dg/internal_readwrite_2.f90:  New test.


Added:
trunk/gcc/testsuite/gfortran.dg/internal_readwrite_1.f90
trunk/gcc/testsuite/gfortran.dg/internal_readwrite_2.f90
Modified:
trunk/gcc/testsuite/ChangeLog
trunk/libgfortran/ChangeLog
trunk/libgfortran/io/io.h
trunk/libgfortran/io/list_read.c
trunk/libgfortran/io/transfer.c
trunk/libgfortran/io/unit.c
trunk/libgfortran/io/unix.c


-- 


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



[Bug fortran/34565] internal write to string array fails

2008-01-03 Thread tkoenig at gcc dot gnu dot org


--- Comment #9 from tkoenig at gcc dot gnu dot org  2008-01-03 19:53 ---
Fixed on trunk.

Closing.


-- 

tkoenig at gcc dot gnu dot org changed:

   What|Removed |Added

 Status|ASSIGNED|RESOLVED
 Resolution||FIXED


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



[Bug fortran/34557] [4.3 regression] Rejects valid: EQUIVALENCE of character substrings

2008-01-03 Thread tkoenig at gcc dot gnu dot org


--- Comment #4 from tkoenig at gcc dot gnu dot org  2008-01-03 20:00 ---
(In reply to comment #3)
> Patch.

Looks obvious and simple.

OK to commit if it passes regression-test.

Thomas


-- 


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



[Bug fortran/34654] New: no unformatted on internal file

2008-01-03 Thread jv244 at cam dot ac dot uk
The following is non-standard and the compiler should probably generate a
warning/error with '-pedantic -std=f95', but does not do so with
gcc version 4.3.0 20080103 (experimental) [trunk revision 131300] (GCC)

CHARACTER :: a(3)
WRITE(a) 0 ! no unformatted on internal file
END


-- 
   Summary: no unformatted on internal file
   Product: gcc
   Version: 4.3.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: fortran
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: jv244 at cam dot ac dot uk


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



[Bug fortran/34655] New: 5.5.2.5

2008-01-03 Thread jv244 at cam dot ac dot uk
The following is non-standard and the compiler should probably generate a
warning/error with '-pedantic -std=f95', but does not do so with
gcc version 4.3.0 20080103 (experimental) [trunk revision 131300] (GCC)

! 5.5.2.5
TYPE data_type
 SEQUENCE
 INTEGER :: I=7
END TYPE data_type
INTEGER :: J
TYPE(data_type) :: dd
COMMON /COM/ J
EQUIVALENCE(dd,J)
END


-- 
   Summary:  5.5.2.5
   Product: gcc
   Version: 4.3.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: fortran
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: jv244 at cam dot ac dot uk


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



[Bug fortran/34657] New: program-unit MY_SUB imports symbol MY_SUB

2008-01-03 Thread jv244 at cam dot ac dot uk
The following is non-standard and the compiler should probably generate a
warning/error with '-pedantic -std=f95', but does not do so with
gcc version 4.3.0 20080103 (experimental) [trunk revision 131300] (GCC)

module test_mod
interface
  subroutine my_sub (a)
real a
  end subroutine
end interface
end module

subroutine my_sub (a)
  use test_mod
  real a
  print *, a
end subroutine

END


-- 
   Summary: program-unit MY_SUB imports symbol MY_SUB
   Product: gcc
   Version: 4.3.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: fortran
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: jv244 at cam dot ac dot uk


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



[Bug fortran/34658] New: save / common

2008-01-03 Thread jv244 at cam dot ac dot uk
The following is non-standard and the compiler should probably generate a
warning/error with '-pedantic -std=f95', but does not do so with
gcc version 4.3.0 20080103 (experimental) [trunk revision 131300] (GCC) 

  COMMON /A/ I
  INTEGER :: I=1
  END


-- 
   Summary: save / common
   Product: gcc
   Version: 4.3.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: fortran
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: jv244 at cam dot ac dot uk


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



[Bug fortran/34659] New: corner case continuation line

2008-01-03 Thread jv244 at cam dot ac dot uk
The following is non-standard and the compiler should probably generate a
warning/error with '-pedantic -std=f95', but does not do so with
gcc version 4.3.0 20080103 (experimental) [trunk revision 131300] (GCC)

 &

end


-- 
   Summary: corner case continuation line
   Product: gcc
   Version: 4.3.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: fortran
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: jv244 at cam dot ac dot uk


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



[Bug fortran/34660] New: elemental and dummy procedure

2008-01-03 Thread jv244 at cam dot ac dot uk
The following is non-standard and the compiler should probably generate a
warning/error with '-pedantic -std=f95', but does not do so with
gcc version 4.3.0 20080103 (experimental) [trunk revision 131300] (GCC)

MODULE M1
IMPLICIT NONE
CONTAINS
 PURE ELEMENTAL SUBROUTINE S1(I,F)
   INTEGER, INTENT(IN) :: I
   INTERFACE
 PURE INTEGER FUNCTION F(I)
  INTEGER, INTENT(IN) :: I
 END FUNCTION F
   END INTERFACE
 END SUBROUTINE S1
END MODULE M1
USE M1

END


-- 
   Summary: elemental and dummy procedure
   Product: gcc
   Version: 4.3.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: fortran
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: jv244 at cam dot ac dot uk


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



[Bug fortran/34661] New: ice on where / ASSIGNMENT(=)

2008-01-03 Thread jv244 at cam dot ac dot uk
The following is non-standard and the compiler should probably generate a
warning/error with '-pedantic -std=f95', but does not do so with
gcc version 4.3.0 20080103 (experimental) [trunk revision 131300] (GCC)

MODULE M1
 IMPLICIT NONE
 TYPE T1
   INTEGER :: I
 END TYPE T1
 INTERFACE ASSIGNMENT(=)
  MODULE PROCEDURE S1
 END INTERFACE
CONTAINS
 SUBROUTINE S1(I,J)
   TYPE(T1), INTENT(OUT)  :: I(2)
   TYPE(T1), INTENT(IN)  :: J(2)
   I%I=-J%I
 END SUBROUTINE S1
END MODULE M1

USE M1
TYPE(T1) :: I(2),J(2)
I(:)%I=1
WHERE (I(:)%I>0)
 J=I
END WHERE
END


-- 
   Summary: ice on where / ASSIGNMENT(=)
   Product: gcc
   Version: 4.3.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: fortran
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: jv244 at cam dot ac dot uk


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



[Bug fortran/34662] New: inout argument with parameter

2008-01-03 Thread jv244 at cam dot ac dot uk
The following is non-standard and the compiler should probably generate a
warning/error with '-pedantic -std=f95', but does not do so with
gcc version 4.3.0 20080103 (experimental) [trunk revision 131300] (GCC)

MODULE M1
 TYPE T1
  INTEGER :: I(3)
 END TYPE T1
 TYPE(T1), PARAMETER :: D1=T1((/1,2,3/))
CONTAINS
 SUBROUTINE S1(J)
  INTEGER, INTENT(INOUT) :: J
 END SUBROUTINE S1
END MODULE M1
USE M1
CALL S1(D1%I(3))
END


-- 
   Summary: inout argument with parameter
   Product: gcc
   Version: 4.3.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: fortran
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: jv244 at cam dot ac dot uk


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



[Bug fortran/34663] New: Specification expression is defined by dummy variables of different entry points

2008-01-03 Thread jv244 at cam dot ac dot uk
The following is non-standard and the compiler should probably generate a
warning/error with '-pedantic -std=f95', but does not do so with
gcc version 4.3.0 20080103 (experimental) [trunk revision 131300] (GCC)

   SUBROUTINE S1(I)
   CHARACTER(LEN=I+J) :: a
   ENTRY E1(J)
   END SUBROUTINE S1
   END


-- 
   Summary: Specification expression is defined by dummy variables
of different entry points
   Product: gcc
   Version: 4.3.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: fortran
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: jv244 at cam dot ac dot uk


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



[Bug fortran/34664] New: function ref not allowed

2008-01-03 Thread jv244 at cam dot ac dot uk
The following is non-standard and the compiler should probably generate a
warning/error with '-pedantic -std=f95', but does not do so with
gcc version 4.3.0 20080103 (experimental) [trunk revision 131300] (GCC)

INTEGER :: i(10)
DATA (i(MODULO(j,5)),j=1,4) /4*0/
END


-- 
   Summary: function ref not allowed
   Product: gcc
   Version: 4.3.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: fortran
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: jv244 at cam dot ac dot uk


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



[Bug fortran/34665] New: Cannot pass scalar to array argument 'a'

2008-01-03 Thread jv244 at cam dot ac dot uk
The following is non-standard and the compiler should probably generate a
warning/error with '-pedantic -std=f95', but does not do so with
gcc version 4.3.0 20080103 (experimental) [trunk revision 131300] (GCC)

CONTAINS
SUBROUTINE S1(a)
 real, dimension(:) :: a
 call s2(a(1))
END SUBROUTINE S1
SUBROUTINE S2(a)
 real, dimension(*) :: a
END SUBROUTINE S2
END


-- 
   Summary: Cannot pass scalar to array argument 'a'
   Product: gcc
   Version: 4.3.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: fortran
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: jv244 at cam dot ac dot uk


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



[Bug fortran/34656] New: modifies do loop variable

2008-01-03 Thread jv244 at cam dot ac dot uk
The following is non-standard and the compiler should probably generate a
warning/error with '-pedantic -std=f95', but does not do so with
gcc version 4.3.0 20080103 (experimental) [trunk revision 131300] (GCC)

PROGRAM test
IMPLICIT NONE
INTEGER :: i
DO i=1,100
   CALL do_something()
ENDDO
CONTAINS
 SUBROUTINE do_something()
 IMPLICIT NONE
 DO i=1,10
 ENDDO
 END SUBROUTINE do_something
END PROGRAM test


-- 
   Summary: modifies do loop variable
   Product: gcc
   Version: 4.3.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: fortran
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: jv244 at cam dot ac dot uk


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



[Bug gcov-profile/34610] [4.3 regression] ICE with "-fprofile-arcs -fopenmp"

2008-01-03 Thread hubicka at ucw dot cz


--- Comment #4 from hubicka at ucw dot cz  2008-01-03 21:05 ---
Subject: Re:  [4.3 regression] ICE with "-fprofile-arcs -fopenmp"

> (which compiles) profile counters are added before omp expansion and once 
> again
> for the child function.  Is there a reason why pass_tree_profile can't run
> after
> pass_cleanup_cfg/pass_init_datastructures/pass_expand_omp?

The reason is that pass_cleanup_cfg might remove some explicit goto
statements and gcov output would miss them then.
> If it can't be moved, could it at least skip all edges in omp parallel 
> regions?
> Or if it is not thread safe, just disable pass_tree_profile if flag_openmp...

Well, there is thread safe profiling.  In general tree_profile should
not see anything it profiled already.  I guess all we need to is to mark
clones constructed by OMP and ignore those functions in tree_profile?

Honza


-- 


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



[Bug target/34628] [4.2/4.3 Regression] problems with inlining on ARM

2008-01-03 Thread rakdver at gcc dot gnu dot org


--- Comment #8 from rakdver at gcc dot gnu dot org  2008-01-03 21:23 ---
(In reply to comment #7)
> The final tree IL looks good, so I suspect the RTL loop optimizer gets this
> wrong.
> 

>  add r1, sp, #56 // upper loop-bound; should have been #12
>  I actually wanted to say 'should have been #24' :-)

This insn is actually correct, r1 = &outbuf + 24.  The missing increment of r4
seems to be the problem.  Post-increment is created for r4, but it disappears
in the combine pass.  Does not seem to be loop optimizer related.


-- 

rakdver at gcc dot gnu dot org changed:

   What|Removed |Added

 Status|UNCONFIRMED |NEW
 Ever Confirmed|0   |1
   Last reconfirmed|-00-00 00:00:00 |2008-01-03 21:23:36
   date||


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



[Bug tree-optimization/31081] [4.3 Regression] Inliner messes up SSA for abnormals

2008-01-03 Thread hubicka at gcc dot gnu dot org


--- Comment #16 from hubicka at gcc dot gnu dot org  2008-01-03 21:25 
---
Subject: Bug 31081

Author: hubicka
Date: Thu Jan  3 21:23:26 2008
New Revision: 131306

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=131306
Log:

PR tree-optimization/31081
* tree-inline.c (remap_ssa_name): Initialize uninitialized SSA vars to
0 when inlining and not inlining to first basic block.
(remap_decl): When var is initialized to 0, don't set default_def.
(expand_call_inline): Set entry_bb.
* tree-inline.h (copy_body_data): Add entry_bb.

Modified:
trunk/gcc/ChangeLog
trunk/gcc/tree-inline.c
trunk/gcc/tree-inline.h


-- 


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



  1   2   >