[Bug regression/26001] LAPACK testsuite failure with optimization
--- Comment #2 from jvdelisle at gcc dot gnu dot org 2006-01-28 07:13 --- I have confirmed this failure is in 4.1 as well. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=26001
[Bug regression/26001] LAPACK testsuite failure with optimization
--- Comment #1 from jvdelisle at gcc dot gnu dot org 2006-01-28 07:12 --- Created an attachment (id=10746) --> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=10746&action=view) Source file that fails. Attached is the source file. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=26001
[Bug regression/26001] New: LAPACK testsuite failure with optimization
The LAPACK testsuite fails with the following error message with -O3 -march=pentium4 -funroll-loops: At line 1162 of file schkee.f Fortran runtime error: Bad integer for item 1 in list input This is not a gfortran frontend problem because LAPACK passes fine without optimization. Using built-in specs. Target: i686-pc-linux-gnu Configured with: ../main/configure --prefix=/home/jerry/gcc/usr --enable-languages=c,fortran --disable-libmudflap Thread model: posix gcc version 4.2.0 20060126 (experimental) I have not tried 4.1 yet. This might be considered critical considering the widespread use of LAPACK. -- Summary: LAPACK testsuite failure with optimization Product: gcc Version: 4.2.0 Status: UNCONFIRMED Severity: major Priority: P3 Component: regression AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: jvdelisle at gcc dot gnu dot org GCC host triplet: i686-pc-linux-gnu http://gcc.gnu.org/bugzilla/show_bug.cgi?id=26001
[Bug c/19606] wrong code for arith.expr: (((unsigned int)(signed int) a ) / 2LL) with signed char a=-4
--- Comment #11 from kazu at gcc dot gnu dot org 2006-01-28 05:25 --- Just checked in a patch to mainline. -- kazu at gcc dot gnu dot org changed: What|Removed |Added Status|ASSIGNED|RESOLVED Resolution||FIXED Target Milestone|--- |4.2.0 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=19606
[Bug c/19606] wrong code for arith.expr: (((unsigned int)(signed int) a ) / 2LL) with signed char a=-4
--- Comment #10 from kazu at gcc dot gnu dot org 2006-01-28 05:19 --- Subject: Bug 19606 Author: kazu Date: Sat Jan 28 05:19:44 2006 New Revision: 110321 URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=110321 Log: gcc/ PR c/19606. * c-typeck.c (build_binary_op): Perform implicit casts of operands before shortening them. gcc/testsuite/ PR c/19606. * gcc.c-torture/execute/pr19606.c: New. Added: trunk/gcc/testsuite/gcc.c-torture/execute/pr19606.c Modified: trunk/gcc/ChangeLog trunk/gcc/c-typeck.c trunk/gcc/testsuite/ChangeLog -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=19606
[Bug middle-end/25957] -fstack-protector code on i386/x86-64 can be improved.
--- Comment #10 from pinskia at gcc dot gnu dot org 2006-01-28 04:31 --- noreturn vs sibcall: http://gcc.gnu.org/ml/gcc-patches/2000-10/msg00180.html http://gcc.gnu.org/ml/gcc/2002-09/msg00211.html PR 10837 -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25957
[Bug c++/25855] [4.0/4.1/4.2 Regression] template specialisation not always found (partial ordering)
--- Comment #14 from mmitchel at gcc dot gnu dot org 2006-01-28 04:13 --- For the code in Comment #4, there are two questions: 1. Which of the three template functions is called by main? 2. Which of the three template functions is specialized by the explicit specialization? The type of the string literals is "const char*". So, the call matches all three templates, with { T : char }, { T : const char }, and { T1 : char, T2 : char}, respectively. Since the argument types are "const char*" in all cases, overload resolution selects the most specialized of the three templates. The first template is more specialized than the second, since the first template can be generated from the second with { T : const T}, but the second cannot be generated from the first. The first template is also more specialized than the third, since it can be generated from the first with { T1 : T, T2 : T }. Thus, it is the first template that is called. Because explicit specializations also specialized the most specialized template, the answer to the second question is the same; it is the first template which is specialized. Therefore, the correct value is indeed 4. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25855
[Bug c/25795] Proccessing the attribute externally_visible too early
--- Comment #1 from pinskia at gcc dot gnu dot org 2006-01-28 04:09 --- Confirmed. -- 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 |2006-01-28 04:09:43 date|| http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25795
[Bug target/25765] gfortran.dg/assign_2.f90 -O0 fails
--- Comment #1 from pinskia at gcc dot gnu dot org 2006-01-28 04:09 --- Confirmed. -- 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 |2006-01-28 04:09:14 date|| http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25765
[Bug fortran/23573] [3.4 only] internal compiler error: in gen_subprogram_die
--- Comment #3 from pinskia at gcc dot gnu dot org 2006-01-28 04:07 --- No feedback in 3 months (well 5 in this case). -- pinskia at gcc dot gnu dot org changed: What|Removed |Added Status|WAITING |RESOLVED Resolution||INVALID http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23573
[Bug tree-optimization/25553] Missed removal of load
--- Comment #2 from pinskia at gcc dot gnu dot org 2006-01-28 04:06 --- We should be able to create a PHI for this case. Hmm, maybe I don't understand load PRE but for some reason I thought it would be able to do this case: int *t; int g(int); int f(int tt) { int *t1 = t; if (*t1) *t1 = 2; return 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 |2006-01-28 04:06:19 date|| http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25553
[Bug rtl-optimization/323] optimized code gives strange floating point results
--- Comment #81 from pinskia at gcc dot gnu dot org 2006-01-28 03:56 --- *** Bug 26000 has been marked as a duplicate of this bug. *** -- pinskia at gcc dot gnu dot org changed: What|Removed |Added CC||pr2345 at gmail dot com http://gcc.gnu.org/bugzilla/show_bug.cgi?id=323
[Bug c++/26000] cast from int to float violates C++ standard in non-optimized mode
--- Comment #1 from pinskia at gcc dot gnu dot org 2006-01-28 03:56 --- this is a dup of bug 323. The issue is more complex than you think, even though in this case you get the same answer for the optimized case and not for the unoptimized case. Using -ffloat-store will get you a zero for the unoptimized case. *** This bug has been marked as a duplicate of 323 *** -- pinskia at gcc dot gnu dot org changed: What|Removed |Added Status|UNCONFIRMED |RESOLVED Resolution||DUPLICATE http://gcc.gnu.org/bugzilla/show_bug.cgi?id=26000
[Bug c++/25855] [4.0/4.1/4.2 Regression] template specialisation not always found (partial ordering)
-- mmitchel at gcc dot gnu dot org changed: What|Removed |Added AssignedTo|unassigned at gcc dot gnu |mark at codesourcery dot com |dot org | Status|NEW |ASSIGNED http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25855
[Bug c++/26000] New: cast from int to float violates C++ standard in non-optimized mode
Platform: i686 Linux 2.6.11 gcc version: > gcc -v Using built-in specs. Target: i386-redhat-linux Configured with: ../configure --prefix=/usr --mandir=/usr/share/man --infodir=/usr/share/info --enable-shared --enable-threads=posix --enable-checking=release --with-system-zlib --enable-__cxa_atexit --disable-libunwind-exceptions --enable-libgcj-multifile --enable-languages=c,c++,objc,java,f95,ada --enable-java-awt=gtk --with-java-home=/usr/lib/jvm/java-1.4.2-gcj-1.4.2.0/jre --host=i386-redhat-linux Thread model: posix gcc version 4.0.2 20051125 (Red Hat 4.0.2-8) Summary: According to the C++ standard section 5.2.9/2, the result of casting an expression to float is as if a temporary variable of type float were declared and initialized with that expression, and then used in place of the expression. That seems to be violated in the program below when compiled in non debug mode (gcc test.c) The program a.out prints 1 instead of 0. In optimized mode (gcc -O test.c) the program prints 0 correctly. Same thing with -O2. Same result when renaming the file test.cpp and compiling with g++ and also when using static_cast instead of C-style casts. In the program below, the functions foo1() and foo2() should always produce the same result. But the assembly code for foo2() differs from foo1() by two extra lines (fstps and flds) when compiled in non-optimized mode. test.c: int foo1(int x) { return (int)(float)x; } int foo2(int x) { float f = x; return (int)f; } int main() { int i = 0x101; /* i == 16777217 */ int u = foo1(i) - foo2(i); printf("u=%d\n", u); } -- Summary: cast from int to float violates C++ standard in non- optimized mode Product: gcc Version: 4.0.2 Status: UNCONFIRMED Severity: normal Priority: P3 Component: c++ AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: pr2345 at gmail dot com GCC host triplet: ? http://gcc.gnu.org/bugzilla/show_bug.cgi?id=26000
[Bug middle-end/22608] LAPACK - BLAS test errors.
--- Comment #4 from pinskia at gcc dot gnu dot org 2006-01-28 00:54 --- Nobody can reproduce your failure and it has been over 6 months now. Closing as worksforme. -- pinskia at gcc dot gnu dot org changed: What|Removed |Added Status|WAITING |RESOLVED Resolution||WORKSFORME http://gcc.gnu.org/bugzilla/show_bug.cgi?id=22608
[Bug target/20036] [3.4 only] gcc.dg/compat/vector-[12]_y.c fails to compile
--- Comment #5 from dtemirbulatov at gmail dot com 2006-01-28 00:52 --- Created an attachment (id=10745) --> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=10745&action=view) fix this patch allows testcases to get passed -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=20036
[Bug target/25661] Wrong long double to float conversion
--- Comment #8 from amodra at bigpond dot net dot au 2006-01-28 00:17 --- There is no reason to say that wrong long double -> float conversion code emitted by gcc is some fault of the long double design. It is relatively easy to convert correctly: float long_double_to_float (long double a) { union { long double ld; double d[2]; } u; double xh, xl, tmp; float res; u.ld = a; xh = u.d[0]; xl = u.d[1]; /* Convert high double. */ res = (float) xh; /* Subtract from long double, and canonicalise result. */ xh -= res; tmp = xh + xl; xl = (xh - tmp) + xl; xh = tmp; /* Convert remainder. */ res += (float) xh; return res; } There are some obvious simplifications to be made to the above function. I left the dead code there to show a technique that is useful in many long double algorithms, ie. operate on high double, subtract result and canonicalise, operate on low double (which has moved to xh by virtue of canonicalisation). -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25661
[Bug middle-end/22275] [3.4/4.0/4.1/4.2 Regression] bitfield layout change (regression?)
--- Comment #43 from rguenth at gcc dot gnu dot org 2006-01-27 23:25 --- Can we have an update on this or post the patch to get review please? -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=22275
[Bug fortran/25324] Wrong DW_TAG_compile_unit generated when compiling preprocessed fortran code
--- Comment #4 from pinskia at gcc dot gnu dot org 2006-01-27 23:10 --- Fixed in 4.1.0. -- pinskia at gcc dot gnu dot org changed: What|Removed |Added Status|ASSIGNED|RESOLVED Resolution||FIXED Target Milestone|--- |4.1.0 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25324
[Bug fortran/24276] Components of a derived type array not passed as an array
--- Comment #5 from pault at gcc dot gnu dot org 2006-01-27 22:34 --- Fixed on trunk and 4.1 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=24276
[Bug fortran/25710] accepts "call" to function
--- Comment #3 from pault at gcc dot gnu dot org 2006-01-27 22:33 --- Fixed on trunk and 4.1 Paul Andrew, I have not forgotten the type checking - I am working on it for internal procedures first; gfortran might be OK but the standard is quite convoluted here and I have not got it completely straight in my head yet. -- pault at gcc dot gnu dot org changed: What|Removed |Added Status|UNCONFIRMED |RESOLVED Resolution||FIXED http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25710
[Bug fortran/25538] internal compiler error: in build_function_decl, at fortran/trans-decl.c:1130
--- Comment #6 from pault at gcc dot gnu dot org 2006-01-27 22:31 --- Fixed on trunk and 4.1 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=25538
[Bug fortran/23308] named common block confused as procedure - runtime segfault
--- Comment #13 from pault at gcc dot gnu dot org 2006-01-27 22:30 --- Fixed on trunk and 4.1 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=23308
[Bug fortran/20881] should check interfaces for lgobal procedures
--- Comment #4 from pault at gcc dot gnu dot org 2006-01-27 22:29 --- Fixed on trunk and 4.1 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=20881
[Bug c++/25625] [4.0/4.1/4.2 Regression] Fails to compile C++ code when -frepo is specified.
--- Comment #13 from pault at gcc dot gnu dot org 2006-01-27 22:29 --- > Can someone explain me why a fortran commit shows up as a C++ releated > commit? > > -- Gaby > 'cos I seem to have goofed on a couple of PR numbers. Sorry. Paul T -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25625
[Bug c++/25625] [4.0/4.1/4.2 Regression] Fails to compile C++ code when -frepo is specified.
--- Comment #12 from gdr at cs dot tamu dot edu 2006-01-27 22:27 --- Subject: Re: [4.0/4.1/4.2 Regression] Fails to compile C++ code when -frepo is specified. "pault at gcc dot gnu dot org" <[EMAIL PROTECTED]> writes: [...] | URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=110310 | Log: | 2005-01-28 Paul Thomas <[EMAIL PROTECTED]> | | PR fortran/25964 | * resolve.c (resolve_function): Exclude statement functions from | global reference checking. Can someone explain me why a fortran commit shows up as a C++ releated commit? -- Gaby -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25625
Re: [Bug c++/25625] [4.0/4.1/4.2 Regression] Fails to compile C++ code when -frepo is specified.
"pault at gcc dot gnu dot org" <[EMAIL PROTECTED]> writes: [...] | URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=110310 | Log: | 2005-01-28 Paul Thomas <[EMAIL PROTECTED]> | | PR fortran/25964 | * resolve.c (resolve_function): Exclude statement functions from | global reference checking. Can someone explain me why a fortran commit shows up as a C++ releated commit? -- Gaby
[Bug fortran/25416] Segmentation fault in gfc_conv_function_call
--- Comment #9 from pault at gcc dot gnu dot org 2006-01-27 22:24 --- Fixed on trunk and 4.1 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=25416
[Bug rtl-optimization/24762] [killloop-branch] code motion of non-invariant expressions with hard registers.
--- Comment #18 from zadeck at gcc dot gnu dot org 2006-01-27 22:23 --- Subject: Bug 24762 Author: zadeck Date: Fri Jan 27 22:23:32 2006 New Revision: 110312 URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=110312 Log: 2006-01-27 Daniel Berlin <[EMAIL PROTECTED]> Kenneth Zadeck <[EMAIL PROTECTED]> PR rtl-optimization/24762 * doc/tm.texi: Added TARGET_EXTRA_LIVE_ON_ENTRY. * targhooks.c (hook_void_bitmap): New hook prototype. * targhoohs.h (hook_void_bitmap): Ditto. * bitmap.h (bitmap_head_def): Moved to coretypes.h. * coretypes.h (bitmap_head_def): Moved from bitmap.h. * target.h (live_on_entry): New function pointer. * df-scan.c (df_all_hard_regs): Removed. (df_scan_dump, df_hard_reg_init): Removed df_all_hard_regs. (df_scan_free_internal): Added df->entry_block_defs. (df_scan_alloc): Ditto. (df_scan_dump): Ditto. (df_uses_record): Plumbed flag field properly thru calls. Record EH_RETURN_DATA_REGNO in eh blocks unconditionally. This part fixes PR24762. (df_bb_refs_record): Added code to make the frame and arg pointers live in EH blocks. (df_refs_record): Added call to df_record_entry_block_defs. (df_record_entry_block_defs): New function. * df-core.c: Added comments to describe new artifical defs. * df.h (DF_REF_DIES_AFTER_THIS_USE): New flag in enum df_ref_flags. (entry_block_defs): New field in struct df. (df_all_hard_regs): Deleted. * target-def.h: Added TARGET_EXTRA_LIVE_ON_ENTRY. * df-problems.c (df_ru_bb_local_compute_process_def): Added code to handle artifical defs in the entry to a function. (df_ru_bb_local_compute): Ditto. (df_rd_bb_local_compute_process_def): Ditto. (df_rd_bb_local_compute): Ditto. (df_lr_bb_local_compute): Ditto. (df_ur_bb_local_compute): Ditto. (df_urec_bb_local_compute): Ditto. (df_chain_create_bb): Ditto. (df_ur_local_finalize): Removed entry. (df_urec_init): Ditto. (df_urec_local_finalize): Ditto. (df_ri_bb_compute): Added detection of last use of pseudos. * Makefile.in (df-scan.o): Updated dependencies. * config/mips/mips-protos.h (mips_set_live_on_entry): Added. * config/mips/mips.c (mips_set_live_on_entry): Added. * config/mips/mips.c (TARGET_EXTRA_LIVE_ON_ENTRY): Added value for target hook. * dce.c (marked_insn_p): Added code to handle artifical defs. Modified: trunk/gcc/ChangeLog trunk/gcc/Makefile.in trunk/gcc/bitmap.h trunk/gcc/config/mips/mips-protos.h trunk/gcc/config/mips/mips.c trunk/gcc/coretypes.h trunk/gcc/df-core.c trunk/gcc/df-problems.c trunk/gcc/df-scan.c trunk/gcc/df.h trunk/gcc/doc/tm.texi trunk/gcc/target-def.h trunk/gcc/target.h trunk/gcc/targhooks.c trunk/gcc/targhooks.h -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=24762
[Bug fortran/25086] Pointer valued assumed length character function allowed
--- Comment #4 from pault at gcc dot gnu dot org 2006-01-27 22:23 --- Fixed on trunk and 4.1 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=25086
[Bug fortran/25085] Array valued assumed length character function allowed
--- Comment #4 from pault at gcc dot gnu dot org 2006-01-27 22:23 --- Fixed on trunk and 4.1 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=25085
[Bug fortran/20852] *-length character function may not be recursive
--- Comment #4 from pault at gcc dot gnu dot org 2006-01-27 22:22 --- Fixed on trunk and 4.1 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=20852
[Bug fortran/25084] Interface for assumed length character function allowed
--- Comment #4 from pault at gcc dot gnu dot org 2006-01-27 22:21 --- Fixed on trunk and 4.1 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=25084
[Bug fortran/25901] [4.2 Regression] overloaded function is rejected
--- Comment #4 from pault at gcc dot gnu dot org 2006-01-27 22:16 --- Subject: Bug 25901 Author: pault Date: Fri Jan 27 22:16:04 2006 New Revision: 110310 URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=110310 Log: 2005-01-28 Paul Thomas <[EMAIL PROTECTED]> PR fortran/25964 * resolve.c (resolve_function): Exclude statement functions from global reference checking. PR fortran/25084 PR fortran/20852 PR fortran/25085 PR fortran/25086 * resolve.c (resolve_function): Declare a gfc_symbol to replace the references through the symtree to the symbol associated with the function expresion. Give error on reference to an assumed character length function is defined in an interface or an external function that is not a dummy argument. (resolve_symbol): Give error if an assumed character length function is array-valued, pointer-valued, pure or recursive. Emit warning that character(*) value functions are obsolescent in F95. PR fortran/25416 * trans-expr.c (gfc_conv_function_call): The above patch to resolve.c prevents any assumed character length function call from getting here except intrinsics such as SPREAD. In this case, ensure that no segfault occurs from referencing non-existent charlen->length-> expr_type and provide a backend_decl for the charlen from the charlen of the first actual argument. Cure temp name confusion. * trans-expr.c (gfc_get_interface_mapping_array): Change name of temporary from "parm" to "ifm" to avoid clash with temp coming from trans-array.c. PR fortran/25124 PR fortran/25625 * decl.c (get_proc_name): If there is an existing symbol in the encompassing namespace, call errors if it is a procedure of the same name or the kind field is set, indicating a type declaration. PR fortran/20881 PR fortran/23308 PR fortran/25538 PR fortran/25710 * decl.c (add_global_entry): New function to check for existing global symbol with this name and to create new one if none exists. (gfc_match_entry): Call add_global_entry before matching argument lists for subroutine and function entries. * gfortran.h: Prototype for existing function, global_used. * resolve.c (resolve_global_procedure): New function to check global symbols for procedures. (resolve_call, resolve_function): Calls to this new function for non-contained and non-module procedures. * match.c (match_common): Add check for existing global symbol, creat one if none exists and emit error if there is a clash. * parse.c (global_used): Remove static and use the gsymbol name rather than the new_block name, so that the function can be called from resolve.c. (parse_block_data, parse_module, add_global_procedure): Improve checks for existing gsymbols. Emit error if already defined or if references were to another type. Set defined flag. PR fortran/24276 * trans-expr.c (gfc_conv_aliased_arg): New function called by gfc_conv_function_call that coverts an expression for an aliased component reference to a derived type array into a temporary array of the same type as the component. The temporary is passed as an actual argument for the procedure call and is copied back to the derived type after the call. (is_aliased_array): New function that detects an array reference that is followed by a component reference. (gfc_conv_function_call): Detect an aliased actual argument with is_aliased_array and convert it to a temporary and back again using gfc_conv_aliased_arg. PR fortran/25124 PR fortran/25625 * gfortran.dg/internal_references_1.f90: New test. PR fortran/25901 * gfortran.dg/internal references_2.f90: New test. PR fortran/20881 PR fortran/23308 PR fortran/25538 PR fortran/25710 * gfortran.dg/global_references_1.f90: New test. * gfortran.dg/g77/19990905-1.f: Restore the error that there is a clash between the common block name and the name of a subroutine reference. PR fortran/25964 * gfortran.dg/global_references_2.f90: New test. PR fortran/24276 * gfortran.dg/aliasing_dummy_1.f90: New test. PR fortran/25084 PR fortran/20852 PR fortran/25085 PR fortran/25086 * gfortran.dg/assumed_charlen_function_1.f90: New test. * gfortran.dg/assumed_charlen_function_3.f90: New test. PR fortran/25416 * gfortran.dg/assumed_charlen_function_2.f90: New test. PR fortran/25964 * gfortr
[Bug fortran/25538] internal compiler error: in build_function_decl, at fortran/trans-decl.c:1130
--- Comment #5 from pault at gcc dot gnu dot org 2006-01-27 22:16 --- Subject: Bug 25538 Author: pault Date: Fri Jan 27 22:16:04 2006 New Revision: 110310 URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=110310 Log: 2005-01-28 Paul Thomas <[EMAIL PROTECTED]> PR fortran/25964 * resolve.c (resolve_function): Exclude statement functions from global reference checking. PR fortran/25084 PR fortran/20852 PR fortran/25085 PR fortran/25086 * resolve.c (resolve_function): Declare a gfc_symbol to replace the references through the symtree to the symbol associated with the function expresion. Give error on reference to an assumed character length function is defined in an interface or an external function that is not a dummy argument. (resolve_symbol): Give error if an assumed character length function is array-valued, pointer-valued, pure or recursive. Emit warning that character(*) value functions are obsolescent in F95. PR fortran/25416 * trans-expr.c (gfc_conv_function_call): The above patch to resolve.c prevents any assumed character length function call from getting here except intrinsics such as SPREAD. In this case, ensure that no segfault occurs from referencing non-existent charlen->length-> expr_type and provide a backend_decl for the charlen from the charlen of the first actual argument. Cure temp name confusion. * trans-expr.c (gfc_get_interface_mapping_array): Change name of temporary from "parm" to "ifm" to avoid clash with temp coming from trans-array.c. PR fortran/25124 PR fortran/25625 * decl.c (get_proc_name): If there is an existing symbol in the encompassing namespace, call errors if it is a procedure of the same name or the kind field is set, indicating a type declaration. PR fortran/20881 PR fortran/23308 PR fortran/25538 PR fortran/25710 * decl.c (add_global_entry): New function to check for existing global symbol with this name and to create new one if none exists. (gfc_match_entry): Call add_global_entry before matching argument lists for subroutine and function entries. * gfortran.h: Prototype for existing function, global_used. * resolve.c (resolve_global_procedure): New function to check global symbols for procedures. (resolve_call, resolve_function): Calls to this new function for non-contained and non-module procedures. * match.c (match_common): Add check for existing global symbol, creat one if none exists and emit error if there is a clash. * parse.c (global_used): Remove static and use the gsymbol name rather than the new_block name, so that the function can be called from resolve.c. (parse_block_data, parse_module, add_global_procedure): Improve checks for existing gsymbols. Emit error if already defined or if references were to another type. Set defined flag. PR fortran/24276 * trans-expr.c (gfc_conv_aliased_arg): New function called by gfc_conv_function_call that coverts an expression for an aliased component reference to a derived type array into a temporary array of the same type as the component. The temporary is passed as an actual argument for the procedure call and is copied back to the derived type after the call. (is_aliased_array): New function that detects an array reference that is followed by a component reference. (gfc_conv_function_call): Detect an aliased actual argument with is_aliased_array and convert it to a temporary and back again using gfc_conv_aliased_arg. PR fortran/25124 PR fortran/25625 * gfortran.dg/internal_references_1.f90: New test. PR fortran/25901 * gfortran.dg/internal references_2.f90: New test. PR fortran/20881 PR fortran/23308 PR fortran/25538 PR fortran/25710 * gfortran.dg/global_references_1.f90: New test. * gfortran.dg/g77/19990905-1.f: Restore the error that there is a clash between the common block name and the name of a subroutine reference. PR fortran/25964 * gfortran.dg/global_references_2.f90: New test. PR fortran/24276 * gfortran.dg/aliasing_dummy_1.f90: New test. PR fortran/25084 PR fortran/20852 PR fortran/25085 PR fortran/25086 * gfortran.dg/assumed_charlen_function_1.f90: New test. * gfortran.dg/assumed_charlen_function_3.f90: New test. PR fortran/25416 * gfortran.dg/assumed_charlen_function_2.f90: New test. PR fortran/25964 * gfortr
[Bug fortran/25086] Pointer valued assumed length character function allowed
--- Comment #3 from pault at gcc dot gnu dot org 2006-01-27 22:16 --- Subject: Bug 25086 Author: pault Date: Fri Jan 27 22:16:04 2006 New Revision: 110310 URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=110310 Log: 2005-01-28 Paul Thomas <[EMAIL PROTECTED]> PR fortran/25964 * resolve.c (resolve_function): Exclude statement functions from global reference checking. PR fortran/25084 PR fortran/20852 PR fortran/25085 PR fortran/25086 * resolve.c (resolve_function): Declare a gfc_symbol to replace the references through the symtree to the symbol associated with the function expresion. Give error on reference to an assumed character length function is defined in an interface or an external function that is not a dummy argument. (resolve_symbol): Give error if an assumed character length function is array-valued, pointer-valued, pure or recursive. Emit warning that character(*) value functions are obsolescent in F95. PR fortran/25416 * trans-expr.c (gfc_conv_function_call): The above patch to resolve.c prevents any assumed character length function call from getting here except intrinsics such as SPREAD. In this case, ensure that no segfault occurs from referencing non-existent charlen->length-> expr_type and provide a backend_decl for the charlen from the charlen of the first actual argument. Cure temp name confusion. * trans-expr.c (gfc_get_interface_mapping_array): Change name of temporary from "parm" to "ifm" to avoid clash with temp coming from trans-array.c. PR fortran/25124 PR fortran/25625 * decl.c (get_proc_name): If there is an existing symbol in the encompassing namespace, call errors if it is a procedure of the same name or the kind field is set, indicating a type declaration. PR fortran/20881 PR fortran/23308 PR fortran/25538 PR fortran/25710 * decl.c (add_global_entry): New function to check for existing global symbol with this name and to create new one if none exists. (gfc_match_entry): Call add_global_entry before matching argument lists for subroutine and function entries. * gfortran.h: Prototype for existing function, global_used. * resolve.c (resolve_global_procedure): New function to check global symbols for procedures. (resolve_call, resolve_function): Calls to this new function for non-contained and non-module procedures. * match.c (match_common): Add check for existing global symbol, creat one if none exists and emit error if there is a clash. * parse.c (global_used): Remove static and use the gsymbol name rather than the new_block name, so that the function can be called from resolve.c. (parse_block_data, parse_module, add_global_procedure): Improve checks for existing gsymbols. Emit error if already defined or if references were to another type. Set defined flag. PR fortran/24276 * trans-expr.c (gfc_conv_aliased_arg): New function called by gfc_conv_function_call that coverts an expression for an aliased component reference to a derived type array into a temporary array of the same type as the component. The temporary is passed as an actual argument for the procedure call and is copied back to the derived type after the call. (is_aliased_array): New function that detects an array reference that is followed by a component reference. (gfc_conv_function_call): Detect an aliased actual argument with is_aliased_array and convert it to a temporary and back again using gfc_conv_aliased_arg. PR fortran/25124 PR fortran/25625 * gfortran.dg/internal_references_1.f90: New test. PR fortran/25901 * gfortran.dg/internal references_2.f90: New test. PR fortran/20881 PR fortran/23308 PR fortran/25538 PR fortran/25710 * gfortran.dg/global_references_1.f90: New test. * gfortran.dg/g77/19990905-1.f: Restore the error that there is a clash between the common block name and the name of a subroutine reference. PR fortran/25964 * gfortran.dg/global_references_2.f90: New test. PR fortran/24276 * gfortran.dg/aliasing_dummy_1.f90: New test. PR fortran/25084 PR fortran/20852 PR fortran/25085 PR fortran/25086 * gfortran.dg/assumed_charlen_function_1.f90: New test. * gfortran.dg/assumed_charlen_function_3.f90: New test. PR fortran/25416 * gfortran.dg/assumed_charlen_function_2.f90: New test. PR fortran/25964 * gfortr
[Bug fortran/23308] named common block confused as procedure - runtime segfault
--- Comment #12 from pault at gcc dot gnu dot org 2006-01-27 22:16 --- Subject: Bug 23308 Author: pault Date: Fri Jan 27 22:16:04 2006 New Revision: 110310 URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=110310 Log: 2005-01-28 Paul Thomas <[EMAIL PROTECTED]> PR fortran/25964 * resolve.c (resolve_function): Exclude statement functions from global reference checking. PR fortran/25084 PR fortran/20852 PR fortran/25085 PR fortran/25086 * resolve.c (resolve_function): Declare a gfc_symbol to replace the references through the symtree to the symbol associated with the function expresion. Give error on reference to an assumed character length function is defined in an interface or an external function that is not a dummy argument. (resolve_symbol): Give error if an assumed character length function is array-valued, pointer-valued, pure or recursive. Emit warning that character(*) value functions are obsolescent in F95. PR fortran/25416 * trans-expr.c (gfc_conv_function_call): The above patch to resolve.c prevents any assumed character length function call from getting here except intrinsics such as SPREAD. In this case, ensure that no segfault occurs from referencing non-existent charlen->length-> expr_type and provide a backend_decl for the charlen from the charlen of the first actual argument. Cure temp name confusion. * trans-expr.c (gfc_get_interface_mapping_array): Change name of temporary from "parm" to "ifm" to avoid clash with temp coming from trans-array.c. PR fortran/25124 PR fortran/25625 * decl.c (get_proc_name): If there is an existing symbol in the encompassing namespace, call errors if it is a procedure of the same name or the kind field is set, indicating a type declaration. PR fortran/20881 PR fortran/23308 PR fortran/25538 PR fortran/25710 * decl.c (add_global_entry): New function to check for existing global symbol with this name and to create new one if none exists. (gfc_match_entry): Call add_global_entry before matching argument lists for subroutine and function entries. * gfortran.h: Prototype for existing function, global_used. * resolve.c (resolve_global_procedure): New function to check global symbols for procedures. (resolve_call, resolve_function): Calls to this new function for non-contained and non-module procedures. * match.c (match_common): Add check for existing global symbol, creat one if none exists and emit error if there is a clash. * parse.c (global_used): Remove static and use the gsymbol name rather than the new_block name, so that the function can be called from resolve.c. (parse_block_data, parse_module, add_global_procedure): Improve checks for existing gsymbols. Emit error if already defined or if references were to another type. Set defined flag. PR fortran/24276 * trans-expr.c (gfc_conv_aliased_arg): New function called by gfc_conv_function_call that coverts an expression for an aliased component reference to a derived type array into a temporary array of the same type as the component. The temporary is passed as an actual argument for the procedure call and is copied back to the derived type after the call. (is_aliased_array): New function that detects an array reference that is followed by a component reference. (gfc_conv_function_call): Detect an aliased actual argument with is_aliased_array and convert it to a temporary and back again using gfc_conv_aliased_arg. PR fortran/25124 PR fortran/25625 * gfortran.dg/internal_references_1.f90: New test. PR fortran/25901 * gfortran.dg/internal references_2.f90: New test. PR fortran/20881 PR fortran/23308 PR fortran/25538 PR fortran/25710 * gfortran.dg/global_references_1.f90: New test. * gfortran.dg/g77/19990905-1.f: Restore the error that there is a clash between the common block name and the name of a subroutine reference. PR fortran/25964 * gfortran.dg/global_references_2.f90: New test. PR fortran/24276 * gfortran.dg/aliasing_dummy_1.f90: New test. PR fortran/25084 PR fortran/20852 PR fortran/25085 PR fortran/25086 * gfortran.dg/assumed_charlen_function_1.f90: New test. * gfortran.dg/assumed_charlen_function_3.f90: New test. PR fortran/25416 * gfortran.dg/assumed_charlen_function_2.f90: New test. PR fortran/25964 * gfort
[Bug fortran/24276] Components of a derived type array not passed as an array
--- Comment #4 from pault at gcc dot gnu dot org 2006-01-27 22:16 --- Subject: Bug 24276 Author: pault Date: Fri Jan 27 22:16:04 2006 New Revision: 110310 URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=110310 Log: 2005-01-28 Paul Thomas <[EMAIL PROTECTED]> PR fortran/25964 * resolve.c (resolve_function): Exclude statement functions from global reference checking. PR fortran/25084 PR fortran/20852 PR fortran/25085 PR fortran/25086 * resolve.c (resolve_function): Declare a gfc_symbol to replace the references through the symtree to the symbol associated with the function expresion. Give error on reference to an assumed character length function is defined in an interface or an external function that is not a dummy argument. (resolve_symbol): Give error if an assumed character length function is array-valued, pointer-valued, pure or recursive. Emit warning that character(*) value functions are obsolescent in F95. PR fortran/25416 * trans-expr.c (gfc_conv_function_call): The above patch to resolve.c prevents any assumed character length function call from getting here except intrinsics such as SPREAD. In this case, ensure that no segfault occurs from referencing non-existent charlen->length-> expr_type and provide a backend_decl for the charlen from the charlen of the first actual argument. Cure temp name confusion. * trans-expr.c (gfc_get_interface_mapping_array): Change name of temporary from "parm" to "ifm" to avoid clash with temp coming from trans-array.c. PR fortran/25124 PR fortran/25625 * decl.c (get_proc_name): If there is an existing symbol in the encompassing namespace, call errors if it is a procedure of the same name or the kind field is set, indicating a type declaration. PR fortran/20881 PR fortran/23308 PR fortran/25538 PR fortran/25710 * decl.c (add_global_entry): New function to check for existing global symbol with this name and to create new one if none exists. (gfc_match_entry): Call add_global_entry before matching argument lists for subroutine and function entries. * gfortran.h: Prototype for existing function, global_used. * resolve.c (resolve_global_procedure): New function to check global symbols for procedures. (resolve_call, resolve_function): Calls to this new function for non-contained and non-module procedures. * match.c (match_common): Add check for existing global symbol, creat one if none exists and emit error if there is a clash. * parse.c (global_used): Remove static and use the gsymbol name rather than the new_block name, so that the function can be called from resolve.c. (parse_block_data, parse_module, add_global_procedure): Improve checks for existing gsymbols. Emit error if already defined or if references were to another type. Set defined flag. PR fortran/24276 * trans-expr.c (gfc_conv_aliased_arg): New function called by gfc_conv_function_call that coverts an expression for an aliased component reference to a derived type array into a temporary array of the same type as the component. The temporary is passed as an actual argument for the procedure call and is copied back to the derived type after the call. (is_aliased_array): New function that detects an array reference that is followed by a component reference. (gfc_conv_function_call): Detect an aliased actual argument with is_aliased_array and convert it to a temporary and back again using gfc_conv_aliased_arg. PR fortran/25124 PR fortran/25625 * gfortran.dg/internal_references_1.f90: New test. PR fortran/25901 * gfortran.dg/internal references_2.f90: New test. PR fortran/20881 PR fortran/23308 PR fortran/25538 PR fortran/25710 * gfortran.dg/global_references_1.f90: New test. * gfortran.dg/g77/19990905-1.f: Restore the error that there is a clash between the common block name and the name of a subroutine reference. PR fortran/25964 * gfortran.dg/global_references_2.f90: New test. PR fortran/24276 * gfortran.dg/aliasing_dummy_1.f90: New test. PR fortran/25084 PR fortran/20852 PR fortran/25085 PR fortran/25086 * gfortran.dg/assumed_charlen_function_1.f90: New test. * gfortran.dg/assumed_charlen_function_3.f90: New test. PR fortran/25416 * gfortran.dg/assumed_charlen_function_2.f90: New test. PR fortran/25964 * gfortr
[Bug fortran/25416] Segmentation fault in gfc_conv_function_call
--- Comment #8 from pault at gcc dot gnu dot org 2006-01-27 22:16 --- Subject: Bug 25416 Author: pault Date: Fri Jan 27 22:16:04 2006 New Revision: 110310 URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=110310 Log: 2005-01-28 Paul Thomas <[EMAIL PROTECTED]> PR fortran/25964 * resolve.c (resolve_function): Exclude statement functions from global reference checking. PR fortran/25084 PR fortran/20852 PR fortran/25085 PR fortran/25086 * resolve.c (resolve_function): Declare a gfc_symbol to replace the references through the symtree to the symbol associated with the function expresion. Give error on reference to an assumed character length function is defined in an interface or an external function that is not a dummy argument. (resolve_symbol): Give error if an assumed character length function is array-valued, pointer-valued, pure or recursive. Emit warning that character(*) value functions are obsolescent in F95. PR fortran/25416 * trans-expr.c (gfc_conv_function_call): The above patch to resolve.c prevents any assumed character length function call from getting here except intrinsics such as SPREAD. In this case, ensure that no segfault occurs from referencing non-existent charlen->length-> expr_type and provide a backend_decl for the charlen from the charlen of the first actual argument. Cure temp name confusion. * trans-expr.c (gfc_get_interface_mapping_array): Change name of temporary from "parm" to "ifm" to avoid clash with temp coming from trans-array.c. PR fortran/25124 PR fortran/25625 * decl.c (get_proc_name): If there is an existing symbol in the encompassing namespace, call errors if it is a procedure of the same name or the kind field is set, indicating a type declaration. PR fortran/20881 PR fortran/23308 PR fortran/25538 PR fortran/25710 * decl.c (add_global_entry): New function to check for existing global symbol with this name and to create new one if none exists. (gfc_match_entry): Call add_global_entry before matching argument lists for subroutine and function entries. * gfortran.h: Prototype for existing function, global_used. * resolve.c (resolve_global_procedure): New function to check global symbols for procedures. (resolve_call, resolve_function): Calls to this new function for non-contained and non-module procedures. * match.c (match_common): Add check for existing global symbol, creat one if none exists and emit error if there is a clash. * parse.c (global_used): Remove static and use the gsymbol name rather than the new_block name, so that the function can be called from resolve.c. (parse_block_data, parse_module, add_global_procedure): Improve checks for existing gsymbols. Emit error if already defined or if references were to another type. Set defined flag. PR fortran/24276 * trans-expr.c (gfc_conv_aliased_arg): New function called by gfc_conv_function_call that coverts an expression for an aliased component reference to a derived type array into a temporary array of the same type as the component. The temporary is passed as an actual argument for the procedure call and is copied back to the derived type after the call. (is_aliased_array): New function that detects an array reference that is followed by a component reference. (gfc_conv_function_call): Detect an aliased actual argument with is_aliased_array and convert it to a temporary and back again using gfc_conv_aliased_arg. PR fortran/25124 PR fortran/25625 * gfortran.dg/internal_references_1.f90: New test. PR fortran/25901 * gfortran.dg/internal references_2.f90: New test. PR fortran/20881 PR fortran/23308 PR fortran/25538 PR fortran/25710 * gfortran.dg/global_references_1.f90: New test. * gfortran.dg/g77/19990905-1.f: Restore the error that there is a clash between the common block name and the name of a subroutine reference. PR fortran/25964 * gfortran.dg/global_references_2.f90: New test. PR fortran/24276 * gfortran.dg/aliasing_dummy_1.f90: New test. PR fortran/25084 PR fortran/20852 PR fortran/25085 PR fortran/25086 * gfortran.dg/assumed_charlen_function_1.f90: New test. * gfortran.dg/assumed_charlen_function_3.f90: New test. PR fortran/25416 * gfortran.dg/assumed_charlen_function_2.f90: New test. PR fortran/25964 * gfortr
[Bug c++/25625] [4.0/4.1/4.2 Regression] Fails to compile C++ code when -frepo is specified.
--- Comment #11 from pault at gcc dot gnu dot org 2006-01-27 22:16 --- Subject: Bug 25625 Author: pault Date: Fri Jan 27 22:16:04 2006 New Revision: 110310 URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=110310 Log: 2005-01-28 Paul Thomas <[EMAIL PROTECTED]> PR fortran/25964 * resolve.c (resolve_function): Exclude statement functions from global reference checking. PR fortran/25084 PR fortran/20852 PR fortran/25085 PR fortran/25086 * resolve.c (resolve_function): Declare a gfc_symbol to replace the references through the symtree to the symbol associated with the function expresion. Give error on reference to an assumed character length function is defined in an interface or an external function that is not a dummy argument. (resolve_symbol): Give error if an assumed character length function is array-valued, pointer-valued, pure or recursive. Emit warning that character(*) value functions are obsolescent in F95. PR fortran/25416 * trans-expr.c (gfc_conv_function_call): The above patch to resolve.c prevents any assumed character length function call from getting here except intrinsics such as SPREAD. In this case, ensure that no segfault occurs from referencing non-existent charlen->length-> expr_type and provide a backend_decl for the charlen from the charlen of the first actual argument. Cure temp name confusion. * trans-expr.c (gfc_get_interface_mapping_array): Change name of temporary from "parm" to "ifm" to avoid clash with temp coming from trans-array.c. PR fortran/25124 PR fortran/25625 * decl.c (get_proc_name): If there is an existing symbol in the encompassing namespace, call errors if it is a procedure of the same name or the kind field is set, indicating a type declaration. PR fortran/20881 PR fortran/23308 PR fortran/25538 PR fortran/25710 * decl.c (add_global_entry): New function to check for existing global symbol with this name and to create new one if none exists. (gfc_match_entry): Call add_global_entry before matching argument lists for subroutine and function entries. * gfortran.h: Prototype for existing function, global_used. * resolve.c (resolve_global_procedure): New function to check global symbols for procedures. (resolve_call, resolve_function): Calls to this new function for non-contained and non-module procedures. * match.c (match_common): Add check for existing global symbol, creat one if none exists and emit error if there is a clash. * parse.c (global_used): Remove static and use the gsymbol name rather than the new_block name, so that the function can be called from resolve.c. (parse_block_data, parse_module, add_global_procedure): Improve checks for existing gsymbols. Emit error if already defined or if references were to another type. Set defined flag. PR fortran/24276 * trans-expr.c (gfc_conv_aliased_arg): New function called by gfc_conv_function_call that coverts an expression for an aliased component reference to a derived type array into a temporary array of the same type as the component. The temporary is passed as an actual argument for the procedure call and is copied back to the derived type after the call. (is_aliased_array): New function that detects an array reference that is followed by a component reference. (gfc_conv_function_call): Detect an aliased actual argument with is_aliased_array and convert it to a temporary and back again using gfc_conv_aliased_arg. PR fortran/25124 PR fortran/25625 * gfortran.dg/internal_references_1.f90: New test. PR fortran/25901 * gfortran.dg/internal references_2.f90: New test. PR fortran/20881 PR fortran/23308 PR fortran/25538 PR fortran/25710 * gfortran.dg/global_references_1.f90: New test. * gfortran.dg/g77/19990905-1.f: Restore the error that there is a clash between the common block name and the name of a subroutine reference. PR fortran/25964 * gfortran.dg/global_references_2.f90: New test. PR fortran/24276 * gfortran.dg/aliasing_dummy_1.f90: New test. PR fortran/25084 PR fortran/20852 PR fortran/25085 PR fortran/25086 * gfortran.dg/assumed_charlen_function_1.f90: New test. * gfortran.dg/assumed_charlen_function_3.f90: New test. PR fortran/25416 * gfortran.dg/assumed_charlen_function_2.f90: New test. PR fortran/25964 * gfort
[Bug fortran/25710] accepts "call" to function
--- Comment #2 from pault at gcc dot gnu dot org 2006-01-27 22:16 --- Subject: Bug 25710 Author: pault Date: Fri Jan 27 22:16:04 2006 New Revision: 110310 URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=110310 Log: 2005-01-28 Paul Thomas <[EMAIL PROTECTED]> PR fortran/25964 * resolve.c (resolve_function): Exclude statement functions from global reference checking. PR fortran/25084 PR fortran/20852 PR fortran/25085 PR fortran/25086 * resolve.c (resolve_function): Declare a gfc_symbol to replace the references through the symtree to the symbol associated with the function expresion. Give error on reference to an assumed character length function is defined in an interface or an external function that is not a dummy argument. (resolve_symbol): Give error if an assumed character length function is array-valued, pointer-valued, pure or recursive. Emit warning that character(*) value functions are obsolescent in F95. PR fortran/25416 * trans-expr.c (gfc_conv_function_call): The above patch to resolve.c prevents any assumed character length function call from getting here except intrinsics such as SPREAD. In this case, ensure that no segfault occurs from referencing non-existent charlen->length-> expr_type and provide a backend_decl for the charlen from the charlen of the first actual argument. Cure temp name confusion. * trans-expr.c (gfc_get_interface_mapping_array): Change name of temporary from "parm" to "ifm" to avoid clash with temp coming from trans-array.c. PR fortran/25124 PR fortran/25625 * decl.c (get_proc_name): If there is an existing symbol in the encompassing namespace, call errors if it is a procedure of the same name or the kind field is set, indicating a type declaration. PR fortran/20881 PR fortran/23308 PR fortran/25538 PR fortran/25710 * decl.c (add_global_entry): New function to check for existing global symbol with this name and to create new one if none exists. (gfc_match_entry): Call add_global_entry before matching argument lists for subroutine and function entries. * gfortran.h: Prototype for existing function, global_used. * resolve.c (resolve_global_procedure): New function to check global symbols for procedures. (resolve_call, resolve_function): Calls to this new function for non-contained and non-module procedures. * match.c (match_common): Add check for existing global symbol, creat one if none exists and emit error if there is a clash. * parse.c (global_used): Remove static and use the gsymbol name rather than the new_block name, so that the function can be called from resolve.c. (parse_block_data, parse_module, add_global_procedure): Improve checks for existing gsymbols. Emit error if already defined or if references were to another type. Set defined flag. PR fortran/24276 * trans-expr.c (gfc_conv_aliased_arg): New function called by gfc_conv_function_call that coverts an expression for an aliased component reference to a derived type array into a temporary array of the same type as the component. The temporary is passed as an actual argument for the procedure call and is copied back to the derived type after the call. (is_aliased_array): New function that detects an array reference that is followed by a component reference. (gfc_conv_function_call): Detect an aliased actual argument with is_aliased_array and convert it to a temporary and back again using gfc_conv_aliased_arg. PR fortran/25124 PR fortran/25625 * gfortran.dg/internal_references_1.f90: New test. PR fortran/25901 * gfortran.dg/internal references_2.f90: New test. PR fortran/20881 PR fortran/23308 PR fortran/25538 PR fortran/25710 * gfortran.dg/global_references_1.f90: New test. * gfortran.dg/g77/19990905-1.f: Restore the error that there is a clash between the common block name and the name of a subroutine reference. PR fortran/25964 * gfortran.dg/global_references_2.f90: New test. PR fortran/24276 * gfortran.dg/aliasing_dummy_1.f90: New test. PR fortran/25084 PR fortran/20852 PR fortran/25085 PR fortran/25086 * gfortran.dg/assumed_charlen_function_1.f90: New test. * gfortran.dg/assumed_charlen_function_3.f90: New test. PR fortran/25416 * gfortran.dg/assumed_charlen_function_2.f90: New test. PR fortran/25964 * gfortr
[Bug fortran/25964] [4.1/4.2 Regression] NIST regression on fm311.f
--- Comment #6 from pault at gcc dot gnu dot org 2006-01-27 22:16 --- Subject: Bug 25964 Author: pault Date: Fri Jan 27 22:16:04 2006 New Revision: 110310 URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=110310 Log: 2005-01-28 Paul Thomas <[EMAIL PROTECTED]> PR fortran/25964 * resolve.c (resolve_function): Exclude statement functions from global reference checking. PR fortran/25084 PR fortran/20852 PR fortran/25085 PR fortran/25086 * resolve.c (resolve_function): Declare a gfc_symbol to replace the references through the symtree to the symbol associated with the function expresion. Give error on reference to an assumed character length function is defined in an interface or an external function that is not a dummy argument. (resolve_symbol): Give error if an assumed character length function is array-valued, pointer-valued, pure or recursive. Emit warning that character(*) value functions are obsolescent in F95. PR fortran/25416 * trans-expr.c (gfc_conv_function_call): The above patch to resolve.c prevents any assumed character length function call from getting here except intrinsics such as SPREAD. In this case, ensure that no segfault occurs from referencing non-existent charlen->length-> expr_type and provide a backend_decl for the charlen from the charlen of the first actual argument. Cure temp name confusion. * trans-expr.c (gfc_get_interface_mapping_array): Change name of temporary from "parm" to "ifm" to avoid clash with temp coming from trans-array.c. PR fortran/25124 PR fortran/25625 * decl.c (get_proc_name): If there is an existing symbol in the encompassing namespace, call errors if it is a procedure of the same name or the kind field is set, indicating a type declaration. PR fortran/20881 PR fortran/23308 PR fortran/25538 PR fortran/25710 * decl.c (add_global_entry): New function to check for existing global symbol with this name and to create new one if none exists. (gfc_match_entry): Call add_global_entry before matching argument lists for subroutine and function entries. * gfortran.h: Prototype for existing function, global_used. * resolve.c (resolve_global_procedure): New function to check global symbols for procedures. (resolve_call, resolve_function): Calls to this new function for non-contained and non-module procedures. * match.c (match_common): Add check for existing global symbol, creat one if none exists and emit error if there is a clash. * parse.c (global_used): Remove static and use the gsymbol name rather than the new_block name, so that the function can be called from resolve.c. (parse_block_data, parse_module, add_global_procedure): Improve checks for existing gsymbols. Emit error if already defined or if references were to another type. Set defined flag. PR fortran/24276 * trans-expr.c (gfc_conv_aliased_arg): New function called by gfc_conv_function_call that coverts an expression for an aliased component reference to a derived type array into a temporary array of the same type as the component. The temporary is passed as an actual argument for the procedure call and is copied back to the derived type after the call. (is_aliased_array): New function that detects an array reference that is followed by a component reference. (gfc_conv_function_call): Detect an aliased actual argument with is_aliased_array and convert it to a temporary and back again using gfc_conv_aliased_arg. PR fortran/25124 PR fortran/25625 * gfortran.dg/internal_references_1.f90: New test. PR fortran/25901 * gfortran.dg/internal references_2.f90: New test. PR fortran/20881 PR fortran/23308 PR fortran/25538 PR fortran/25710 * gfortran.dg/global_references_1.f90: New test. * gfortran.dg/g77/19990905-1.f: Restore the error that there is a clash between the common block name and the name of a subroutine reference. PR fortran/25964 * gfortran.dg/global_references_2.f90: New test. PR fortran/24276 * gfortran.dg/aliasing_dummy_1.f90: New test. PR fortran/25084 PR fortran/20852 PR fortran/25085 PR fortran/25086 * gfortran.dg/assumed_charlen_function_1.f90: New test. * gfortran.dg/assumed_charlen_function_3.f90: New test. PR fortran/25416 * gfortran.dg/assumed_charlen_function_2.f90: New test. PR fortran/25964 * gfortr
[Bug fortran/25085] Array valued assumed length character function allowed
--- Comment #3 from pault at gcc dot gnu dot org 2006-01-27 22:16 --- Subject: Bug 25085 Author: pault Date: Fri Jan 27 22:16:04 2006 New Revision: 110310 URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=110310 Log: 2005-01-28 Paul Thomas <[EMAIL PROTECTED]> PR fortran/25964 * resolve.c (resolve_function): Exclude statement functions from global reference checking. PR fortran/25084 PR fortran/20852 PR fortran/25085 PR fortran/25086 * resolve.c (resolve_function): Declare a gfc_symbol to replace the references through the symtree to the symbol associated with the function expresion. Give error on reference to an assumed character length function is defined in an interface or an external function that is not a dummy argument. (resolve_symbol): Give error if an assumed character length function is array-valued, pointer-valued, pure or recursive. Emit warning that character(*) value functions are obsolescent in F95. PR fortran/25416 * trans-expr.c (gfc_conv_function_call): The above patch to resolve.c prevents any assumed character length function call from getting here except intrinsics such as SPREAD. In this case, ensure that no segfault occurs from referencing non-existent charlen->length-> expr_type and provide a backend_decl for the charlen from the charlen of the first actual argument. Cure temp name confusion. * trans-expr.c (gfc_get_interface_mapping_array): Change name of temporary from "parm" to "ifm" to avoid clash with temp coming from trans-array.c. PR fortran/25124 PR fortran/25625 * decl.c (get_proc_name): If there is an existing symbol in the encompassing namespace, call errors if it is a procedure of the same name or the kind field is set, indicating a type declaration. PR fortran/20881 PR fortran/23308 PR fortran/25538 PR fortran/25710 * decl.c (add_global_entry): New function to check for existing global symbol with this name and to create new one if none exists. (gfc_match_entry): Call add_global_entry before matching argument lists for subroutine and function entries. * gfortran.h: Prototype for existing function, global_used. * resolve.c (resolve_global_procedure): New function to check global symbols for procedures. (resolve_call, resolve_function): Calls to this new function for non-contained and non-module procedures. * match.c (match_common): Add check for existing global symbol, creat one if none exists and emit error if there is a clash. * parse.c (global_used): Remove static and use the gsymbol name rather than the new_block name, so that the function can be called from resolve.c. (parse_block_data, parse_module, add_global_procedure): Improve checks for existing gsymbols. Emit error if already defined or if references were to another type. Set defined flag. PR fortran/24276 * trans-expr.c (gfc_conv_aliased_arg): New function called by gfc_conv_function_call that coverts an expression for an aliased component reference to a derived type array into a temporary array of the same type as the component. The temporary is passed as an actual argument for the procedure call and is copied back to the derived type after the call. (is_aliased_array): New function that detects an array reference that is followed by a component reference. (gfc_conv_function_call): Detect an aliased actual argument with is_aliased_array and convert it to a temporary and back again using gfc_conv_aliased_arg. PR fortran/25124 PR fortran/25625 * gfortran.dg/internal_references_1.f90: New test. PR fortran/25901 * gfortran.dg/internal references_2.f90: New test. PR fortran/20881 PR fortran/23308 PR fortran/25538 PR fortran/25710 * gfortran.dg/global_references_1.f90: New test. * gfortran.dg/g77/19990905-1.f: Restore the error that there is a clash between the common block name and the name of a subroutine reference. PR fortran/25964 * gfortran.dg/global_references_2.f90: New test. PR fortran/24276 * gfortran.dg/aliasing_dummy_1.f90: New test. PR fortran/25084 PR fortran/20852 PR fortran/25085 PR fortran/25086 * gfortran.dg/assumed_charlen_function_1.f90: New test. * gfortran.dg/assumed_charlen_function_3.f90: New test. PR fortran/25416 * gfortran.dg/assumed_charlen_function_2.f90: New test. PR fortran/25964 * gfortr
[Bug fortran/20881] should check interfaces for lgobal procedures
--- Comment #3 from pault at gcc dot gnu dot org 2006-01-27 22:16 --- Subject: Bug 20881 Author: pault Date: Fri Jan 27 22:16:04 2006 New Revision: 110310 URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=110310 Log: 2005-01-28 Paul Thomas <[EMAIL PROTECTED]> PR fortran/25964 * resolve.c (resolve_function): Exclude statement functions from global reference checking. PR fortran/25084 PR fortran/20852 PR fortran/25085 PR fortran/25086 * resolve.c (resolve_function): Declare a gfc_symbol to replace the references through the symtree to the symbol associated with the function expresion. Give error on reference to an assumed character length function is defined in an interface or an external function that is not a dummy argument. (resolve_symbol): Give error if an assumed character length function is array-valued, pointer-valued, pure or recursive. Emit warning that character(*) value functions are obsolescent in F95. PR fortran/25416 * trans-expr.c (gfc_conv_function_call): The above patch to resolve.c prevents any assumed character length function call from getting here except intrinsics such as SPREAD. In this case, ensure that no segfault occurs from referencing non-existent charlen->length-> expr_type and provide a backend_decl for the charlen from the charlen of the first actual argument. Cure temp name confusion. * trans-expr.c (gfc_get_interface_mapping_array): Change name of temporary from "parm" to "ifm" to avoid clash with temp coming from trans-array.c. PR fortran/25124 PR fortran/25625 * decl.c (get_proc_name): If there is an existing symbol in the encompassing namespace, call errors if it is a procedure of the same name or the kind field is set, indicating a type declaration. PR fortran/20881 PR fortran/23308 PR fortran/25538 PR fortran/25710 * decl.c (add_global_entry): New function to check for existing global symbol with this name and to create new one if none exists. (gfc_match_entry): Call add_global_entry before matching argument lists for subroutine and function entries. * gfortran.h: Prototype for existing function, global_used. * resolve.c (resolve_global_procedure): New function to check global symbols for procedures. (resolve_call, resolve_function): Calls to this new function for non-contained and non-module procedures. * match.c (match_common): Add check for existing global symbol, creat one if none exists and emit error if there is a clash. * parse.c (global_used): Remove static and use the gsymbol name rather than the new_block name, so that the function can be called from resolve.c. (parse_block_data, parse_module, add_global_procedure): Improve checks for existing gsymbols. Emit error if already defined or if references were to another type. Set defined flag. PR fortran/24276 * trans-expr.c (gfc_conv_aliased_arg): New function called by gfc_conv_function_call that coverts an expression for an aliased component reference to a derived type array into a temporary array of the same type as the component. The temporary is passed as an actual argument for the procedure call and is copied back to the derived type after the call. (is_aliased_array): New function that detects an array reference that is followed by a component reference. (gfc_conv_function_call): Detect an aliased actual argument with is_aliased_array and convert it to a temporary and back again using gfc_conv_aliased_arg. PR fortran/25124 PR fortran/25625 * gfortran.dg/internal_references_1.f90: New test. PR fortran/25901 * gfortran.dg/internal references_2.f90: New test. PR fortran/20881 PR fortran/23308 PR fortran/25538 PR fortran/25710 * gfortran.dg/global_references_1.f90: New test. * gfortran.dg/g77/19990905-1.f: Restore the error that there is a clash between the common block name and the name of a subroutine reference. PR fortran/25964 * gfortran.dg/global_references_2.f90: New test. PR fortran/24276 * gfortran.dg/aliasing_dummy_1.f90: New test. PR fortran/25084 PR fortran/20852 PR fortran/25085 PR fortran/25086 * gfortran.dg/assumed_charlen_function_1.f90: New test. * gfortran.dg/assumed_charlen_function_3.f90: New test. PR fortran/25416 * gfortran.dg/assumed_charlen_function_2.f90: New test. PR fortran/25964 * gfortr
[Bug fortran/20852] *-length character function may not be recursive
--- Comment #3 from pault at gcc dot gnu dot org 2006-01-27 22:16 --- Subject: Bug 20852 Author: pault Date: Fri Jan 27 22:16:04 2006 New Revision: 110310 URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=110310 Log: 2005-01-28 Paul Thomas <[EMAIL PROTECTED]> PR fortran/25964 * resolve.c (resolve_function): Exclude statement functions from global reference checking. PR fortran/25084 PR fortran/20852 PR fortran/25085 PR fortran/25086 * resolve.c (resolve_function): Declare a gfc_symbol to replace the references through the symtree to the symbol associated with the function expresion. Give error on reference to an assumed character length function is defined in an interface or an external function that is not a dummy argument. (resolve_symbol): Give error if an assumed character length function is array-valued, pointer-valued, pure or recursive. Emit warning that character(*) value functions are obsolescent in F95. PR fortran/25416 * trans-expr.c (gfc_conv_function_call): The above patch to resolve.c prevents any assumed character length function call from getting here except intrinsics such as SPREAD. In this case, ensure that no segfault occurs from referencing non-existent charlen->length-> expr_type and provide a backend_decl for the charlen from the charlen of the first actual argument. Cure temp name confusion. * trans-expr.c (gfc_get_interface_mapping_array): Change name of temporary from "parm" to "ifm" to avoid clash with temp coming from trans-array.c. PR fortran/25124 PR fortran/25625 * decl.c (get_proc_name): If there is an existing symbol in the encompassing namespace, call errors if it is a procedure of the same name or the kind field is set, indicating a type declaration. PR fortran/20881 PR fortran/23308 PR fortran/25538 PR fortran/25710 * decl.c (add_global_entry): New function to check for existing global symbol with this name and to create new one if none exists. (gfc_match_entry): Call add_global_entry before matching argument lists for subroutine and function entries. * gfortran.h: Prototype for existing function, global_used. * resolve.c (resolve_global_procedure): New function to check global symbols for procedures. (resolve_call, resolve_function): Calls to this new function for non-contained and non-module procedures. * match.c (match_common): Add check for existing global symbol, creat one if none exists and emit error if there is a clash. * parse.c (global_used): Remove static and use the gsymbol name rather than the new_block name, so that the function can be called from resolve.c. (parse_block_data, parse_module, add_global_procedure): Improve checks for existing gsymbols. Emit error if already defined or if references were to another type. Set defined flag. PR fortran/24276 * trans-expr.c (gfc_conv_aliased_arg): New function called by gfc_conv_function_call that coverts an expression for an aliased component reference to a derived type array into a temporary array of the same type as the component. The temporary is passed as an actual argument for the procedure call and is copied back to the derived type after the call. (is_aliased_array): New function that detects an array reference that is followed by a component reference. (gfc_conv_function_call): Detect an aliased actual argument with is_aliased_array and convert it to a temporary and back again using gfc_conv_aliased_arg. PR fortran/25124 PR fortran/25625 * gfortran.dg/internal_references_1.f90: New test. PR fortran/25901 * gfortran.dg/internal references_2.f90: New test. PR fortran/20881 PR fortran/23308 PR fortran/25538 PR fortran/25710 * gfortran.dg/global_references_1.f90: New test. * gfortran.dg/g77/19990905-1.f: Restore the error that there is a clash between the common block name and the name of a subroutine reference. PR fortran/25964 * gfortran.dg/global_references_2.f90: New test. PR fortran/24276 * gfortran.dg/aliasing_dummy_1.f90: New test. PR fortran/25084 PR fortran/20852 PR fortran/25085 PR fortran/25086 * gfortran.dg/assumed_charlen_function_1.f90: New test. * gfortran.dg/assumed_charlen_function_3.f90: New test. PR fortran/25416 * gfortran.dg/assumed_charlen_function_2.f90: New test. PR fortran/25964 * gfortr
[Bug fortran/25084] Interface for assumed length character function allowed
--- Comment #3 from pault at gcc dot gnu dot org 2006-01-27 22:16 --- Subject: Bug 25084 Author: pault Date: Fri Jan 27 22:16:04 2006 New Revision: 110310 URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=110310 Log: 2005-01-28 Paul Thomas <[EMAIL PROTECTED]> PR fortran/25964 * resolve.c (resolve_function): Exclude statement functions from global reference checking. PR fortran/25084 PR fortran/20852 PR fortran/25085 PR fortran/25086 * resolve.c (resolve_function): Declare a gfc_symbol to replace the references through the symtree to the symbol associated with the function expresion. Give error on reference to an assumed character length function is defined in an interface or an external function that is not a dummy argument. (resolve_symbol): Give error if an assumed character length function is array-valued, pointer-valued, pure or recursive. Emit warning that character(*) value functions are obsolescent in F95. PR fortran/25416 * trans-expr.c (gfc_conv_function_call): The above patch to resolve.c prevents any assumed character length function call from getting here except intrinsics such as SPREAD. In this case, ensure that no segfault occurs from referencing non-existent charlen->length-> expr_type and provide a backend_decl for the charlen from the charlen of the first actual argument. Cure temp name confusion. * trans-expr.c (gfc_get_interface_mapping_array): Change name of temporary from "parm" to "ifm" to avoid clash with temp coming from trans-array.c. PR fortran/25124 PR fortran/25625 * decl.c (get_proc_name): If there is an existing symbol in the encompassing namespace, call errors if it is a procedure of the same name or the kind field is set, indicating a type declaration. PR fortran/20881 PR fortran/23308 PR fortran/25538 PR fortran/25710 * decl.c (add_global_entry): New function to check for existing global symbol with this name and to create new one if none exists. (gfc_match_entry): Call add_global_entry before matching argument lists for subroutine and function entries. * gfortran.h: Prototype for existing function, global_used. * resolve.c (resolve_global_procedure): New function to check global symbols for procedures. (resolve_call, resolve_function): Calls to this new function for non-contained and non-module procedures. * match.c (match_common): Add check for existing global symbol, creat one if none exists and emit error if there is a clash. * parse.c (global_used): Remove static and use the gsymbol name rather than the new_block name, so that the function can be called from resolve.c. (parse_block_data, parse_module, add_global_procedure): Improve checks for existing gsymbols. Emit error if already defined or if references were to another type. Set defined flag. PR fortran/24276 * trans-expr.c (gfc_conv_aliased_arg): New function called by gfc_conv_function_call that coverts an expression for an aliased component reference to a derived type array into a temporary array of the same type as the component. The temporary is passed as an actual argument for the procedure call and is copied back to the derived type after the call. (is_aliased_array): New function that detects an array reference that is followed by a component reference. (gfc_conv_function_call): Detect an aliased actual argument with is_aliased_array and convert it to a temporary and back again using gfc_conv_aliased_arg. PR fortran/25124 PR fortran/25625 * gfortran.dg/internal_references_1.f90: New test. PR fortran/25901 * gfortran.dg/internal references_2.f90: New test. PR fortran/20881 PR fortran/23308 PR fortran/25538 PR fortran/25710 * gfortran.dg/global_references_1.f90: New test. * gfortran.dg/g77/19990905-1.f: Restore the error that there is a clash between the common block name and the name of a subroutine reference. PR fortran/25964 * gfortran.dg/global_references_2.f90: New test. PR fortran/24276 * gfortran.dg/aliasing_dummy_1.f90: New test. PR fortran/25084 PR fortran/20852 PR fortran/25085 PR fortran/25086 * gfortran.dg/assumed_charlen_function_1.f90: New test. * gfortran.dg/assumed_charlen_function_3.f90: New test. PR fortran/25416 * gfortran.dg/assumed_charlen_function_2.f90: New test. PR fortran/25964 * gfortr
[Bug fortran/24327] Does not detect duplicate symbol names in contains block
--- Comment #4 from pault at gcc dot gnu dot org 2006-01-27 22:01 --- Fixed in trunk and, in about 15 minutes, on 4.1 Thanks, Steve, for noticing that I had accidentally fixed this. 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=24327
[Bug fortran/25964] [4.1/4.2 Regression] NIST regression on fm311.f
--- Comment #5 from pault at gcc dot gnu dot org 2006-01-27 21:20 --- Subject: Bug 25964 Author: pault Date: Fri Jan 27 21:20:12 2006 New Revision: 110307 URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=110307 Log: 2005-01-27 Paul Thomas <[EMAIL PROTECTED]> PR fortran/25964 * resolve.c (resolve_function): Add GFC_ISYM_LOC to the list of generic_ids exempted from assumed size checking. 2005-01-27 Paul Thomas <[EMAIL PROTECTED]> PR fortran/25964 * gfortran.dg/assumed_size_refs_3.f90: New test. Added: trunk/gcc/testsuite/gfortran.dg/assumed_size_refs_3.f90 (with props) Modified: trunk/gcc/fortran/ChangeLog trunk/gcc/fortran/resolve.c trunk/gcc/testsuite/ChangeLog Added: trunk/gcc/testsuite/gfortran.dg/assumed_size_refs_3.f90 URL: http://gcc.gnu.org/viewcvs/trunk/gcc/testsuite/gfortran.dg/assumed_size_refs_3.f90?root=gcc&view=auto&rev=110307 == --- trunk/gcc/testsuite/gfortran.dg/assumed_size_refs_3.f90 (added) +++ trunk/gcc/testsuite/gfortran.dg/assumed_size_refs_3.f90 Fri Jan 27 21:20:12 2006 @@ -1,0 +1,17 @@ +! { dg-do compile } +! Tests the fix for PR25951, a regression caused by the assumed +! size patch. +! Test case provided by Mark Hesselink <[EMAIL PROTECTED]> +PROGRAM loc_1 + integer i(10) + call f (i) +CONTAINS + SUBROUTINE f (x) + INTEGER, DIMENSION(*) :: x + INTEGER :: address +! The next line would cause: +! Error: The upper bound in the last dimension must appear in the +! reference to the assumed size array 'x' at (1) + address=LOC(x) + END SUBROUTINE f +END PROGRAM loc_1 Propchange: trunk/gcc/testsuite/gfortran.dg/assumed_size_refs_3.f90 ('svn:executable' added) -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25964
[Bug libfortran/19303] Unformatted record header is 4-bytes on 32-bit targets
--- Comment #19 from tkoenig at gcc dot gnu dot org 2006-01-27 21:17 --- (In reply to comment #18) > Created an attachment (id=10564) --> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=10564&action=view) [edit] > patch against gcc-4.1-20051223 > > As requested, I am posting Rob's patch which goes against the Dec 23 snapshot. > I didn't change reverse_memcpy() which I think I should, but maybe the one who > added it should be more appropriate person to do it. Your patch works only on little-endian systems. I am currently thinking of making this a compile-time option. Thomas -- tkoenig at gcc dot gnu dot org changed: What|Removed |Added CC||tkoenig at gcc dot gnu dot ||org http://gcc.gnu.org/bugzilla/show_bug.cgi?id=19303
[Bug fortran/25716] FAIL: gfortran.dg/char_result_11.f90 -O (test for excess errors)
--- Comment #19 from pinskia at gcc dot gnu dot org 2006-01-27 20:59 --- Fixed in 4.1.0. -- pinskia at gcc dot gnu dot org changed: What|Removed |Added Status|ASSIGNED|RESOLVED Resolution||FIXED Target Milestone|--- |4.1.0 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25716
[Bug fortran/18769] ICE in gfc_conv_array_initializer with array initialization with transfer
--- Comment #6 from pinskia at gcc dot gnu dot org 2006-01-27 20:54 --- transfer could be converted over to use VIEW_CONVERT_EXPR of the constant but then again this is in non trans part of the fortran front-end. -- pinskia at gcc dot gnu dot org changed: What|Removed |Added Last reconfirmed|2005-12-30 18:49:45 |2006-01-27 20:54:07 date|| http://gcc.gnu.org/bugzilla/show_bug.cgi?id=18769
[Bug fortran/24866] internal compiler error
--- Comment #3 from pinskia at gcc dot gnu dot org 2006-01-27 20:46 --- I now get: end module test_module 1 Internal Error at (1): write_symbol(): bad module symbol 'UCS-2BE//' -- pinskia at gcc dot gnu dot org changed: What|Removed |Added Last reconfirmed|2006-01-03 17:07:10 |2006-01-27 20:46:25 date|| http://gcc.gnu.org/bugzilla/show_bug.cgi?id=24866
[Bug fortran/23815] Add -byteswapio flag
--- Comment #29 from tkoenig at gcc dot gnu dot org 2006-01-27 20:40 --- Updated patch, which also implements a compile-time option. Hopefully, this will be reviewed some day. -- tkoenig at gcc dot gnu dot org changed: What|Removed |Added URL|http://gcc.gnu.org/ml/fortra|http://gcc.gnu.org/ml/fortra |n/2006-01/msg00179.html |n/2006-01/msg00294.html http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23815
[Bug fortran/20833] LEN of a null slice and temporaries don't mix up well
--- Comment #3 from pinskia at gcc dot gnu dot org 2006-01-27 20:40 --- Fixed. -- pinskia at gcc dot gnu dot org changed: What|Removed |Added Status|NEW |RESOLVED Resolution||FIXED Target Milestone|--- |4.1.0 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=20833
[Bug c++/25999] [4.0/4.1/4.2 Regression] compiler loses extern "C" for function after #pragma weak
--- Comment #1 from pinskia at gcc dot gnu dot org 2006-01-27 20:13 --- Confirmed, on the mainline too. -- 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 GCC build triplet|x86_64-unknown-linux-gnu| GCC host triplet|x86_64-unknown-linux-gnu| GCC target triplet|x86_64-unknown-linux-gnu| Keywords||wrong-code Known to fail||4.0.0 4.1.0 4.2.0 Known to work||3.4.0 Last reconfirmed|-00-00 00:00:00 |2006-01-27 20:13:40 date|| Summary|compiler loses extern "C" |[4.0/4.1/4.2 Regression] |for function after #pragma |compiler loses extern "C" |weak|for function after #pragma ||weak Target Milestone|--- |4.0.3 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25999
[Bug c++/25979] [4.0/4.1/4.2 Regression] incorrect codegen for conditional [SVO issue]
-- jason at gcc dot gnu dot org changed: What|Removed |Added AssignedTo|unassigned at gcc dot gnu |jason at gcc dot gnu dot org |dot org | Status|NEW |ASSIGNED Last reconfirmed|2006-01-26 17:43:24 |2006-01-27 20:09:50 date|| http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25979
[Bug target/25864] Enable IBM long double format in 32-bit PowerPC Linux
--- Comment #7 from jakub at gcc dot gnu dot org 2006-01-27 19:59 --- Subject: Bug 25864 Author: jakub Date: Fri Jan 27 19:59:49 2006 New Revision: 110303 URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=110303 Log: 2006-01-27 Jakub Jelinek <[EMAIL PROTECTED]> PR target/25864 * libgcc-std.ver: Add GCC_4.1.0 symbol version. * config/rs6000/t-linux64 (TARGET_LIBGCC2_CFLAGS): Only append -mno-minimal-toc to previous content. (bispecs): Remove goal. * config/rs6000/ppc64-fp.c: Define TMODES before including fp-bit.h. * config/rs6000/darwin-ldouble.c: Don't provide [EMAIL PROTECTED] compatibility aliases on powerpc-*-*gnu*. * config/rs6000/libgcc-ppc-glibc.ver: New file. * config/rs6000/t-ppccomm (SHLIB_MAPFILES): Append libgcc-ppc-glibc.ver on powerpc*-*-*gnu*. (TARGET_LIBGCC2_CFLAGS): Append -specs=ldblspecs. (ldblspecs): New goal. * config/rs6000/t-linux64 (SHLIB_MAPFILES): Removed. * mklibgcc.in: If $TPBIT is empty, don't compile _sf_to_tf and _df_to_tf. * config/fp-bit.h (TMODES): Don't define if none of TFLOAT, L_sf_to_tf or L_df_to_tf is defined. 2006-01-27 David Edelsohn <[EMAIL PROTECTED]> Alan Modra <[EMAIL PROTECTED]> PR target/25864 * config/rs6000/linux.h (POWERPC_LINUX): Define. * config/rs6000/linux64.h (POWERPC_LINUX): Define. * config/rs6000/darwin-ldouble.c: Build on 32-bit PowerPC. * config/rs6000/darwin.h (TARGET_IEEEQUAD): Define to zero. * config/rs6000/aix.h (TARGET_IEEEQUAD): Define to zero. * config/rs6000/rs6000.c (rs6000_ieeequad): New variable. (rs6000_override_options): Initialize rs6000_ieeequad. Initialize TFmode format to ibm_extended_format if not TARGET_IEEEQUAD. (rs6000_handle_option): Accept -mabi= ibmlongdouble and ieeelongdouble. (rs6000_emit_move): Move !TARGET_IEEEQUAD as two parts. (rs6000_return_in_memory): Only return IEEEQUAD in memory. (function_arg_advance): IBM long double passed in two FPRs, not split. (function_arg): IBM long double passed in FPRs. (rs6000_pass_by_reference): Only IEEEQUAD passed by reference. (rs6000_gimplify_va_arg): IBM long double passed in two FPRs. Only multireg GPR aligned. (rs6000_init_libfuncs): Enable IBM long double functions if not IEEEQUAD. (rs6000_generate_compare): Use IBM long double compare if not TARGET_IEEEQUAD. * config/rs6000/rs6000.h (rs6000_ieeequad): Declare. (TARGET_IEEEQUAD): Define. (CANNOT_CHANGE_MODE_CLASS): Any mode larger than doubleword if not TARGET_IEEEQUAD. * config/rs6000/rs6000.md: Enable TFmode patterns if !TARGET_IEEEQUAD. * config/rs6000/t-ppccomm (LIB2FUNCS_EXTRA): Add darwin-ldouble.c. * config/rs6000/svr4.h (SUBTARGET_OVERRIDE_OPTIONS): -msoft-float and -mlong-double-128 are incompatible. * doc/invoke.texi (-mabi): Collect options together. Add ibmlongdouble and ieeelongdouble. Added: trunk/gcc/config/rs6000/libgcc-ppc-glibc.ver Modified: trunk/gcc/ChangeLog trunk/gcc/config/fp-bit.h trunk/gcc/config/rs6000/aix.h trunk/gcc/config/rs6000/darwin-ldouble.c trunk/gcc/config/rs6000/darwin.h trunk/gcc/config/rs6000/linux.h trunk/gcc/config/rs6000/linux64.h trunk/gcc/config/rs6000/ppc64-fp.c trunk/gcc/config/rs6000/rs6000.c trunk/gcc/config/rs6000/rs6000.h trunk/gcc/config/rs6000/rs6000.md trunk/gcc/config/rs6000/sysv4.h trunk/gcc/config/rs6000/t-linux64 trunk/gcc/config/rs6000/t-ppccomm trunk/gcc/doc/invoke.texi trunk/gcc/libgcc-std.ver trunk/gcc/mklibgcc.in -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25864
[Bug c++/25999] New: compiler loses extern "C" for function after #pragma weak
The following short program generates the mangled symbol "_Z3Foov" instead of the expected "Foo" when built with -DBUG. Without -DBUG and the "#pragma weak Random_Symbol" line, or if using g++ 3.2.3, the expected thing happens. extern "C" { void Foo(); } #ifdef BUG #pragma weak Random_Symbol #endif void Foo() { } -- Summary: compiler loses extern "C" for function after #pragma weak Product: gcc Version: 4.0.2 Status: UNCONFIRMED Severity: normal Priority: P3 Component: c++ AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: metcalf at lcs dot mit dot edu 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=25999
[Bug fortran/25324] Wrong DW_TAG_compile_unit generated when compiling preprocessed fortran code
--- Comment #3 from jakub at gcc dot gnu dot org 2006-01-27 20:04 --- Subject: Bug 25324 Author: jakub Date: Fri Jan 27 20:03:59 2006 New Revision: 110305 URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=110305 Log: PR fortran/25324 * Make-lang.in (fortran/scanner.o): Depend on toplev.h. * lang.opt (fpreprocessed): New option. * scanner.c: Include toplev.h. (gfc_src_file, gfc_src_preprocessor_lines): New variables. (preprocessor_line): Unescape filename if there were any backslashes. (load_file): If initial and gfc_src_file is not NULL, use it rather than opening the file. If gfc_src_preprocessor_lines has non-NULL elements, pass it to preprocessor_line. (unescape_filename, gfc_read_orig_filename): New functions. * gfortran.h (gfc_option_t): Add flag_preprocessed. (gfc_read_orig_filename): New prototype. * options.c (gfc_init_options): Clear flag_preprocessed. (gfc_post_options): If flag_preprocessed, call gfc_read_orig_filename. (gfc_handle_option): Handle OPT_fpreprocessed. * lang-specs.h: Pass -fpreprocessed to f951 if preprocessing sources. Modified: branches/gcc-4_1-branch/gcc/fortran/ChangeLog branches/gcc-4_1-branch/gcc/fortran/Make-lang.in branches/gcc-4_1-branch/gcc/fortran/gfortran.h branches/gcc-4_1-branch/gcc/fortran/lang-specs.h branches/gcc-4_1-branch/gcc/fortran/lang.opt branches/gcc-4_1-branch/gcc/fortran/options.c branches/gcc-4_1-branch/gcc/fortran/scanner.c -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25324
[Bug fortran/25324] Wrong DW_TAG_compile_unit generated when compiling preprocessed fortran code
--- Comment #2 from jakub at gcc dot gnu dot org 2006-01-27 20:02 --- Subject: Bug 25324 Author: jakub Date: Fri Jan 27 20:01:55 2006 New Revision: 110304 URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=110304 Log: PR fortran/25324 * Make-lang.in (fortran/scanner.o): Depend on toplev.h. * lang.opt (fpreprocessed): New option. * scanner.c: Include toplev.h. (gfc_src_file, gfc_src_preprocessor_lines): New variables. (preprocessor_line): Unescape filename if there were any backslashes. (load_file): If initial and gfc_src_file is not NULL, use it rather than opening the file. If gfc_src_preprocessor_lines has non-NULL elements, pass it to preprocessor_line. (unescape_filename, gfc_read_orig_filename): New functions. * gfortran.h (gfc_option_t): Add flag_preprocessed. (gfc_read_orig_filename): New prototype. * options.c (gfc_init_options): Clear flag_preprocessed. (gfc_post_options): If flag_preprocessed, call gfc_read_orig_filename. (gfc_handle_option): Handle OPT_fpreprocessed. * lang-specs.h: Pass -fpreprocessed to f951 if preprocessing sources. Modified: trunk/gcc/fortran/ChangeLog trunk/gcc/fortran/Make-lang.in trunk/gcc/fortran/gfortran.h trunk/gcc/fortran/lang-specs.h trunk/gcc/fortran/lang.opt trunk/gcc/fortran/options.c trunk/gcc/fortran/scanner.c -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25324
[Bug target/25998] executable generated by f951 doesn't work with 32-bit SUNW,UltraAX-e2 (UltraSPARC-IIe) shared libc_psr.so.1
--- Comment #4 from alex at milivojevic dot org 2006-01-27 19:34 --- Some additional info (there's always something else that pops up). Seems the problem is present only on machine where both of the following are true: - processor is UltraSPARC-IIe - "uname -i" returns SUNW,UltraAX-e2 One machine where /usr/platform/sun4u/sbin/prtdiag claims the processor is UltraSPARC-IIe, but "uname -i" prints out SUNW,UltraAX-i2, and the test program was running correctly on it. I've blindly assumed that machine had IIi processor when I was writing bug report. Sorry about that. Interesting thing is that both SUNW,UltraAX-e2 and SUNW,UltraAX-i2 are symbolic links to generic sun4u directory: $ ls -l /usr/platform ... lrwxrwxrwx 1 root root 5 Apr 4 2003 SUNW,UltraAX-e2 -> sun4u lrwxrwxrwx 1 root root 5 Apr 4 2003 SUNW,UltraAX-i2 -> sun4u drwxr-xr-x 6 root sys 512 Mar 12 2003 sun4u ... The SUNWkvm package on both machines seems to be the same version. I even copied over libc_psr.so.1 from one machine to another and run diff, and it reports the files are identical. $ pkginfo -l SUNWkvm PKGINST: SUNWkvm NAME: Core Architecture, (Kvm) CATEGORY: system ARCH: sparc.sun4u VERSION: 11.9.0,REV=2002.04.06.15.27 BASEDIR: / VENDOR: Sun Microsystems, Inc. DESC: core software for a specific hardware platform group PSTAMP: on81-patch20021015110113 INSTDATE: Mar 12 2003 09:15 HOTLINE: Please contact your local service provider STATUS: completely installed FILES: 192 installed pathnames 43 shared pathnames 46 directories 10 executables 2 setuid/setgid executables 1610 blocks used (approx) -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25998
[Bug fortran/20845] Module variablle with defualt component needs SAVE attribute.
--- Comment #6 from kargl at gcc dot gnu dot org 2006-01-27 19:11 --- I working on a patch for this. -- kargl at gcc dot gnu dot org changed: What|Removed |Added AssignedTo|unassigned at gcc dot gnu |kargl at gcc dot gnu dot org |dot org | Status|NEW |ASSIGNED Last reconfirmed|2005-09-30 17:03:07 |2006-01-27 19:11:13 date|| http://gcc.gnu.org/bugzilla/show_bug.cgi?id=20845
[Bug fortran/25416] Segmentation fault in gfc_conv_function_call
--- Comment #7 from uweigand at gcc dot gnu dot org 2006-01-27 18:43 --- Thanks for fixing this! Any chance of getting the fix into 4.1, or this is too risky? -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25416
[Bug c++/25983] [gomp] transient ICE, c++
--- Comment #6 from tbptbp at gmail dot com 2006-01-27 18:12 --- Subject: Re: [gomp] transient ICE, c++ On 27 Jan 2006 18:06:23 -, pinskia at gcc dot gnu dot org <[EMAIL PROTECTED]> wrote: > That is a dup of bug 25990, then. Technically, it's the other way around ;) Anyway, it's still a no go. I'll watch 25990 then. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25983
[Bug c++/25983] [gomp] transient ICE, c++
--- Comment #5 from pinskia at gcc dot gnu dot org 2006-01-27 18:06 --- (In reply to comment #4) > I'm not sure it's a dupe & fixed, because it also triggered with exceptions > disabled. > > I don't know if the patch for PR/25873 has been applied to the gomp branch or > not, if not please ignore the spam, but with a fresh svn checkout (110300) i > get: That is a dup of bug 25990, then. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25983
[Bug c++/25983] [gomp] transient ICE, c++
--- Comment #4 from tbptbp at gmail dot com 2006-01-27 18:04 --- I'm not sure it's a dupe & fixed, because it also triggered with exceptions disabled. I don't know if the patch for PR/25873 has been applied to the gomp branch or not, if not please ignore the spam, but with a fresh svn checkout (110300) i get: /usr/local/gomp-110300/libexec/gcc/x86_64-unknown-linux-gnu/4.2.0-gomp-20050608-branch/cc1plus \ -fpreprocessed raytrace_packet.ii \ -quiet -dumpbase raytrace_packet.cpp \ -mtune=generic -auxbase-strip bin/gcc/raytrace_packet.o \ -version -fopenmp \ -o raytrace_packet.s GNU C++ version 4.2.0-gomp-20050608-branch 20060126 (experimental) (merged 20060126) (x86_64-unknown-linux-gnu) compiled by GNU C version 4.2.0-gomp-20050608-branch 20060126 (experimental) (merged 20060126). GGC heuristics: --param ggc-min-expand=30 --param ggc-min-heapsize=4096 Compiler executable checksum: b7c38ddb04380359d35e2b2068ab186c src/raytrace_packet_aa.cpp: In member function 'void rt::raytracer_t::prender_supa() [with unsigned int flags = 2u]': src/raytrace_packet_aa.cpp:710: 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. (gdb) run Starting program: /usr/local/gomp-110300/libexec/gcc/x86_64-unknown-linux-gnu/4.2.0-gomp-20050608-branch/cc1plus -fpreprocessed raytrace_packet.ii -quiet -dumpbase raytrace_packet.cpp -mtune=generic -auxbase-strip bin/gcc/raytrace_packet.o -version -fopenmp -o raytrace_packet.s GNU C++ version 4.2.0-gomp-20050608-branch 20060126 (experimental) (merged 20060126) (x86_64-unknown-linux-gnu) compiled by GNU C version 4.2.0-gomp-20050608-branch 20060126 (experimental) (merged 20060126). GGC heuristics: --param ggc-min-expand=30 --param ggc-min-heapsize=4096 Compiler executable checksum: b7c38ddb04380359d35e2b2068ab186c Program received signal SIGSEGV, Segmentation fault. ggc_set_mark (p=0xafafafafafafafaf) at ../../gcc/ggc-page.c:588 588 while (table->high_bits != high_bits) (gdb) bt #0 ggc_set_mark (p=0xafafafafafafafaf) at ../../gcc/ggc-page.c:588 #1 0x006ecec8 in gt_ggc_mx_basic_block_def (x_p=) at gtype-desc.c:462 #2 0x006ed26f in gt_ggc_mx_VEC_basic_block_gc (x_p=) at gtype-desc.c:193 #3 0x006ed2d3 in gt_ggc_mx_control_flow_graph (x_p=) at gtype-desc.c:624 #4 0x006ed38f in gt_ggc_mx_function (x_p=) at gtype-desc.c:639 #5 0x004dc077 in gt_ggc_mx_lang_tree_node (x_p=) at gt-cp-tree.h:320 #6 0x004ef847 in gt_ggc_mx_cp_binding_level (x_p=) at gt-cp-name-lookup.h:65 #7 0x004db90e in gt_ggc_mx_lang_tree_node (x_p=) at gt-cp-tree.h:541 #8 0x004dbc54 in gt_ggc_mx_lang_tree_node (x_p=) at gt-cp-tree.h:285 #9 0x004dbdde in gt_ggc_mx_lang_tree_node (x_p=) at gt-cp-tree.h:344 #10 0x004dc2cb in gt_ggc_mx_lang_tree_node (x_p=) at gt-cp-tree.h:362 #11 0x004dbd6f in gt_ggc_mx_lang_tree_node (x_p=) at gt-cp-tree.h:326 #12 0x004dba35 in gt_ggc_mx_lang_tree_node (x_p=) at gt-cp-tree.h:114 #13 0x004dbd8b in gt_ggc_mx_lang_tree_node (x_p=) at gt-cp-tree.h:328 #14 0x004dba35 in gt_ggc_mx_lang_tree_node (x_p=) at gt-cp-tree.h:114 #15 0x004dbd7d in gt_ggc_mx_lang_tree_node (x_p=) at gt-cp-tree.h:327 #16 0x004dbd53 in gt_ggc_mx_lang_tree_node (x_p=) at gt-cp-tree.h:324 #17 0x004dbb65 in gt_ggc_mx_lang_tree_node (x_p=) at gt-cp-tree.h:204 #18 0x006e6bb7 in gt_ggc_mx_cgraph_varpool_node (x_p=) at gtype-desc.c:115 #19 0x006e3687 in ggc_mark_roots () at ../../gcc/ggc-common.c:118 #20 0x00887a9a in ggc_collect () at ../../gcc/ggc-page.c:1880 #21 0x00889059 in execute_todo (pass=0xc5ada0, flags=2, use_required=) at ../../gcc/passes.c:781 #22 0x008892cf in execute_one_pass (pass=0xc5ada0) at ../../gcc/passes.c:863 #23 0x0088933c in execute_pass_list (pass=0xc5ada0) at ../../gcc/passes.c:885 #24 0x00558e0a in tree_rest_of_compilation (fndecl=0x2c480700) at ../../gcc/tree-optimize.c:412 #25 0x004d0d08 in expand_body (fn=0x2c480700) at ../../gcc/cp/semantics.c:3012 #26 0x008d6a66 in cgraph_expand_function (node=0x2c4def00) at ../../gcc/cgraphunit.c:1098 #27 0x008d8fe8 in cgraph_optimize () at ../../gcc/cgraphunit.c:1164 #28 0x0047e01f in cp_finish_file () at ../../gcc/cp/decl2.c:3115 #29 0x0052ec0a in c_common_parse_file (set_yydebug=) at ../../gcc/c-opts.c:1148 #30 0x0085b428 in toplev_main (argc=, argv=0x0) at ../../gcc/toplev.c:990 #31 0x2abdf4ca in __libc_start_main () from /lib/libc.so.6 #32 0x0040271a in _start () at ../sysdeps/x86_64/elf/start.S:113 (gdb) -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25983
[Bug rtl-optimization/25196] [4.0 Regression] i386: wrong arguments passed
--- Comment #10 from markus at oberhumer dot com 2006-01-27 18:03 --- What is the status of this bug for gcc 4.0.3 ? According to the thread at http://gcc.gnu.org/ml/gcc-patches/2006-01/msg00542.html it seems it has been approved a while ago. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25196
[Bug target/25661] Wrong long double to float conversion
--- Comment #7 from pinskia at gcc dot gnu dot org 2006-01-27 18:03 --- But this is by design and not a bug in GCC. -- 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=25661
[Bug target/25960] __gcc_add doesn't handle -0.0L properly
--- Comment #3 from pinskia at gcc dot gnu dot org 2006-01-27 18:02 --- So closing as invalid. -- pinskia at gcc dot gnu dot org changed: What|Removed |Added Status|NEW |RESOLVED Resolution||INVALID http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25960
[Bug target/25960] __gcc_add doesn't handle -0.0L properly
--- Comment #2 from dje at gcc dot gnu dot org 2006-01-27 17:59 --- The IBM 128-bit extended floating point format is not fully compliant with IEEE 754. It is functioning as designed. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25960
[Bug target/25998] executable generated by f951 doesn't work with 32-bit SUNW,UltraAX-e2 (UltraSPARC-IIe) shared libc_psr.so.1
--- Comment #2 from pinskia at gcc dot gnu dot org 2006-01-27 17:15 --- Why do you think this is a GCC bug? libc_psr is linked in via black magic and not really referenced in the binaries see: http://sourceware.org/ml/binutils/2003-08/msg00343.html -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25998
[Bug other/25527] [gomp] segfault with locale
--- Comment #7 from reichelt at gcc dot gnu dot org 2006-01-27 17:39 --- Even more compact (because an ostringstream contains a locale as member): #include int main() { std::locale L; return 0; } This alredy crashes with "-fopeenmp -m32" (i.e. without optimization). It looks like we are crashing in the constructor of locale (which is not in the header, but in the library that gets linked). -- reichelt at gcc dot gnu dot org changed: What|Removed |Added Summary|[gomp] segfault in |[gomp] segfault with locale |main.omp_fn.0 with -O2 | http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25527
[Bug target/25998] executable generated by f951 doesn't work with 32-bit SUNW,UltraAX-e2 (UltraSPARC-IIe) shared libc_psr.so.1
--- Comment #3 from alex at milivojevic dot org 2006-01-27 17:26 --- I said it might be a bug with gcc. After all, gcc is the only application that doesn't work correctly on this box. I guess maintainers of any other component mentioned (gmp, mpfr, binutils, Sun) can say the same thing as you did. Since gcc is the first (and so far only) application that had problem on this platform, it was the best place to start (IMO). As I said, if there are any tests I could run on this platform to rule out gcc, I'd be more than happy to run them. The libc_psr stuff is not really a black magic (and not really brought in by black magic). It's just the processor optimized part of libc. If it was black magic, than glibc optimized for anything else other than basic processor type (such as i386 for example) would be black magic too ;-) -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25998
[Bug fortran/25716] FAIL: gfortran.dg/char_result_11.f90 -O (test for excess errors)
--- Comment #18 from eedelman at gcc dot gnu dot org 2006-01-27 17:19 --- Subject: Bug 25716 Author: eedelman Date: Fri Jan 27 17:19:36 2006 New Revision: 110302 URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=110302 Log: fortran/ 2005-01-27 Erik Edelmann <[EMAIL PROTECTED]> PR fortran/25716 * symbol.c (free_old_symbol): New function. (gfc_commit_symbols): Use it. (gfc_commit_symbol): New function. (gfc_use_derived): Use it. * gfortran.h: Add prototype for gfc_commit_symbol. * intrinsic.c (gfc_find_function): Search in 'conversion' if not found in 'functions'. (gfc_convert_type_warn): Add a symtree to the new expression node, and commit the new symtree->n.sym. * resolve.c (gfc_resolve_index): Make sure typespec is properly initialized. testsuite/ 2005-01-27 Erik Edelmann <[EMAIL PROTECTED]> PR fortran/25716 * gfortran.dg/char_result_11.f90: Make it sensitive to PR 25716 on 32-bit systems too. Modified: branches/gcc-4_1-branch/gcc/fortran/ChangeLog branches/gcc-4_1-branch/gcc/fortran/gfortran.h branches/gcc-4_1-branch/gcc/fortran/intrinsic.c branches/gcc-4_1-branch/gcc/fortran/resolve.c branches/gcc-4_1-branch/gcc/fortran/symbol.c branches/gcc-4_1-branch/gcc/testsuite/ChangeLog branches/gcc-4_1-branch/gcc/testsuite/gfortran.dg/char_result_11.f90 -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25716
[Bug target/25998] executable generated by f951 doesn't work with 32-bit SUNW,UltraAX-e2 (UltraSPARC-IIe) shared libc_psr.so.1
--- Comment #1 from alex at milivojevic dot org 2006-01-27 17:11 --- Created an attachment (id=10743) --> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=10743&action=view) test program -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25998
[Bug testsuite/24962] gcc.target/ia64/20030811-1.c (test for excess errors) fails with -milp32
--- Comment #3 from sje at cup dot hp dot com 2006-01-27 17:06 --- This testsuite failure has been fixed on the main line and in the 4.1 branch by using long long instead of just long. The test failure does not occur prior to 4.1 because the test is not run on HP-UX prior to 4.1. -- sje at cup dot hp dot com changed: What|Removed |Added CC||sje at cup dot hp dot com Status|UNCONFIRMED |RESOLVED Resolution||FIXED http://gcc.gnu.org/bugzilla/show_bug.cgi?id=24962
[Bug target/25998] New: executable generated by f951 doesn't work with 32-bit SUNW,UltraAX-e2 (UltraSPARC-IIe) shared libc_psr.so.1
This might be a bug in any of the following: - gcc/f951 - gmp - mpfr - Sun system libraries - binutils - UltraSPARC-IIe (not likely, but you never know) Of course, there is always possibility it was just me doing something stupid. If there is any way (or test) to check if bug is in f951 or not in f951, please let me know. So far, I had the problem only with gcc/f951 generated code on this machine (relatively bussy box that was running all kind of stuff in the past 3 years). So it's either gcc/f951, or some obscure bug in other component(s) that gets triggered only by gcc/f951. When I compile sample Fortran hello world program, it produces different output depending on which machine it is run (if dynamically linked). Or depending on which machine it was compiled on (if statically linked). Statically linked binary shouldn't include any machine-specific code (libc_psr is shared-only library, there's no libc_psr.a). However, f951 itself gets dynamically linked against this system library which is processor dependant. I've downloaded the "hello world" program from the net. Haven't done Fortran in long time, but looking at it, it should print "Hello, world." in endless loop. Running "uname -a" shows: $ uname -a SunOS apollo 5.9 Generic_112233-04 sun4u sparc SUNW,UltraAX-e2 Solaris When compiled with -m32 and run on SUNW,UltraAX-e2 machine (output of uname -i), the program exits immediatelly with no output. When compiled with -m64, it works correctly. If I copy the 32bit program (including libgfortran and libgcc_s libraries) to any other machine (tested on UltraSPARC-II and UltraSPARC-IIi) it works correctly. If I compile the program statically on SUNW,UltraAX-e2 machine, and then copy it to different machine, it doesn't work. If I compile the program statically on any other machine, and copy it to SUNW,UltraAX-e2 machine, it works correctly. $ ldd a.out libgfortran.so.0 => /opt/pbl/lib/libgfortran.so.0 libm.so.1 => /usr/lib/libm.so.1 libgcc_s.so.1 => /opt/pbl/lib/libgcc_s.so.1 libc.so.1 => /usr/lib/libc.so.1 libdl.so.1 =>/usr/lib/libdl.so.1 /usr/platform/SUNW,UltraAX-e2/lib/libc_psr.so.1 $ ldd /opt/pbl/libexec/gcc/sparc-sun-solaris2.9/4.0.2/f951 libmpfr.so.1 => /opt/pbl/lib/libmpfr.so.1 libgmp.so.3 => /opt/pbl/lib/libgmp.so.3 libc.so.1 => /usr/lib/libc.so.1 libgcc_s.so.1 => /opt/pbl/lib/libgcc_s.so.1 libdl.so.1 =>/usr/lib/libdl.so.1 /usr/platform/SUNW,UltraAX-e2/lib/libc_psr.so.1 gcc 4.0.2: ../configure --prefix=/opt/pbl --with-local-prefix=/opt/pbl --with-cpu=ultrasparc --with-tune=ultrasparc --enable-languages=c,ada,c++,f95,java,objc --disable-nls --with-gmp=/opt/pbl --with-mpfr=/opt/pbl --with-gnu-ld --with-gnu-as --with-ld=/opt/pbl/bin/ld --with-as=/opt/pbl/bin/as --enable-java-awt=xlib --with-x gmp 4.1.4: ../configure --build=sparc-sun-solaris2.9 --enable-cxx --enable-shared --enable-static --with-readline --with-gnu-ld mpfr 2.2.0 (with all recommended patches): ../configure --prefix=/opt/pbl --with-gmp=/opt/pbl --enable-static --enable-shared binutils 2.16: ../configure --prefix=/opt/pbl --exec-prefix=/opt/pbl --with-mpfr=/opt/pbl --with-gmp=/opt/pbl --enable-shared --disable-nls --enable-64-bit-bfd I also did couple of test installations into my home directory (gcc/gmp/mpfr/binutils) and was able to reproduce the problem every time. I have only one UltraSPARC-IIe box (500MHz processor), so can't tell if the problem is repeatable on every one of them. It is on mine. -- Summary: executable generated by f951 doesn't work with 32-bit SUNW,UltraAX-e2 (UltraSPARC-IIe) shared libc_psr.so.1 Product: gcc Version: 4.0.2 Status: UNCONFIRMED Severity: normal Priority: P3 Component: target AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: alex at milivojevic dot org GCC build triplet: sparc-sun-solaris2.9 GCC host triplet: sparc-sun-solaris2.9 GCC target triplet: sparc-sun-solaris2.9 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25998
[Bug middle-end/25977] [4.1/4.2 Regression] RSO vs NRV (twice)
-- jason at gcc dot gnu dot org changed: What|Removed |Added AssignedTo|unassigned at gcc dot gnu |jason at gcc dot gnu dot org |dot org | Status|NEW |ASSIGNED Last reconfirmed|2006-01-26 15:50:23 |2006-01-27 16:50:08 date|| http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25977
[Bug other/25527] [gomp] segfault in main.omp_fn.0 with -O2
--- Comment #6 from reichelt at gcc dot gnu dot org 2006-01-27 16:47 --- Even shorter testcase: = #include int main() { std::ostringstream s; return 0; } = -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25527
[Bug target/25761] -fpic (not -fPIC) does not work with i686-darwin
--- Comment #3 from pinskia at gcc dot gnu dot org 2006-01-27 16:43 --- I have a patch. -- 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 |2006-01-27 16:43:23 date|| http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25761
[Bug c++/25997] ICE in make_typename_type while parsing member template invocation
--- Comment #1 from pinskia at gcc dot gnu dot org 2006-01-27 16:31 --- Fixed in 4.0.3, This is a dup of bug 19253. *** This bug has been marked as a duplicate of 19253 *** -- pinskia at gcc dot gnu dot org changed: What|Removed |Added Status|UNCONFIRMED |RESOLVED Resolution||DUPLICATE http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25997
[Bug c++/19253] [3.4/4.0/4.1 regression] bad error message / ICE for invalid template parameter
--- Comment #18 from pinskia at gcc dot gnu dot org 2006-01-27 16:31 --- *** Bug 25997 has been marked as a duplicate of this bug. *** -- pinskia at gcc dot gnu dot org changed: What|Removed |Added CC||holt-gcc at gholt dot net http://gcc.gnu.org/bugzilla/show_bug.cgi?id=19253
[Bug c++/25997] New: ICE in make_typename_type while parsing member template invocation
The following code causes an ICE. This code is certainly invalid as it stands, though it is derived from something larger which I think is valid. namespace SArray { class ColumnMajor; template class Array; } template void xxx(const SArray::Array & arr) { SArray::Array arr_contiguous = arr; arr_contiguous.force_ordering(); } Here is the compiler output: % g++ -v test.cpp Using built-in specs. Target: i686-pc-linux-gnu Configured with: ../gcc-4.0.2/configure --prefix=/usr/local/stow/gcc-4.0.2 Thread model: posix gcc version 4.0.2 /usr/local/stow/gcc-4.0.2/libexec/gcc/i686-pc-linux-gnu/4.0.2/cc1plus -quiet -v -D_GNU_SOURCE test.cpp -quiet -dumpbase test.cpp -mtune=pentiumpro -auxbase test -version -o /tmp/ccuyp00K.s ignoring nonexistent directory "/usr/local/stow/gcc-4.0.2/lib/gcc/i686-pc-linux-gnu/4.0.2/../../../../i686-pc-linux-gnu/include" #include "..." search starts here: #include <...> search starts here: /usr/local/stow/gcc-4.0.2/lib/gcc/i686-pc-linux-gnu/4.0.2/../../../../include/c++/4.0.2 /usr/local/stow/gcc-4.0.2/lib/gcc/i686-pc-linux-gnu/4.0.2/../../../../include/c++/4.0.2/i686-pc-linux-gnu /usr/local/stow/gcc-4.0.2/lib/gcc/i686-pc-linux-gnu/4.0.2/../../../../include/c++/4.0.2/backward /usr/local/include /usr/local/stow/gcc-4.0.2/include /usr/local/stow/gcc-4.0.2/lib/gcc/i686-pc-linux-gnu/4.0.2/include /usr/include End of search list. GNU C++ version 4.0.2 (i686-pc-linux-gnu) compiled by GNU C version 3.3.5 20050117 (prerelease) (SUSE Linux). GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072 test.cpp: In function âvoid xxx(const SArray::Array&)â: test.cpp:13: internal compiler error: in make_typename_type, at cp/decl.c:2568 Please submit a full bug report, with preprocessed source if appropriate. -- Summary: ICE in make_typename_type while parsing member template invocation Product: gcc Version: 4.0.2 Status: UNCONFIRMED Severity: normal Priority: P3 Component: c++ AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: holt-gcc at gholt dot net http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25997
[Bug other/25527] [gomp] segfault in main.omp_fn.0 with -O2
--- Comment #5 from reichelt at gcc dot gnu dot org 2006-01-27 16:25 --- I can reproduce the problem on x86_64-unknown-linux-gnu with the following testcase: === #include #include int main() { std::complex c; std::cout << c << std::endl; } === It crashes when compiled with "-fopenmp -O -m32", but runs fine if I leave out any of these options. -- reichelt at gcc dot gnu dot org changed: What|Removed |Added CC||reichelt at gcc dot gnu dot ||org Keywords||monitored, wrong-code http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25527
[Bug other/25982] writer written by write_writer doesn't quote where necessary
--- Comment #1 from amylaar at gcc dot gnu dot org 2006-01-27 16:17 --- Fixed by: r110275 | zack | 2006-01-26 21:21:42 + (Thu, 26 Jan 2006) | 11 lines * genconditions.c (write_header): In generated code, #ifdef out all includes and fake declarations, except includes of bconfig.h and system.h, unless GCC_VERSION >= 3001. Do not include gensupport.h in any case. (write_conditions): Generate a definition of struct c_test. Add a comment to the generated #endif. (write_one_condition): Escape backslashes in string too. (write_writer): Generated code must escape backslashes and quote marks (but not newlines) in the strings it writes. * Makefile.in (build/gencondmd.o): Update dependencies. -- amylaar at gcc dot gnu dot org changed: What|Removed |Added Status|UNCONFIRMED |RESOLVED Resolution||FIXED http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25982
[Bug c/25996] [gomp] ICE on undefined iteration variable
--- Comment #1 from pinskia at gcc dot gnu dot org 2006-01-27 16:08 --- Confirmed. -- pinskia at gcc dot gnu dot org changed: What|Removed |Added CC||dnovillo at gcc dot gnu dot ||org Status|UNCONFIRMED |NEW Ever Confirmed|0 |1 Last reconfirmed|-00-00 00:00:00 |2006-01-27 16:08:34 date|| http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25996
[Bug c/25996] New: [gomp] ICE on undefined iteration variable
Compiling the following invalid testcase with -fopenmp causes an ICE: === void foo() { #pragma omp parallel for for ( i=0; i<1; ++i ) ; } === bug.c: In function 'foo': bug.c:4: error: 'i' undeclared (first use in this function) bug.c:4: error: (Each undeclared identifier is reported only once bug.c:4: error: for each function it appears in.) bug.c:4: error: invalid type for iteration variable '' bug.c:4: internal compiler error: tree check: expected class 'type', have 'exceptional' (error_mark) in c_finish_omp_for, at c-omp.c:210 Please submit a full bug report, [etc.] -- Summary: [gomp] ICE on undefined iteration variable Product: gcc Version: 4.2.0 Status: UNCONFIRMED Keywords: ice-on-invalid-code, error-recovery, monitored, openmp Severity: normal Priority: P3 Component: c AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: reichelt at gcc dot gnu dot org http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25996
[Bug c++/25873] [gomp] ICE in verify_eh_throw_stmt_node
--- Comment #3 from reichelt at gcc dot gnu dot org 2006-01-27 16:00 --- *** Bug 25983 has been marked as a duplicate of this bug. *** -- reichelt at gcc dot gnu dot org changed: What|Removed |Added CC||tbptbp at gmail dot com http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25873
[Bug c++/25983] [gomp] transient ICE, c++
--- Comment #3 from reichelt at gcc dot gnu dot org 2006-01-27 16:00 --- *** This bug has been marked as a duplicate of 25873 *** -- reichelt at gcc dot gnu dot org changed: What|Removed |Added Status|UNCONFIRMED |RESOLVED Resolution||DUPLICATE http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25983
[Bug c++/25873] [gomp] ICE in verify_eh_throw_stmt_node
--- Comment #2 from dnovillo at gcc dot gnu dot org 2006-01-27 15:49 --- This is actually: 2006-01-26 Diego Novillo <[EMAIL PROTECTED]> * tree-cfg.c (move_block_to_fn): Call remove_stmt_from_eh_region for each moved statement. which I need to move to trunk when the C++ FE is merged in. Added to my TODO for the C++ merge. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25873
[Bug c++/25874] [gomp branch] ICE in calc_dfs_tree()
--- Comment #4 from reichelt at gcc dot gnu dot org 2006-01-27 15:45 --- Even shorter C-testcase (compile with -fopenmp -O): void foo(); inline void bar() { int i; for ( i=0; i<1; ++i ) #pragma omp parallel foo(); } void baz() { #pragma omp parallel bar(); } -- reichelt at gcc dot gnu dot org changed: What|Removed |Added CC||reichelt at gcc dot gnu dot ||org Keywords||monitored http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25874
[Bug c++/25873] [gomp] ICE in verify_eh_throw_stmt_node
--- Comment #1 from reichelt at gcc dot gnu dot org 2006-01-27 15:33 --- Fixed with the recent merge from mainline. -- reichelt at gcc dot gnu dot org changed: What|Removed |Added Status|UNCONFIRMED |RESOLVED Resolution||FIXED http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25873
[Bug middle-end/25990] gomp ICE with -fopenmp
--- Comment #6 from reichelt at gcc dot gnu dot org 2006-01-27 15:18 --- Even simpler testcase: == void foo() { int i; for ( i=0; i<1; i++ ) ; for ( i=0; i<1; i++ ) ; for ( i=0; i<1; i++ ) ; for ( i=0; i<1; i++ ) ; for ( i=0; i<1; i++ ) ; #pragma omp parallel ; } == -- reichelt at gcc dot gnu dot org changed: What|Removed |Added CC||reichelt at gcc dot gnu dot ||org Keywords||monitored http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25990
[Bug c++/25973] [4.0/4.1/4.2 Regression] Wrong warning: control reaches end of non-void function
--- Comment #2 from pinskia at gcc dot gnu dot org 2006-01-27 14:52 --- The problem here is that the C++ front-end produces IF_STMT and not COND_EXPR. I am going to mark this as a memory hog as it does cause excessive trees for bigger testcases. -- pinskia at gcc dot gnu dot org changed: What|Removed |Added Keywords||memory-hog http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25973
[Bug libgomp/25984] libgomp installs include/omp_lib.f90 even if Fortran is not built
--- Comment #3 from pinskia at gcc dot gnu dot org 2006-01-27 14:36 --- Confirmed. -- 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 |2006-01-27 14:36:34 date|| http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25984
[Bug bootstrap/25987] insn-automata.c:2433: warning: implicit declaration of function 'hppa_fpstore_bypass_p'
--- Comment #6 from danglin at gcc dot gnu dot org 2006-01-27 14:28 --- 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=25987
[Bug c++/25992] conditional expression and strings literal
--- Comment #3 from pinskia at gcc dot gnu dot org 2006-01-27 13:59 --- I have not looked into the standard yet but if GCC's warning message is correct this is valid but deprecated code which allows for a compiler to accept it or not. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25992
[Bug c++/25874] [gomp branch] ICE in calc_dfs_tree()
--- Comment #3 from dnovillo at gcc dot gnu dot org 2006-01-27 14:26 --- Mine. -- dnovillo at gcc dot gnu dot org changed: What|Removed |Added AssignedTo|unassigned at gcc dot gnu |dnovillo at gcc dot gnu dot |dot org |org Status|UNCONFIRMED |ASSIGNED Ever Confirmed|0 |1 Last reconfirmed|-00-00 00:00:00 |2006-01-27 14:26:53 date|| http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25874
[Bug middle-end/25990] gomp ICE with -fopenmp
--- Comment #5 from pinskia at gcc dot gnu dot org 2006-01-27 14:22 --- Reduced testcase: __strcspn_c2 (__const char *__s, int __reject1, int __reject2) { int m = 1,n = 1,s = 1; int DD,EE,num_s; int m_max = 99; int n_max = 00; for ( n = 1 ; n <= 99 ; n++ ) for ( m = 1 ; m <= 99 ; m++ ) for ( m = 1 ; m <= m_max ; m++) for ( s = 1 ; s <= num_s ; s++) { int liter ; #pragma omp parallel for private(m,liter,s) for ( n = 1 ; n <= n_max ; n++) {} } } -- pinskia at gcc dot gnu dot org changed: What|Removed |Added CC||dnovillo at gcc dot gnu dot ||org Status|UNCONFIRMED |NEW Ever Confirmed|0 |1 Last reconfirmed|-00-00 00:00:00 |2006-01-27 14:22:50 date|| http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25990