[Bug driver/30460] [4.0/4.1/4.2/4.3 Regression] asm_debug is not initialized in gcc.c when using a "default" specs file

2007-01-14 Thread rschiele at gmail dot com


--- Comment #6 from rschiele at gmail dot com  2007-01-14 08:03 ---
Agreed, but why shouldn't we change the special handling of the default specs
file as suggested in comment #4? I can't see why we should enforce people to
specify _full_ information in the default specs file if they only want to
change _one_ thing from the compiled-in values. Is there any reason?

As far as I can see my suggestion in comment #4 would solve this issue and make
usage of a default specs file more convenient.


-- 


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



[Bug fortran/30452] Strange syntax error with high-value character

2007-01-14 Thread tkoenig at gcc dot gnu dot org


--- Comment #7 from tkoenig at gcc dot gnu dot org  2007-01-14 11:01 ---
Subject: Bug 30452

Author: tkoenig
Date: Sun Jan 14 11:01:20 2007
New Revision: 120768

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

PR fortran/30452
* scanner.c(next_char):  Cast next character to unsigned
to avoid confusion with error return codes.

2007-01-14  Thomas Koenig  <[EMAIL PROTECTED]>

PR fortran/30452
* gfortran.dg/string_0xfe_0xff_1.f90:  New test.


Added:
trunk/gcc/testsuite/gfortran.dg/string_0xfe_0xff_1.f90
Modified:
trunk/gcc/fortran/scanner.c
trunk/gcc/testsuite/ChangeLog


-- 


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



[Bug fortran/25020] NAG extension: module F90_UNIX providing access to UNIX functions (abort ...)

2007-01-14 Thread fxcoudert at gcc dot gnu dot org


-- 

fxcoudert at gcc dot gnu dot org changed:

   What|Removed |Added

 AssignedTo|unassigned at gcc dot gnu   |fxcoudert at gcc dot gnu dot
   |dot org |org
 Status|NEW |ASSIGNED
   Last reconfirmed|2006-10-30 12:18:39 |2007-01-14 11:02:28
   date||


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



[Bug fortran/24783] [4.1 and 4.2 only] Implicit none in module overwrite explicit in procedure

2007-01-14 Thread pault at gcc dot gnu dot org


--- Comment #4 from pault at gcc dot gnu dot org  2007-01-14 11:05 ---
(In reply to comment #3)
> Subject: Bug 24783
> 
> Author: aldot
> Date: Mon Nov 20 16:20:33 2006
> New Revision: 119016

Bernhard,

Are you going to apply this to 4.2, or do you want me to do it?  It would be
nice to clear the PR.

Paul


-- 


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



[Bug fortran/30437] [4.0/4.1/4.2/4.3 Regression] -Wno-all is rejected (even when fortran is not included)

2007-01-14 Thread manu at gcc dot gnu dot org


--- Comment #5 from manu at gcc dot gnu dot org  2007-01-14 11:13 ---
Why Wall is not in common.opt ? As far as I know, that would be the right fix.


-- 


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



[Bug target/30413] %z produces ICE for char operands

2007-01-14 Thread uros at gcc dot gnu dot org


--- Comment #4 from uros at gcc dot gnu dot org  2007-01-14 11:14 ---
Subject: Bug 30413

Author: uros
Date: Sun Jan 14 11:14:20 2007
New Revision: 120769

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=120769
Log:
PR target/30413
* config/i386/i386.c (print_operand) ['z']: Output 'b' for
operands of size 1.

testsuite/ChangeLog:

PR target/30413
* gcc.target/i386/pr30413.c: New test.


Added:
trunk/gcc/testsuite/gcc.target/i386/pr30413.c
Modified:
trunk/gcc/ChangeLog
trunk/gcc/config/i386/i386.c
trunk/gcc/testsuite/ChangeLog


-- 


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



[Bug fortran/29410] [4.2 only] bug with TRANSFER() and -O2

2007-01-14 Thread pault at gcc dot gnu dot org


--- Comment #10 from pault at gcc dot gnu dot org  2007-01-14 11:19 ---
(In reply to comment #9)
> It turns out my fix caused PR 29951 which I am testing a fix for PR 29951 
> now. 
> My new patch does not break this testcase which is a good sign.
> 
Andrew,

Were you going to apply this to 4.2, together with revision 119211, or will you
close them as fixed on 4.3?

Paul


-- 


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



[Bug target/30413] %z produces ICE for char operands

2007-01-14 Thread ubizjak at gmail dot com


--- Comment #5 from ubizjak at gmail dot com  2007-01-14 11:32 ---
Although %zN is not documented, we advertise it in config/i386/i386.md:

;; The special asm out single letter directives following a '%' are:
;; 'z' mov%z1 would be movl, movw, or movb depending on the mode of
;; operands[1].

The fix is straightforward and doesn't hurt anything. I have fixed this for
4.3.0.

BTW: The same binary code can be achieved by using plain "mov", as gas figures
out opcode from register name.


-- 

ubizjak at gmail dot com changed:

   What|Removed |Added

 AssignedTo|unassigned at gcc dot gnu   |ubizjak at gmail dot com
   |dot org |
 Status|NEW |ASSIGNED
  Known to work||4.3.0
   Last reconfirmed|2007-01-14 06:02:37 |2007-01-14 11:32:38
   date||


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



[Bug fortran/24783] [4.1 and 4.2 only] Implicit none in module overwrite explicit in procedure

2007-01-14 Thread aldot at gcc dot gnu dot org


--- Comment #5 from aldot at gcc dot gnu dot org  2007-01-14 11:37 ---
> Bernhard,
> 
> Are you going to apply this to 4.2, or do you want me to do it?  It would be
> nice to clear the PR.

Please feel free to backport this and (eventually) all other i left unfixed for
non-trunk versions that you may want to fix. Thank you very much for your time!

PS: Also, feel free to (re-)assign them to you, of course.

cheers,
> 
> Paul
> 


-- 


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



[Bug fortran/30235] [4.1 and 4.2] missing alternate return argument with explicit interface causes segfault

2007-01-14 Thread pault at gcc dot gnu dot org


--- Comment #7 from pault at gcc dot gnu dot org  2007-01-14 11:42 ---
(In reply to comment #6)
> Fixed on trunk, as per commit in #4.
> 
Brooks,

Are you going to commit this to 4.2 so that we can clear it?

Paul


-- 


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



[Bug fortran/30276] [4.2 only] gfortran include problem

2007-01-14 Thread pault at gcc dot gnu dot org


--- Comment #9 from pault at gcc dot gnu dot org  2007-01-14 11:45 ---
(In reply to comment #7)
> Fixed in 4.3; I will commit the patch for 4.2 in about a week; I will not fix
> 4.1.
> 
Tobias,

Are you in a position to do that now?  The week is up and all is well:)

Paul


-- 


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



[Bug fortran/29786] [4.1/4.2/4.3 Regression] rejects equivalence

2007-01-14 Thread pault at gcc dot gnu dot org


--- Comment #5 from pault at gcc dot gnu dot org  2007-01-14 13:32 ---
I do not seem able to fix the problem with attachments on my machine...

Following yesterday's discussion on the list,

trans-common.c:445

  switch (e->ts.type)
{
  case BT_INTEGER:
if (WORDS_BIG_ENDIAN)
  gfc_conv_mpz_to_integers (e->value.integer,
&buffer[0], &buffer[1]);
else
  gfc_conv_mpz_to_integers (e->value.integer,
&buffer[1], &buffer[0]);
memcpy (data, buffer, len);
return;

to replace the BT_INTEGER case in the attachment should do the job.

It needs testing now on 64 bit machines with both endian-nesses.

Brooks, I have reassigned this PR to you; I am very happy to help
out/collaborate on it but I think you are right - I just do not have the time
to see it through, right now.

Paul 


-- 

pault at gcc dot gnu dot org changed:

   What|Removed |Added

 AssignedTo|pault at gcc dot gnu dot org|brooks at gcc dot gnu dot
   ||org


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



[Bug fortran/29786] [4.1/4.2/4.3 Regression] rejects equivalence

2007-01-14 Thread pault at gcc dot gnu dot org


--- Comment #6 from pault at gcc dot gnu dot org  2007-01-14 13:42 ---
Forget the previous; it's wrong!

It does indicate that WORDS_BIG_ENDIAN and friends are available, however.

Paul


-- 


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



[Bug driver/30460] [4.0/4.1/4.2/4.3 Regression] asm_debug is not initialized in gcc.c when using a "default" specs file

2007-01-14 Thread rschiele at gmail dot com


--- Comment #7 from rschiele at gmail dot com  2007-01-14 13:52 ---
Created an attachment (id=12904)
 --> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=12904&action=view)
new version of the fix

This implements my new suggestion on how to fix this. Any comments?


-- 

rschiele at gmail dot com changed:

   What|Removed |Added

  Attachment #12903|0   |1
is obsolete||


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



[Bug c/30439] Intended Behaviour? #include searches for signal.h in local directory

2007-01-14 Thread andersin at freenet dot de


--- Comment #7 from andersin at freenet dot de  2007-01-14 14:28 ---
Your are correct, I have C_INCLUDE_PATH set (sorry I forgot to mention it). I
did not think it important, but it is. If C_INCLUDE_PATH ends with a colon,
compilation fails. Removing the colon is not a problem in general, but in my
special case it is happening because it is set up in my .bashrc like so:
export C_INCLUDE_PATH=/home/cbs/local/include:$C_INCLUDE_PATH, so I do  not see
a way of properly doing it save for checking if C_INCLUDE_PATH is empty before
adding to it.


-- 


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



[Bug fortran/30410] Host association bug w/ EXTERNAL

2007-01-14 Thread pault at gcc dot gnu dot org


--- Comment #4 from pault at gcc dot gnu dot org  2007-01-14 14:43 ---
Subject: Bug 30410

Author: pault
Date: Sun Jan 14 14:43:08 2007
New Revision: 120771

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=120771
Log:
2007-01-14  Paul Thomas  <[EMAIL PROTECTED]>

PR fortran/30410
* trans-decl.c (gfc_sym_mangled_function_id): Module, external
symbols must not have the module name prepended.

2007-01-14  Paul Thomas  <[EMAIL PROTECTED]>

PR fortran/30410
* gfortran.dg/external_procedures_2.f90: New test.

Added:
trunk/gcc/testsuite/gfortran.dg/external_procedures_2.f90
Modified:
trunk/gcc/fortran/ChangeLog
trunk/gcc/fortran/trans-decl.c
trunk/gcc/testsuite/ChangeLog


-- 


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



[Bug fortran/23232] [4.2 and 4.1 only] DATA implied DO variables

2007-01-14 Thread pault at gcc dot gnu dot org


--- Comment #10 from pault at gcc dot gnu dot org  2007-01-14 14:50 ---
Subject: Bug 23232

Author: pault
Date: Sun Jan 14 14:49:50 2007
New Revision: 120772

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=120772
Log:
2007-01-14  Jerry DeLisle  <[EMAIL PROTECTED]>
Paul Thomas  <[EMAIL PROTECTED]>

Back port from trunk

PR fortran/30408
* lang.opt: Add Wcharacter_truncation option.
* options.c (gfc_init_options): Initialize
gfc_option.warn_character_truncation to zero.
(gfc_handle_option): Add case for OPT_Wcharacter_truncation.

PR fortran/30408
* resolve.c (resolve_code): Use the code->expr character length
directly to set length of llen.

2007-01-14  Paul Thomas  <[EMAIL PROTECTED]>

Backports from trunk

PR fortran/23232
* decl.c (gfc_in_match_data, gfc_set_in_match_data): New
functions to signal that a DATA statement is being matched.
(gfc_match_data): Call gfc_set_in_match_data on entry and on
exit.
* gfortran.h : Add prototypes for above.
* expr.c (check_init_expr): Avoid check on parameter or
variable if gfc_in_match_data is true.
(gfc_match_init_expr): Do not call error on non-reduction of
expression if gfc_in_match_data is true.

PR fortran/27996
PR fortran/27998
* decl.c (gfc_set_constant_character_len): Add boolean arg to
flag array constructor resolution.  Warn if string is being
truncated.  Standard dependent error if string is padded. Set
new arg to false for all three calls to
gfc_set_constant_character_len.
* match.h : Add boolean arg to prototype for
gfc_set_constant_character_len.
* gfortran.h : Add warn_character_truncation to gfc_options.
* options.c (set_Wall): Set warn_character_truncation if -Wall
is set.
* resolve.c (resolve_code): Warn if rhs string in character
assignment has to be truncated.
* array.c (gfc_resolve_character_array_constructor): Set new
argument to true for call to gfc_set_constant_character_len.

PR fortran/30410
* trans-decl.c (gfc_sym_mangled_function_id): Module, external
symbols must not have the module name prepended.

2007-01-14  Paul Thomas  <[EMAIL PROTECTED]>

PR fortran/23232
* gfortran.dg/data_implied_do_1.f90: New test.

PR fortran/27996
PR fortran/27998
* gfortran.dg/char_length_1.f90: New test.

PR fortran/30410
* gfortran.dg/external_procedures_2.f90: New test.

Added:
branches/gcc-4_2-branch/gcc/testsuite/gfortran.dg/char_length_1.f90
branches/gcc-4_2-branch/gcc/testsuite/gfortran.dg/data_implied_do_1.f90
branches/gcc-4_2-branch/gcc/testsuite/gfortran.dg/external_procedures_2.f90
Modified:
branches/gcc-4_2-branch/gcc/fortran/ChangeLog
branches/gcc-4_2-branch/gcc/fortran/array.c
branches/gcc-4_2-branch/gcc/fortran/decl.c
branches/gcc-4_2-branch/gcc/fortran/expr.c
branches/gcc-4_2-branch/gcc/fortran/gfortran.h
branches/gcc-4_2-branch/gcc/fortran/lang.opt
branches/gcc-4_2-branch/gcc/fortran/match.h
branches/gcc-4_2-branch/gcc/fortran/options.c
branches/gcc-4_2-branch/gcc/fortran/resolve.c
branches/gcc-4_2-branch/gcc/fortran/trans-decl.c
branches/gcc-4_2-branch/gcc/testsuite/ChangeLog


-- 


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



[Bug fortran/30410] Host association bug w/ EXTERNAL

2007-01-14 Thread pault at gcc dot gnu dot org


--- Comment #5 from pault at gcc dot gnu dot org  2007-01-14 14:50 ---
Subject: Bug 30410

Author: pault
Date: Sun Jan 14 14:49:50 2007
New Revision: 120772

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=120772
Log:
2007-01-14  Jerry DeLisle  <[EMAIL PROTECTED]>
Paul Thomas  <[EMAIL PROTECTED]>

Back port from trunk

PR fortran/30408
* lang.opt: Add Wcharacter_truncation option.
* options.c (gfc_init_options): Initialize
gfc_option.warn_character_truncation to zero.
(gfc_handle_option): Add case for OPT_Wcharacter_truncation.

PR fortran/30408
* resolve.c (resolve_code): Use the code->expr character length
directly to set length of llen.

2007-01-14  Paul Thomas  <[EMAIL PROTECTED]>

Backports from trunk

PR fortran/23232
* decl.c (gfc_in_match_data, gfc_set_in_match_data): New
functions to signal that a DATA statement is being matched.
(gfc_match_data): Call gfc_set_in_match_data on entry and on
exit.
* gfortran.h : Add prototypes for above.
* expr.c (check_init_expr): Avoid check on parameter or
variable if gfc_in_match_data is true.
(gfc_match_init_expr): Do not call error on non-reduction of
expression if gfc_in_match_data is true.

PR fortran/27996
PR fortran/27998
* decl.c (gfc_set_constant_character_len): Add boolean arg to
flag array constructor resolution.  Warn if string is being
truncated.  Standard dependent error if string is padded. Set
new arg to false for all three calls to
gfc_set_constant_character_len.
* match.h : Add boolean arg to prototype for
gfc_set_constant_character_len.
* gfortran.h : Add warn_character_truncation to gfc_options.
* options.c (set_Wall): Set warn_character_truncation if -Wall
is set.
* resolve.c (resolve_code): Warn if rhs string in character
assignment has to be truncated.
* array.c (gfc_resolve_character_array_constructor): Set new
argument to true for call to gfc_set_constant_character_len.

PR fortran/30410
* trans-decl.c (gfc_sym_mangled_function_id): Module, external
symbols must not have the module name prepended.

2007-01-14  Paul Thomas  <[EMAIL PROTECTED]>

PR fortran/23232
* gfortran.dg/data_implied_do_1.f90: New test.

PR fortran/27996
PR fortran/27998
* gfortran.dg/char_length_1.f90: New test.

PR fortran/30410
* gfortran.dg/external_procedures_2.f90: New test.

Added:
branches/gcc-4_2-branch/gcc/testsuite/gfortran.dg/char_length_1.f90
branches/gcc-4_2-branch/gcc/testsuite/gfortran.dg/data_implied_do_1.f90
branches/gcc-4_2-branch/gcc/testsuite/gfortran.dg/external_procedures_2.f90
Modified:
branches/gcc-4_2-branch/gcc/fortran/ChangeLog
branches/gcc-4_2-branch/gcc/fortran/array.c
branches/gcc-4_2-branch/gcc/fortran/decl.c
branches/gcc-4_2-branch/gcc/fortran/expr.c
branches/gcc-4_2-branch/gcc/fortran/gfortran.h
branches/gcc-4_2-branch/gcc/fortran/lang.opt
branches/gcc-4_2-branch/gcc/fortran/match.h
branches/gcc-4_2-branch/gcc/fortran/options.c
branches/gcc-4_2-branch/gcc/fortran/resolve.c
branches/gcc-4_2-branch/gcc/fortran/trans-decl.c
branches/gcc-4_2-branch/gcc/testsuite/ChangeLog


-- 


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



[Bug fortran/27998] [4.2 and 4.1 only] character arrays: warn if erray constructor values have different lengths

2007-01-14 Thread pault at gcc dot gnu dot org


--- Comment #5 from pault at gcc dot gnu dot org  2007-01-14 14:50 ---
Subject: Bug 27998

Author: pault
Date: Sun Jan 14 14:49:50 2007
New Revision: 120772

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=120772
Log:
2007-01-14  Jerry DeLisle  <[EMAIL PROTECTED]>
Paul Thomas  <[EMAIL PROTECTED]>

Back port from trunk

PR fortran/30408
* lang.opt: Add Wcharacter_truncation option.
* options.c (gfc_init_options): Initialize
gfc_option.warn_character_truncation to zero.
(gfc_handle_option): Add case for OPT_Wcharacter_truncation.

PR fortran/30408
* resolve.c (resolve_code): Use the code->expr character length
directly to set length of llen.

2007-01-14  Paul Thomas  <[EMAIL PROTECTED]>

Backports from trunk

PR fortran/23232
* decl.c (gfc_in_match_data, gfc_set_in_match_data): New
functions to signal that a DATA statement is being matched.
(gfc_match_data): Call gfc_set_in_match_data on entry and on
exit.
* gfortran.h : Add prototypes for above.
* expr.c (check_init_expr): Avoid check on parameter or
variable if gfc_in_match_data is true.
(gfc_match_init_expr): Do not call error on non-reduction of
expression if gfc_in_match_data is true.

PR fortran/27996
PR fortran/27998
* decl.c (gfc_set_constant_character_len): Add boolean arg to
flag array constructor resolution.  Warn if string is being
truncated.  Standard dependent error if string is padded. Set
new arg to false for all three calls to
gfc_set_constant_character_len.
* match.h : Add boolean arg to prototype for
gfc_set_constant_character_len.
* gfortran.h : Add warn_character_truncation to gfc_options.
* options.c (set_Wall): Set warn_character_truncation if -Wall
is set.
* resolve.c (resolve_code): Warn if rhs string in character
assignment has to be truncated.
* array.c (gfc_resolve_character_array_constructor): Set new
argument to true for call to gfc_set_constant_character_len.

PR fortran/30410
* trans-decl.c (gfc_sym_mangled_function_id): Module, external
symbols must not have the module name prepended.

2007-01-14  Paul Thomas  <[EMAIL PROTECTED]>

PR fortran/23232
* gfortran.dg/data_implied_do_1.f90: New test.

PR fortran/27996
PR fortran/27998
* gfortran.dg/char_length_1.f90: New test.

PR fortran/30410
* gfortran.dg/external_procedures_2.f90: New test.

Added:
branches/gcc-4_2-branch/gcc/testsuite/gfortran.dg/char_length_1.f90
branches/gcc-4_2-branch/gcc/testsuite/gfortran.dg/data_implied_do_1.f90
branches/gcc-4_2-branch/gcc/testsuite/gfortran.dg/external_procedures_2.f90
Modified:
branches/gcc-4_2-branch/gcc/fortran/ChangeLog
branches/gcc-4_2-branch/gcc/fortran/array.c
branches/gcc-4_2-branch/gcc/fortran/decl.c
branches/gcc-4_2-branch/gcc/fortran/expr.c
branches/gcc-4_2-branch/gcc/fortran/gfortran.h
branches/gcc-4_2-branch/gcc/fortran/lang.opt
branches/gcc-4_2-branch/gcc/fortran/match.h
branches/gcc-4_2-branch/gcc/fortran/options.c
branches/gcc-4_2-branch/gcc/fortran/resolve.c
branches/gcc-4_2-branch/gcc/fortran/trans-decl.c
branches/gcc-4_2-branch/gcc/testsuite/ChangeLog


-- 


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



[Bug fortran/30408] [gfortran, 4.3 regression]: ICE on valid with -Wall

2007-01-14 Thread pault at gcc dot gnu dot org


--- Comment #7 from pault at gcc dot gnu dot org  2007-01-14 14:50 ---
Subject: Bug 30408

Author: pault
Date: Sun Jan 14 14:49:50 2007
New Revision: 120772

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=120772
Log:
2007-01-14  Jerry DeLisle  <[EMAIL PROTECTED]>
Paul Thomas  <[EMAIL PROTECTED]>

Back port from trunk

PR fortran/30408
* lang.opt: Add Wcharacter_truncation option.
* options.c (gfc_init_options): Initialize
gfc_option.warn_character_truncation to zero.
(gfc_handle_option): Add case for OPT_Wcharacter_truncation.

PR fortran/30408
* resolve.c (resolve_code): Use the code->expr character length
directly to set length of llen.

2007-01-14  Paul Thomas  <[EMAIL PROTECTED]>

Backports from trunk

PR fortran/23232
* decl.c (gfc_in_match_data, gfc_set_in_match_data): New
functions to signal that a DATA statement is being matched.
(gfc_match_data): Call gfc_set_in_match_data on entry and on
exit.
* gfortran.h : Add prototypes for above.
* expr.c (check_init_expr): Avoid check on parameter or
variable if gfc_in_match_data is true.
(gfc_match_init_expr): Do not call error on non-reduction of
expression if gfc_in_match_data is true.

PR fortran/27996
PR fortran/27998
* decl.c (gfc_set_constant_character_len): Add boolean arg to
flag array constructor resolution.  Warn if string is being
truncated.  Standard dependent error if string is padded. Set
new arg to false for all three calls to
gfc_set_constant_character_len.
* match.h : Add boolean arg to prototype for
gfc_set_constant_character_len.
* gfortran.h : Add warn_character_truncation to gfc_options.
* options.c (set_Wall): Set warn_character_truncation if -Wall
is set.
* resolve.c (resolve_code): Warn if rhs string in character
assignment has to be truncated.
* array.c (gfc_resolve_character_array_constructor): Set new
argument to true for call to gfc_set_constant_character_len.

PR fortran/30410
* trans-decl.c (gfc_sym_mangled_function_id): Module, external
symbols must not have the module name prepended.

2007-01-14  Paul Thomas  <[EMAIL PROTECTED]>

PR fortran/23232
* gfortran.dg/data_implied_do_1.f90: New test.

PR fortran/27996
PR fortran/27998
* gfortran.dg/char_length_1.f90: New test.

PR fortran/30410
* gfortran.dg/external_procedures_2.f90: New test.

Added:
branches/gcc-4_2-branch/gcc/testsuite/gfortran.dg/char_length_1.f90
branches/gcc-4_2-branch/gcc/testsuite/gfortran.dg/data_implied_do_1.f90
branches/gcc-4_2-branch/gcc/testsuite/gfortran.dg/external_procedures_2.f90
Modified:
branches/gcc-4_2-branch/gcc/fortran/ChangeLog
branches/gcc-4_2-branch/gcc/fortran/array.c
branches/gcc-4_2-branch/gcc/fortran/decl.c
branches/gcc-4_2-branch/gcc/fortran/expr.c
branches/gcc-4_2-branch/gcc/fortran/gfortran.h
branches/gcc-4_2-branch/gcc/fortran/lang.opt
branches/gcc-4_2-branch/gcc/fortran/match.h
branches/gcc-4_2-branch/gcc/fortran/options.c
branches/gcc-4_2-branch/gcc/fortran/resolve.c
branches/gcc-4_2-branch/gcc/fortran/trans-decl.c
branches/gcc-4_2-branch/gcc/testsuite/ChangeLog


-- 


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



[Bug fortran/27996] [4.2 and 4.1 only] Compile time warn for: character(2) :: str = 'ABC' (expression truncated)

2007-01-14 Thread pault at gcc dot gnu dot org


--- Comment #4 from pault at gcc dot gnu dot org  2007-01-14 14:50 ---
Subject: Bug 27996

Author: pault
Date: Sun Jan 14 14:49:50 2007
New Revision: 120772

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=120772
Log:
2007-01-14  Jerry DeLisle  <[EMAIL PROTECTED]>
Paul Thomas  <[EMAIL PROTECTED]>

Back port from trunk

PR fortran/30408
* lang.opt: Add Wcharacter_truncation option.
* options.c (gfc_init_options): Initialize
gfc_option.warn_character_truncation to zero.
(gfc_handle_option): Add case for OPT_Wcharacter_truncation.

PR fortran/30408
* resolve.c (resolve_code): Use the code->expr character length
directly to set length of llen.

2007-01-14  Paul Thomas  <[EMAIL PROTECTED]>

Backports from trunk

PR fortran/23232
* decl.c (gfc_in_match_data, gfc_set_in_match_data): New
functions to signal that a DATA statement is being matched.
(gfc_match_data): Call gfc_set_in_match_data on entry and on
exit.
* gfortran.h : Add prototypes for above.
* expr.c (check_init_expr): Avoid check on parameter or
variable if gfc_in_match_data is true.
(gfc_match_init_expr): Do not call error on non-reduction of
expression if gfc_in_match_data is true.

PR fortran/27996
PR fortran/27998
* decl.c (gfc_set_constant_character_len): Add boolean arg to
flag array constructor resolution.  Warn if string is being
truncated.  Standard dependent error if string is padded. Set
new arg to false for all three calls to
gfc_set_constant_character_len.
* match.h : Add boolean arg to prototype for
gfc_set_constant_character_len.
* gfortran.h : Add warn_character_truncation to gfc_options.
* options.c (set_Wall): Set warn_character_truncation if -Wall
is set.
* resolve.c (resolve_code): Warn if rhs string in character
assignment has to be truncated.
* array.c (gfc_resolve_character_array_constructor): Set new
argument to true for call to gfc_set_constant_character_len.

PR fortran/30410
* trans-decl.c (gfc_sym_mangled_function_id): Module, external
symbols must not have the module name prepended.

2007-01-14  Paul Thomas  <[EMAIL PROTECTED]>

PR fortran/23232
* gfortran.dg/data_implied_do_1.f90: New test.

PR fortran/27996
PR fortran/27998
* gfortran.dg/char_length_1.f90: New test.

PR fortran/30410
* gfortran.dg/external_procedures_2.f90: New test.

Added:
branches/gcc-4_2-branch/gcc/testsuite/gfortran.dg/char_length_1.f90
branches/gcc-4_2-branch/gcc/testsuite/gfortran.dg/data_implied_do_1.f90
branches/gcc-4_2-branch/gcc/testsuite/gfortran.dg/external_procedures_2.f90
Modified:
branches/gcc-4_2-branch/gcc/fortran/ChangeLog
branches/gcc-4_2-branch/gcc/fortran/array.c
branches/gcc-4_2-branch/gcc/fortran/decl.c
branches/gcc-4_2-branch/gcc/fortran/expr.c
branches/gcc-4_2-branch/gcc/fortran/gfortran.h
branches/gcc-4_2-branch/gcc/fortran/lang.opt
branches/gcc-4_2-branch/gcc/fortran/match.h
branches/gcc-4_2-branch/gcc/fortran/options.c
branches/gcc-4_2-branch/gcc/fortran/resolve.c
branches/gcc-4_2-branch/gcc/fortran/trans-decl.c
branches/gcc-4_2-branch/gcc/testsuite/ChangeLog


-- 


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



[Bug fortran/23232] [4.1 only] DATA implied DO variables

2007-01-14 Thread pault at gcc dot gnu dot org


--- Comment #11 from pault at gcc dot gnu dot org  2007-01-14 14:51 ---
Fixed on trunk and 4.2

Paul


-- 

pault at gcc dot gnu dot org changed:

   What|Removed |Added

 Status|ASSIGNED|RESOLVED
 Resolution||FIXED
Summary|[4.2 and 4.1 only] DATA |[4.1 only] DATA implied DO
   |implied DO variables|variables


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



[Bug fortran/27996] [4.1 only] Compile time warn for: character(2) :: str = 'ABC' (expression truncated)

2007-01-14 Thread pault at gcc dot gnu dot org


--- Comment #5 from pault at gcc dot gnu dot org  2007-01-14 14:52 ---
Fixed on trunk and 4.2

Paul


-- 

pault at gcc dot gnu dot org changed:

   What|Removed |Added

 Status|ASSIGNED|RESOLVED
 Resolution||FIXED
Summary|[4.2 and 4.1 only] Compile  |[4.1 only] Compile time warn
   |time warn for:  character(2)|for:  character(2) :: str =
   |:: str = 'ABC' (expression  |'ABC' (expression truncated)
   |truncated)  |


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



[Bug fortran/27998] [4.1 only] character arrays: warn if erray constructor values have different lengths

2007-01-14 Thread pault at gcc dot gnu dot org


--- Comment #6 from pault at gcc dot gnu dot org  2007-01-14 14:53 ---
Fixed on trunk and 4.2

Paul


-- 

pault at gcc dot gnu dot org changed:

   What|Removed |Added

 Status|ASSIGNED|RESOLVED
 Resolution||FIXED
Summary|[4.2 and 4.1 only] character|[4.1 only] character arrays:
   |arrays: warn if erray   |warn if erray constructor
   |constructor values have |values have different
   |different lengths   |lengths


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



[Bug fortran/30410] Host association bug w/ EXTERNAL

2007-01-14 Thread pault at gcc dot gnu dot org


--- Comment #6 from pault at gcc dot gnu dot org  2007-01-14 14:55 ---
Fixed on trunk and 4.2

Paul


-- 

pault at gcc dot gnu dot org changed:

   What|Removed |Added

 Status|ASSIGNED|RESOLVED
 Resolution||FIXED


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



[Bug tree-optimization/30089] Compiling FreeFem3d uses unreasonable amount of time and memory

2007-01-14 Thread rguenth at gcc dot gnu dot org


--- Comment #23 from rguenth at gcc dot gnu dot org  2007-01-14 15:06 
---
Can it be the patch changes result of alias analysis?  I get (big) runtime
differences (but maybe due to unrelated changes) with the tester from Jan 13
(patched) vs. Jan 14 (unpatched).


-- 


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



[Bug middle-end/30403] [4.3 Regression] libssp/ssp.c:177: ICE: in cgraph_expand_function, at cgraphunit.c:973

2007-01-14 Thread danglin at gcc dot gnu dot org


--- Comment #3 from danglin at gcc dot gnu dot org  2007-01-14 15:20 ---
Yes, this is fixed.


-- 

danglin at gcc dot gnu dot org changed:

   What|Removed |Added

 Status|UNCONFIRMED |RESOLVED
 Resolution||FIXED


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



[Bug middle-end/30322] ((-i-1) + i) +1) is turned into ~i + (i+1) and never into 0 on the tree level

2007-01-14 Thread rguenth at gcc dot gnu dot org


--- Comment #9 from rguenth at gcc dot gnu dot org  2007-01-14 16:12 ---
This is now fixed for tramp3d.


-- 

rguenth at gcc dot gnu dot org changed:

   What|Removed |Added

 Status|ASSIGNED|RESOLVED
  Known to fail||4.3.0
  Known to work||4.3.0
 Resolution||FIXED
   Target Milestone|--- |4.3.0


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



[Bug testsuite/24107] gcc.dg/20050922-1.c relies in stdint.h

2007-01-14 Thread danglin at gcc dot gnu dot org


--- Comment #8 from danglin at gcc dot gnu dot org  2007-01-14 17:25 ---
Subject: Bug 24107

Author: danglin
Date: Sun Jan 14 17:25:05 2007
New Revision: 120776

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=120776
Log:
PR testsuite/24107
Backport from mainline
2005-10-24  Paul Brook  <[EMAIL PROTECTED]>
* gcc.dg/20050922-1.c: Provide definition of uint32_t without using
stdint.h.


Modified:
branches/gcc-4_0-branch/gcc/testsuite/ChangeLog
branches/gcc-4_0-branch/gcc/testsuite/gcc.dg/20050922-1.c


-- 


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



[Bug c/30439] Intended Behaviour? #include searches for signal.h in local directory

2007-01-14 Thread pinskia at gcc dot gnu dot org


--- Comment #8 from pinskia at gcc dot gnu dot org  2007-01-14 18:21 ---
"a:" means have a and the current directory.

So this is not a bug, C_INCLUDE_PATH acts just like PATH in that an empty
argument after the colon means the current directory.

>export C_INCLUDE_PATH=/home/cbs/local/include:$C_INCLUDE_PATH, so I do  not see
> a way of properly doing it save for checking if C_INCLUDE_PATH is empty before
> adding to it.

There are a bunches of way of checking if C_INCLUDE_PATH is set, like
$(?C_INCLUDE_PATH) I think will tell you if it is set or not.  This is not the
right forum to ask about shell programming really.


-- 

pinskia at gcc dot gnu dot org changed:

   What|Removed |Added

 Status|UNCONFIRMED |RESOLVED
 Resolution||INVALID


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



[Bug objc/30461] New: Class methods should be marked as hidden

2007-01-14 Thread pinskia at gcc dot gnu dot org
As no one call call the class methods of Objc directly, they should be marked
as hidden so that they bind locally in a shared library.


-- 
   Summary: Class methods should be marked as hidden
   Product: gcc
   Version: 4.3.0
Status: UNCONFIRMED
  Keywords: missed-optimization
  Severity: normal
  Priority: P3
 Component: objc
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: pinskia at gcc dot gnu dot org


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



[Bug objc/30461] Class methods should be marked as hidden

2007-01-14 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=30461



[Bug libobjc/30462] New: libobjc public headers should be wrapped with #pragam visibilitity push(defualt)/pop

2007-01-14 Thread pinskia at gcc dot gnu dot org
The libobjc public headers should be wrapped with #pragam visibilitity
push(defualt)/pop  so that people (and libobjc) can use -fvisibility=hidden.


-- 
   Summary: libobjc public headers should be wrapped with #pragam
visibilitity push(defualt)/pop
   Product: gcc
   Version: 4.3.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: libobjc
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: pinskia at gcc dot gnu dot org


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



[Bug libobjc/30462] libobjc public headers should be wrapped with #pragam visibilitity push(defualt)/pop

2007-01-14 Thread pinskia at gcc dot gnu dot org


--- Comment #1 from pinskia at gcc dot gnu dot org  2007-01-14 19:10 ---
Mine, working on it.


-- 

pinskia at gcc dot gnu dot org changed:

   What|Removed |Added

 AssignedTo|unassigned at gcc dot gnu   |pinskia at gcc dot gnu dot
   |dot org |org
 Status|UNCONFIRMED |ASSIGNED
 Ever Confirmed|0   |1
   Last reconfirmed|-00-00 00:00:00 |2007-01-14 19:10:00
   date||


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



[Bug libstdc++/30463] New: [regression] -Wconversion triggers

2007-01-14 Thread gerald at pfeifer dot com
Consider the following program:

  #include 

  void f() {
std::vector v;

v.push_back(1);
  }

-Wconversion now (as of 2007-01-14) triggers the following warning in
the libstdc++ headers:

/suse/gp/gcc-i686/lib/gcc/i686-suse-linux/4.3.0/../../../../include/c++/4.3.0/bits/stl_vector.h:
In destructor 'std::_Vector_base<_Tp, _Alloc>::~_Vector_base() [with _Tp = int,
_Alloc = std::allocator]':
/suse/gp/gcc-i686/lib/gcc/i686-suse-linux/4.3.0/../../../../include/c++/4.3.0/bits/stl_vector.h:199:
  instantiated from 'std::vector<_Tp, _Alloc>::vector(const _Alloc&) [with _Tp
= int, _Alloc = std::allocator]'
x.cc:4:   instantiated from here
/suse/gp/gcc-i686/lib/gcc/i686-suse-linux/4.3.0/../../../../include/c++/4.3.0/bits/stl_vector.h:120:
warning: conversion to 'unsigned int' from 'int' may alter its value
/suse/gp/gcc-i686/lib/gcc/i686-suse-linux/4.3.0/../../../../include/c++/4.3.0/bits/vector.tcc:
In member function 'void std::vector<_Tp,
_Alloc>::_M_insert_aux(__gnu_cxx::__normal_iterator::_Tp_alloc_type::pointer, std::vector<_Tp,
_Alloc> >, const _Tp&) [with _Tp = int, _Alloc = std::allocator]':
/suse/gp/gcc-i686/lib/gcc/i686-suse-linux/4.3.0/../../../../include/c++/4.3.0/bits/stl_vector.h:605:
  instantiated from 'void std::vector<_Tp, _Alloc>::push_back(const _Tp&) [with
_Tp = int, _Alloc = std::allocator]'
x.cc:6:   instantiated from here
/suse/gp/gcc-i686/lib/gcc/i686-suse-linux/4.3.0/../../../../include/c++/4.3.0/bits/vector.tcc:295:
warning: conversion to 'unsigned int' from 'int' may alter its value

This is bad.  Our own headers should not trigger such warnings when a 
user enables them for his own code.


-- 
   Summary: [regression] -Wconversion triggers
   Product: gcc
   Version: 4.3.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: libstdc++
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: gerald at pfeifer dot com


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



[Bug libstdc++/30464] New: [regression] -Wconversion triggers warnings for deque<>

2007-01-14 Thread gerald at pfeifer dot com
Consider the following program:

  #include 

  void f() {
std::deque d;

d.push_back(1);
  }

-Wconversion now (as of 2007-01-14) triggers the following warning in
the libstdc++ headers:

/suse/gp/gcc-i686/lib/gcc/i686-suse-linux/4.3.0/../../../../include/c++/4.3.0/bits/deque.tcc:
In member function 'void std::deque<_Tp, _Alloc>::_M_reallocate_map(size_t,
bool) [with _Tp = int, _Alloc = std::allocator]':
/suse/gp/gcc-i686/lib/gcc/i686-suse-linux/4.3.0/../../../../include/c++/4.3.0/bits/stl_deque.h:1520:
  instantiated from 'void std::deque<_Tp,
_Alloc>::_M_reserve_map_at_back(size_t) [with _Tp = int, _Alloc =
std::allocator]'
/suse/gp/gcc-i686/lib/gcc/i686-suse-linux/4.3.0/../../../../include/c++/4.3.0/bits/deque.tcc:308:
  instantiated from 'void std::deque<_Tp, _Alloc>::_M_push_back_aux(const _Tp&)
[with _Tp = int, _Alloc = std::allocator]'
/suse/gp/gcc-i686/lib/gcc/i686-suse-linux/4.3.0/../../../../include/c++/4.3.0/bits/stl_deque.h:1062:
  instantiated from 'void std::deque<_Tp, _Alloc>::push_back(const _Tp&) [with
_Tp = int, _Alloc = std::allocator]'
x.cc:6:   instantiated from here
/suse/gp/gcc-i686/lib/gcc/i686-suse-linux/4.3.0/../../../../include/c++/4.3.0/bits/deque.tcc:714:
warning: conversion to 'size_t' from 'int' may alter its value


-- 
   Summary: [regression] -Wconversion triggers warnings for deque<>
   Product: gcc
   Version: 4.3.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: libstdc++
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: gerald at pfeifer dot com


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



[Bug other/30465] New: Duplicated overflow warning

2007-01-14 Thread pcarlini at suse dot de
paolo:~/Work> more warning.cc
int main()
{
 wchar_t wc = ((wchar_t)1 << 31) - 1;
}
paolo:~/Work> g++ warning.cc
warning.cc: In function 'int main()':
warning.cc:3: warning: integer overflow in expression
warning.cc:3: warning: overflow in implicit constant conversion


-- 
   Summary: Duplicated overflow warning
   Product: gcc
   Version: 4.3.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: other
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: pcarlini at suse dot de


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



[Bug fortran/30352] [4.1, 4.2 only] False error on INTENT(IN) when modifying pointees

2007-01-14 Thread pault at gcc dot gnu dot org


--- Comment #3 from pault at gcc dot gnu dot org  2007-01-14 21:41 ---
This is indeed fixed.

Paul


-- 

pault at gcc dot gnu dot org changed:

   What|Removed |Added

 Status|NEW |RESOLVED
 Resolution||FIXED


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



[Bug libstdc++/30464] [regression] -Wconversion triggers warnings for deque<>::push_back()

2007-01-14 Thread manu at gcc dot gnu dot org


--- Comment #1 from manu at gcc dot gnu dot org  2007-01-14 23:03 ---
Gerald,

One thing is whether the warning was incorrect or not. Looking at the code and
the definition of Wconversion, what do you think?

Another thing is whether we want or not to emit warnings for libstdc++. I don't
know how I can prevent this. I believed warnings in system headers were handled
automatically by the -Wsystem-headers option. So I guess this is not a system
header. 


-- 

manu at gcc dot gnu dot org changed:

   What|Removed |Added

 CC||manu at gcc dot gnu dot org


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



[Bug libstdc++/30464] [regression] -Wconversion triggers warnings for deque<>::push_back()

2007-01-14 Thread pcarlini at suse dot de


--- Comment #2 from pcarlini at suse dot de  2007-01-14 23:08 ---
(In reply to comment #1)
> ...So I guess this is not a system header. 

In fact, it *is* a system header :-( See my message to gcc@ 


-- 


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



[Bug libstdc++/30464] [regression] -Wconversion triggers warnings for deque<>::push_back()

2007-01-14 Thread manu at gcc dot gnu dot org


--- Comment #3 from manu at gcc dot gnu dot org  2007-01-14 23:15 ---
So I cannot understand why are we warning. Warnings in system headers should
only be emitted when using -Wsystem-headers.


-- 


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



[Bug libstdc++/30464] [regression] -Wconversion triggers warnings for deque<>::push_back()

2007-01-14 Thread pcarlini at suse dot de


--- Comment #4 from pcarlini at suse dot de  2007-01-14 23:22 ---
(In reply to comment #3)
> So I cannot understand why are we warning. Warnings in system headers should
> only be emitted when using -Wsystem-headers.

Did you read my reply? Again: the system_header pragma does *not* work with
templates!


-- 


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



[Bug libstdc++/30464] [regression] -Wconversion triggers warnings for deque<>::push_back()

2007-01-14 Thread manu at gcc dot gnu dot org


--- Comment #5 from manu at gcc dot gnu dot org  2007-01-14 23:37 ---
Sorry I read your reply later. 

So, that is it, isn't it? Wsystem-headers needs to be fixed since we don't want
to emit warnings for system headers even if those warnings are correct.


-- 


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



[Bug libstdc++/30464] [regression] -Wconversion triggers warnings for deque<>::push_back()

2007-01-14 Thread pcarlini at suse dot de


--- Comment #6 from pcarlini at suse dot de  2007-01-15 00:30 ---
(In reply to comment #5)
> Sorry I read your reply later. 
> 
> So, that is it, isn't it? Wsystem-headers needs to be fixed since we don't 
> want
> to emit warnings for system headers even if those warnings are correct.

Well, first we don't know when, how, if, the pragma system_header will be ever
fixed. Then, assuming the warning is correct, certainly we want to adjust the
library, that, in my opinion, makes certainly for good engineering (in fact, we
are generally relying on the effect of the pragma only in very few,
last-resort, situations). Alternately, never emit the warning, of course.


-- 


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



[Bug java/30466] New: gcj crashes when using invalid options

2007-01-14 Thread davorin dot ucakar at gmail dot com
gcj crashes when invoking like 'gcj -Msomething -MT something SomeFile.java'
where SomeFile.java could be any existing file, even empty.

OUTPUT:
$ gcj -Manything -MT anything Test.java -v
Using built-in specs.
Reading specs from /usr/lib/gcc/i686-pc-linux-gnu/4.1.2/../../../libgcj.spec
rename spec lib to liborig
gcj: unrecognized option '-Manything'
Target: i686-pc-linux-gnu
Configured with: ../gcc-4.1-20061215/configure --prefix=/usr --enable-shared
--enable-languages=java --enable-threads=posix --enable-__cxa_atexit
--enable-java-awt=gtk --libdir=/usr/lib --disable-multilib --enable-clocale=gnu
--with-java-home=/usr/lib/jvm/java-1.4.2-gcj-1.4.2.0/jre
Thread model: posix
gcc version 4.1.2 20061215 (prerelease)
 /usr/libexec/gcc/i686-pc-linux-gnu/4.1.2/jc1 Test.java -fhash-synchronization
-fno-use-divide-subroutine -fuse-boehm-gc -fnon-call-exceptions
-fkeep-inline-functions -quiet -dumpbase Test.java -mtune=pentiumpro -auxbase
Test -g1 -version -MT anything -o /tmp/ccpXTZV8.s
GNU Java version 4.1.2 20061215 (prerelease) (i686-pc-linux-gnu)
compiled by GNU C version 4.1.2 20061215 (prerelease).
GGC heuristics: --param ggc-min-expand=55 --param ggc-min-heapsize=48233
Class path starts here:
./
/usr/lib/jvm/java-1.4.2-gcj-1.4.2.0/lib/
/usr/share/java/libgcj-4.1.2.jar/ (system) (zip)
jc1: ../../gcc-4.1-20061215/gcc/java/jcf-depend.c:135: jcf_dependency_write:
Assertion `dependencies' failed.
Test.java:1: internal compiler error: Aborted
Please submit a full bug report,
with preprocessed source if appropriate.
See http://gcc.gnu.org/bugs.html> for instructions.


-- 
   Summary: gcj crashes when using invalid options
   Product: gcc
   Version: 4.1.2
Status: UNCONFIRMED
  Severity: minor
  Priority: P3
 Component: java
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: davorin dot ucakar at gmail dot com
  GCC host triplet: i686-pc-linux-gnu
GCC target triplet: i686-pc-linux-gnu


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



[Bug bootstrap/30467] New: [4.3 regression] Bootstrap failure on i386

2007-01-14 Thread gerald at pfeifer dot com
I am seeing the following bootstrap failure on i386, both
i386-unknown-freebsd5.4 and i386-suse-linux.  i686 does not
have this issue on both systems.

/tmp/OBJ-0114-2254/./prev-gcc/xgcc -B/tmp/OBJ-0114-2254/./prev-gcc/
-B/suse/gp/gcc-i686/i386-suse-linux/bin/ -c   -O2 -g -fomit-frame-pointer
-DIN_GCC   -W -Wall -Wwrite-strings -Wstrict-prototypes -Wmissing-prototypes
-pedantic -Wno-long-long -Wno-variadic-macros -Wno-overlength-strings
-Wold-style-definition -Wmissing-format-attribute -fno-common
-DHAVE_CONFIG_H -I. -I. -I/mounts/users-space/gp/gcc/trunk/gcc
-I/mounts/users-space/gp/gcc/trunk/gcc/.
-I/mounts/users-space/gp/gcc/trunk/gcc/../include
-I/mounts/users-space/gp/gcc/trunk/gcc/../libcpp/include
-I/mounts/users-space/gp/gcc/trunk/gcc/../libdecnumber -I../libdecnumber
/mounts/users-space/gp/gcc/trunk/gcc/varasm.c -o varasm.o
/mounts/users-space/gp/gcc/trunk/gcc/tree.c: In function
'recompute_tree_invariant_for_addr_expr':
/mounts/users-space/gp/gcc/trunk/gcc/tree.c:2871: internal compiler error:
Segmentation fault
Please submit a full bug report,
with preprocessed source if appropriate.
See http://gcc.gnu.org/bugs.html> for instructions.


-- 
   Summary: [4.3 regression] Bootstrap failure on i386
   Product: gcc
   Version: 4.3.0
Status: UNCONFIRMED
  Severity: blocker
  Priority: P3
 Component: bootstrap
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: gerald at pfeifer dot com
  GCC host triplet: i386-suse-linux


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



[Bug bootstrap/30467] [4.3 regression] Bootstrap failure on i386

2007-01-14 Thread hubicka at gcc dot gnu dot org


--- Comment #1 from hubicka at gcc dot gnu dot org  2007-01-15 01:56 ---
since the bug does not reproduce on Linux setup, would be possible to have
preprocessed testcase and possibly also backtrace of the crash?

Thank you,
Honza


-- 


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



[Bug bootstrap/30467] [4.3 regression] Bootstrap failure on i386

2007-01-14 Thread gerald at pfeifer dot com


--- Comment #2 from gerald at pfeifer dot com  2007-01-15 02:06 ---
It does reproduce on openSUSE 10.2 for me when I configure with
  --disable-libgcj i386-suse-linux

I am kicking off a new bootstrap and will provide pre-processed sources
tomorrow.


-- 


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



[Bug preprocessor/30468] New: -M not fully chops dirname

2007-01-14 Thread kaminaga at sm dot sony dot co dot jp
I see -M option for gcc-4.1.1 output chops dirname, but faces below
problem.

$ cat foo.c 
#include "foo.h"
$ cat Include/foo.h 
/* empty */
$ gcc41 -M -I.//Include foo.c 
foo.o: foo.c /Include/foo.h
 ^
 root?


gcc-3.4.4 output was:
$ gcc -M -I.//Include foo.c 
foo.o: foo.c .//Include/foo.h


-- 
   Summary: -M not fully chops dirname
   Product: gcc
   Version: 4.1.1
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: preprocessor
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: kaminaga at sm dot sony dot co dot jp


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



[Bug bootstrap/30469] New: [4.3 Regression] profiledbootstrap no longer works

2007-01-14 Thread pinskia at gcc dot gnu dot org
When doing a "make profiledbootstrap", -fprofile-generate is used for libgcc
which is wrong.


-- 
   Summary: [4.3 Regression] profiledbootstrap no longer works
   Product: gcc
   Version: 4.3.0
Status: UNCONFIRMED
  Keywords: build
  Severity: normal
  Priority: P3
 Component: bootstrap
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: pinskia at gcc dot gnu dot org


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



[Bug bootstrap/30469] [4.3 Regression] profiledbootstrap no longer works

2007-01-14 Thread pinskia at gcc dot gnu dot org


--- Comment #1 from pinskia at gcc dot gnu dot org  2007-01-15 02:29 ---
This was reported here:
http://gcc.gnu.org/ml/java/2007-01/msg00050.html

And I was able to reproduce it with just --enable-languages=c, make
profiledbootstrap on i686-linux-gnu.


-- 

pinskia at gcc dot gnu dot org changed:

   What|Removed |Added

   Target Milestone|--- |4.3.0


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



[Bug preprocessor/30468] [4.0/4.1/4.2/4.3 Regression] -M not fully chops dirname

2007-01-14 Thread pinskia at gcc dot gnu dot org


--- Comment #1 from pinskia at gcc dot gnu dot org  2007-01-15 02:34 ---
Confirmed.


-- 

pinskia at gcc dot gnu dot org changed:

   What|Removed |Added

 CC||pinskia at gcc dot gnu dot
   ||org
 Status|UNCONFIRMED |NEW
 Ever Confirmed|0   |1
  Known to fail|4.1.1   |4.1.1 4.0.0 4.0.2 4.3.0
  Known to work|3.4.4   |3.4.4 3.4.0
   Last reconfirmed|-00-00 00:00:00 |2007-01-15 02:34:25
   date||
Summary|-M not fully chops dirname  |[4.0/4.1/4.2/4.3 Regression]
   ||-M not fully chops dirname
   Target Milestone|--- |4.0.4


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



[Bug bootstrap/30467] [4.3 regression] Bootstrap failure on i386

2007-01-14 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
   Target Milestone|--- |4.3.0


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



[Bug rtl-optimization/30467] [4.3 regression] Bootstrap failure on i386

2007-01-14 Thread pinskia at gcc dot gnu dot org


--- Comment #3 from pinskia at gcc dot gnu dot org  2007-01-15 03:34 ---
The ICE is happens at ifcvt.c:1901.
if_info->insn_b is NULL.

It looks like it was caused by:
http://gcc.gnu.org/ml/gcc-patches/2007-01/msg00704.html

Looking to reduce the testcase.


-- 

pinskia at gcc dot gnu dot org changed:

   What|Removed |Added

 CC||steven at gcc dot gnu dot
   ||org
  Component|bootstrap   |rtl-optimization


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



[Bug rtl-optimization/30467] [4.3 regression] Bootstrap failure on i386

2007-01-14 Thread pinskia at gcc dot gnu dot org


--- Comment #4 from pinskia at gcc dot gnu dot org  2007-01-15 05:27 ---
Reduced testcase:

struct a
{
  unsigned a:7;
  unsigned b:1;
};

void g(char*);

void f(struct a *t)
{
  char t1 = 1;
  if (!t->b)
t1 = 0;
  g(&t1);
}


-- 

pinskia at gcc dot gnu dot org changed:

   What|Removed |Added

 Status|UNCONFIRMED |NEW
 Ever Confirmed|0   |1
   Last reconfirmed|-00-00 00:00:00 |2007-01-15 05:27:59
   date||


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



[Bug rtl-optimization/30467] [4.3 regression] Bootstrap failure on i386

2007-01-14 Thread steven at gcc dot gnu dot org


-- 

steven at gcc dot gnu dot org changed:

   What|Removed |Added

 AssignedTo|unassigned at gcc dot gnu   |steven at gcc dot gnu dot
   |dot org |org
 Status|NEW |ASSIGNED
   Last reconfirmed|2007-01-15 05:27:59 |2007-01-15 06:25:39
   date||


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



[Bug middle-end/28071] [4.1 regression] A file that can not be compiled in reasonable time/space

2007-01-14 Thread zaks at il dot ibm dot com


--- Comment #56 from zaks at il dot ibm dot com  2007-01-15 07:19 ---
(In reply to comment #55)
> Created an attachment (id=12879)
 --> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=12879&action=view) [edit]
> Patch for scheduler dependency lists.

Looks like a pretty good cleanup IMHO. Here are some comments.

o dep_def: representing a dependence edge including both producer and consumer
is very handy, albeit somewhat redundant as we're usually traversing all cons
connected to a pro or vice versa. (I.e., has its pros and cons, but mostly pros
I agree - also done in ddg.h/ddg_edge.) Maybe comment why both 'kind' and 'ds'
are needed, as one supersedes the other.

o dep_node_def: this is a node in a (doubly-linked) chain, but it represents an
*edge* in terms of the data-dependence graph. The prev_nextp field is a "/*
Pointer to the next field of the previous node in the list.  */" except for the
first node on the list, whose prev_nextp points to itself, right?

o dep_data_node_def: holding the two conjugate dependence edges together is
very useful when switching directions. But perhaps most of the accesses go in
one direction (e.g. iterating over cons of a pro), and having both conjugates
structed together may reduce cache efficiency. So you may consider connecting
each dep_node_def to its conjugate, not necessarily forcing them to be placed
adjacent in memory.

o To add to the checking routines, the following can be checked: every
dep_node_def is pointed-to by either its data->back xor its data->forw, right?
If so, this can be used to identify if a dep_node_def is forward or backward;
that all nodes on a list are forward (and share the same pro) or backward (and
share the same con); and to assert the following regarding L:
+/* Add a dependency described by DEP to the list L.
+   L should be either INSN_DEPS1 or RESOLVED_DEPS1.  */

o insn_cost (insn, dep): maybe it's better to break this into insn_cost (insn)
of a producer regardless of consumers, and "dep_cost (dep)".

o The comment explaining what 'resolve_dep' does can be inlined together with
its code. 

+/* Detach dep_node N from the list.  */
+static void
+dep_node_detach (dep_node_t n)
+{
+  dep_node_t *prev_nextp = DEP_NODE_PREV_NEXTP (n);
+  dep_node_t next = DEP_NODE_NEXT (n);
+
+  *prev_nextp = next;
+
+  if (next != NULL)
+DEP_NODE_PREV_NEXTP (next) = prev_nextp;
maybe complete the detachment by adding:
DEP_NODE_PREV_NEXTP (n) = NULL;
DEP_NODE_NEXT (n) = NULL;
+}


+/* Attach NEXT to the next field pointed to by PREV_NEXTP.  */
^^^N to appear after node X whose &DEP_NODE_NEXT (X) is given by 
PREV_NEXT_P
+static void
+dep_node_attach (dep_node_t n, dep_node_t *prev_nextp)


better place
+dep_node_check_p (dep_node_t n)
next to
+dep_nodes_check_p (dep_node_t n)


+/* Make a copy of FROM in TO with substitutin consumer with CON.
^^substituting consumer with CON.

Ayal.


-- 


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



[Bug rtl-optimization/30467] [4.3 regression] Bootstrap failure: ICE in ifcvt.c

2007-01-14 Thread ebotcazou at gcc dot gnu dot org


--- Comment #5 from ebotcazou at gcc dot gnu dot org  2007-01-15 07:24 
---
Reproducible on i586-linux.


-- 

ebotcazou at gcc dot gnu dot org changed:

   What|Removed |Added

 CC||ebotcazou at gcc dot gnu dot
   ||org
  GCC build triplet||i[345]86-linux
   GCC host triplet|i386-suse-linux |i[345]86-linux
 GCC target triplet||i[345]86-linux
Summary|[4.3 regression] Bootstrap  |[4.3 regression] Bootstrap
   |failure on i386, ICE in |failure: ICE in ifcvt.c
   |ifcvt.c |


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



Re: [Bug middle-end/28071] [4.1 regression] A file that can not be compiled in reasonable time/space

2007-01-14 Thread Maxim Kuvyrkov
Thanks!  Very useful comments.  I'm continuing to work on cleaning the 
patch (especially on writing the comments) and making code more 
transparent.  Below are my comments on yours:


zaks at il dot ibm dot com wrote:

--- Comment #56 from zaks at il dot ibm dot com  2007-01-15 07:19 ---
(In reply to comment #55)

Created an attachment (id=12879)

 --> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=12879&action=view) [edit]

Patch for scheduler dependency lists.


Looks like a pretty good cleanup IMHO. Here are some comments.

o dep_def: representing a dependence edge including both producer and consumer
is very handy, albeit somewhat redundant as we're usually traversing all cons
connected to a pro or vice versa.
This allows us to keep all things in one place - one of the things 
current deps don't provide.  I.e., when changing some property of the 
dep we need to find a corresponding to that dep nodes in both backward 
and forward lists and apply the change to two places instead of one.


 (I.e., has its pros and cons, but mostly pros

I agree - also done in ddg.h/ddg_edge.) Maybe comment why both 'kind' and 'ds'
are needed, as one supersedes the other.

There will be.  Thanks.



o dep_node_def: this is a node in a (doubly-linked) chain, but it represents an
*edge* in terms of the data-dependence graph. The prev_nextp field is a "/*
Right!  I struggled to figure out the correct name and didn't prevail. 
Thanks for the tip.  It'll be dep_edge.



Pointer to the next field of the previous node in the list.  */" except for the
first node on the list, whose prev_nextp points to itself, right?
No.  Prev_nextp field of the first node points to deps_list->first. 
This allows us not to distinguish first node from the others.  I'll fix 
the comment.




o dep_data_node_def: holding the two conjugate dependence edges together is
very useful when switching directions. But perhaps most of the accesses go in
one direction (e.g. iterating over cons of a pro), and having both conjugates
structed together may reduce cache efficiency. So you may consider connecting
each dep_node_def to its conjugate, not necessarily forcing them to be placed
adjacent in memory.
Dep_def and both edges were placed in one structure so that they could 
be allocated and freed within a single alloc/free.  As I understand you 
propose putting two pointers inside dep_edge_def: one to the dep_def and 
one to the opposite edge.  Currently we have one pointer in dep_edge_def 
to the dep_data_node which have all that pointers.  And probably I'm 
missing something, but I don't see how your way can improve cache 
efficiency.




o To add to the checking routines, the following can be checked: every
dep_node_def is pointed-to by either its data->back xor its data->forw, right?
If so, this can be used to identify if a dep_node_def is forward or backward;
that all nodes on a list are forward (and share the same pro) or backward (and
share the same con); and to assert the following regarding L:
+/* Add a dependency described by DEP to the list L.
+   L should be either INSN_DEPS1 or RESOLVED_DEPS1.  */

Good idea.



o insn_cost (insn, dep): maybe it's better to break this into insn_cost (insn)
of a producer regardless of consumers, and "dep_cost (dep)".

Agree.



o The comment explaining what 'resolve_dep' does can be inlined together with
its code. 

Agree.



+/* Detach dep_node N from the list.  */
+static void
+dep_node_detach (dep_node_t n)
+{
+  dep_node_t *prev_nextp = DEP_NODE_PREV_NEXTP (n);
+  dep_node_t next = DEP_NODE_NEXT (n);
+
+  *prev_nextp = next;
+
+  if (next != NULL)
+DEP_NODE_PREV_NEXTP (next) = prev_nextp;
maybe complete the detachment by adding:
DEP_NODE_PREV_NEXTP (n) = NULL;
DEP_NODE_NEXT (n) = NULL;

Probably, you are right.


Ayal.


Thanks,

Maxim




[Bug middle-end/28071] [4.1 regression] A file that can not be compiled in reasonable time/space

2007-01-14 Thread mkuvyrkov at ispras dot ru


--- Comment #57 from mkuvyrkov at ispras dot ru  2007-01-15 07:52 ---
Subject: Re:  [4.1 regression] A file that can not be
 compiled in reasonable time/space

Thanks!  Very useful comments.  I'm continuing to work on cleaning the 
patch (especially on writing the comments) and making code more 
transparent.  Below are my comments on yours:

zaks at il dot ibm dot com wrote:
> --- Comment #56 from zaks at il dot ibm dot com  2007-01-15 07:19 ---
> (In reply to comment #55)
>> Created an attachment (id=12879)
 --> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=12879&action=view)
>  --> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=12879&action=view) [edit]
>> Patch for scheduler dependency lists.
> 
> Looks like a pretty good cleanup IMHO. Here are some comments.
> 
> o dep_def: representing a dependence edge including both producer and consumer
> is very handy, albeit somewhat redundant as we're usually traversing all cons
> connected to a pro or vice versa.
This allows us to keep all things in one place - one of the things 
current deps don't provide.  I.e., when changing some property of the 
dep we need to find a corresponding to that dep nodes in both backward 
and forward lists and apply the change to two places instead of one.

  (I.e., has its pros and cons, but mostly pros
> I agree - also done in ddg.h/ddg_edge.) Maybe comment why both 'kind' and 'ds'
> are needed, as one supersedes the other.
There will be.  Thanks.

> 
> o dep_node_def: this is a node in a (doubly-linked) chain, but it represents 
> an
> *edge* in terms of the data-dependence graph. The prev_nextp field is a "/*
Right!  I struggled to figure out the correct name and didn't prevail. 
Thanks for the tip.  It'll be dep_edge.

> Pointer to the next field of the previous node in the list.  */" except for 
> the
> first node on the list, whose prev_nextp points to itself, right?
No.  Prev_nextp field of the first node points to deps_list->first. 
This allows us not to distinguish first node from the others.  I'll fix 
the comment.

> 
> o dep_data_node_def: holding the two conjugate dependence edges together is
> very useful when switching directions. But perhaps most of the accesses go in
> one direction (e.g. iterating over cons of a pro), and having both conjugates
> structed together may reduce cache efficiency. So you may consider connecting
> each dep_node_def to its conjugate, not necessarily forcing them to be placed
> adjacent in memory.
Dep_def and both edges were placed in one structure so that they could 
be allocated and freed within a single alloc/free.  As I understand you 
propose putting two pointers inside dep_edge_def: one to the dep_def and 
one to the opposite edge.  Currently we have one pointer in dep_edge_def 
to the dep_data_node which have all that pointers.  And probably I'm 
missing something, but I don't see how your way can improve cache 
efficiency.

> 
> o To add to the checking routines, the following can be checked: every
> dep_node_def is pointed-to by either its data->back xor its data->forw, right?
> If so, this can be used to identify if a dep_node_def is forward or backward;
> that all nodes on a list are forward (and share the same pro) or backward (and
> share the same con); and to assert the following regarding L:
> +/* Add a dependency described by DEP to the list L.
> +   L should be either INSN_DEPS1 or RESOLVED_DEPS1.  */
Good idea.

> 
> o insn_cost (insn, dep): maybe it's better to break this into insn_cost (insn)
> of a producer regardless of consumers, and "dep_cost (dep)".
Agree.

> 
> o The comment explaining what 'resolve_dep' does can be inlined together with
> its code. 
Agree.

> 
> +/* Detach dep_node N from the list.  */
> +static void
> +dep_node_detach (dep_node_t n)
> +{
> +  dep_node_t *prev_nextp = DEP_NODE_PREV_NEXTP (n);
> +  dep_node_t next = DEP_NODE_NEXT (n);
> +
> +  *prev_nextp = next;
> +
> +  if (next != NULL)
> +DEP_NODE_PREV_NEXTP (next) = prev_nextp;
> maybe complete the detachment by adding:
> DEP_NODE_PREV_NEXTP (n) = NULL;
> DEP_NODE_NEXT (n) = NULL;
Probably, you are right.

> Ayal.

Thanks,

Maxim


-- 


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