[Bug c++/25992] New: condition expression and strings literal
void foo( char* ); int main() { foo( 0 ? "a" : "b" ); // } The type of expression (0 ? "a" : "b") is const char[2] but it cannot be transformed to char*, however it works. Why? -- Summary: condition expression and strings literal Product: gcc Version: 3.4.5 Status: UNCONFIRMED Severity: normal Priority: P3 Component: c++ AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: anton dot kirillov at rd-software dot com http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25992
[Bug fortran/25669] LBOUND (array), as actual arg,causes fatal error.
--- Comment #6 from paul dot richard dot thomas at cea dot fr 2006-01-27 11:04 --- (In reply to comment #5) > Confirmed (for now, unless you feel this is an exact dup of bug 18003). I think that it might well be a duplicate but cannot be sure. Paul -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25669
[Bug middle-end/20297] #pragma GCC visibility isn't properly handled for builtin functions
--- Comment #13 from bero at arklinux dot org 2006-01-27 12:24 --- Still seeing this problem w/ current 4.1 branch -- bero at arklinux dot org changed: What|Removed |Added CC||bero at arklinux dot org http://gcc.gnu.org/bugzilla/show_bug.cgi?id=20297
[Bug c++/25992] conditional expression and strings literal
--- Comment #1 from pinskia at gcc dot gnu dot org 2006-01-27 12:39 --- earth:~>g++ t.cc -pedantic -Wwrite-strings t.cc: In function int main(): t.cc:5: warning: deprecated conversion from string constant to char*' -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25992
[Bug c/25993] New: -std= produces incorrect preprocessor output for .S
Specifying -std=c99 does not define __ASSEMBLER__ for assembler with preprocessor inputfile (.S): $ cat x.S #ifndef __ASSEMBLER__ extern int func(void); #else .global func .type func,%function .align 4 func: ret .size func,.-func #endif $ gcc -c x.S -o x.o $ gcc -c x.S -o x.o -std=c99 x.S: Assembler messages: x.S:2: Error: no such instruction: `extern int func(void)' $ gcc -std=c99 -x assembler-with-cpp -c x.S -o x.o x.S: Assembler messages: x.S:2: Error: no such instruction: `extern int func(void)' $ I'd expect that __ASSEMBLER__ is defined even when any -std= was given. -- Summary: -std= produces incorrect preprocessor output for .S Product: gcc Version: 4.1.0 Status: UNCONFIRMED Severity: major Priority: P3 Component: c AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: aldot at gcc dot gnu dot org GCC build triplet: i686-linux-gnu GCC host triplet: i686-linux-gnu GCC target triplet: i686-linux-gnu http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25993
[Bug middle-end/25989] gomp ICE with -O2 and schedule(guided)
--- Comment #2 from pinskia at gcc dot gnu dot org 2006-01-27 12:50 --- Confirmed, This is obvious invalid gimple: D.1940 = __builtin_GOMP_loop_guided_next (&.istart0.2, &.iend0.3); if (D.1940) goto ; else goto ; :; return; :; ii = (int) .istart0.2; D.1938 = (int) .iend0.3; -- pinskia at gcc dot gnu dot org changed: What|Removed |Added Status|UNCONFIRMED |NEW Component|c |middle-end Ever Confirmed|0 |1 Keywords||openmp Last reconfirmed|-00-00 00:00:00 |2006-01-27 12:50:51 date|| http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25989
[Bug c++/25994] New: Using declarations and base function overloading
Dear all, I would like to post a bug report for the GNU C/C++ compiler 3.3-e500. We use the compiler to generate code for a PowerPC processor. Used invokation line for the GNU C++ compiler: ccppc -c -x c++ -ansi -Wall -Werror -mcpu=8540 -fverbose-asm -mbig -fmerge-templates -mmultiple -mno-string -mstrict-align -O3 -fno-exceptions -fno-rtti -fno-builtin-printf -I -D X.CPP -oX.O // file X.CPP struct B1 { void f (char); void f (double); }; struct B2 { void f (int); void f (double); // <--- line 10 }; struct D : public B1, public B2 { using B1::f; using B2::f; void g () { f ('a'); // should call B1::f(char) f (33);// should call B2::f(int) } }; The compiler gives the following error message: X.CPP:10: error: `void B2::f(double)' and `void B1::f(double)' cannot be overloaded I think this is not standard conforming. See 7.3.3/12: "[ Note: two using declarations may introduce functions with the same name and the same parameter types. If, for a call to an unqualified function name, function overload resolution selects the functions introduced by such using declarations, the function call is illformed. ]" Kind regards W. Roehrl -- Summary: Using declarations and base function overloading Product: gcc Version: 3.3 Status: UNCONFIRMED Severity: normal Priority: P3 Component: c++ AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: wolfgang dot roehrl at gi-de dot com GCC build triplet: sparc-sun-solaris2.5.1 GCC host triplet: i386-pc-mingw32 GCC target triplet: powerpc-wrs-vxworks http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25994
[Bug c++/25994] Using declarations and base function overloading
--- Comment #1 from pinskia at gcc dot gnu dot org 2006-01-27 12:53 --- In 4.0, I get a different error message: t.cc:16: error: using declaration using B2::f conflicts with a previous using declaration -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25994
[Bug c++/25994] Using declarations and base function overloading
--- Comment #2 from pinskia at gcc dot gnu dot org 2006-01-27 12:55 --- Hmm, This might be because we still have some ARM (pre-standard) based using semantics implemented and not the standard C++ ones. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25994
[Bug middle-end/25990] gomp ICE with -fopenmp and -O2
--- Comment #2 from pinskia at gcc dot gnu dot org 2006-01-27 12:58 --- This is a GC failure: #0 ggc_set_mark (p=0xafafafafafafafaf) at /home/pinskia/src/checkin/trunk/gcc/ggc-page.c:588 #1 0x00620268 in gt_ggc_mx_basic_block_def (x_p=Variable "x_p" is not available. ) at gtype-desc.c:462 #2 0x0062060f in gt_ggc_mx_VEC_basic_block_gc (x_p=Variable "x_p" is not available. ) at gtype-desc.c:193 #3 0x00620673 in gt_ggc_mx_control_flow_graph (x_p=Variable "x_p" is not available. ) at gtype-desc.c:624 #4 0x0062072f in gt_ggc_mx_function (x_p=Variable "x_p" is not available. ) at gtype-desc.c:639 #5 0x00409622 in gt_ggc_mx_lang_tree_node (x_p=Variable "x_p" is not available. ) at gt-c-decl.h:315 #6 0x00619df7 in gt_ggc_mx_cgraph_node (x_p=Variable "x_p" is not available. ) at gtype-desc.c:166 #7 0x00619f16 in gt_ggc_m_P11cgraph_node4htab (x_p=Variable "x_p" is not available. ) at gtype-desc.c:1694 -- pinskia at gcc dot gnu dot org changed: What|Removed |Added Component|c |middle-end http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25990
[Bug c++/25995] New: switch/case does not detect invalid enum values if default-case is used
The following code is compiled without warnings, in spite of 4711 not being defined by enum. If the default-case will be omitted, the expected warning appears. int main(int argc, char** argv) { enum Enum { a }; Enum test = a; switch(test) { case 4711: break; default: break; } return 0; } -- Summary: switch/case does not detect invalid enum values if default-case is used Product: gcc Version: 4.0.1 Status: UNCONFIRMED Severity: enhancement Priority: P3 Component: c++ AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: sven dot bornemann at materna dot de http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25995
[Bug c++/25992] conditional expression and strings literal
--- Comment #2 from anton dot kirillov at rd-software dot com 2006-01-27 13:12 --- (In reply to comment #1) > earth:~>g++ t.cc -pedantic -Wwrite-strings > t.cc: In function int main(): > t.cc:5: warning: deprecated conversion from string constant to char*' > Conversion from string constant to char*' it's legacy from C, but GCC should not perceive it as const char*, because the type of expression is const char[]! I think GCC have defined it as a compile-time constant, but it's infeasible solution. In other situation it behaves correctly: void foo( char* ); int main() { bool flag = false; foo( flag ? "a" : "b" ); // error ( cannot convert from const char* to char* ) } -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25992
[Bug c++/25994] Using declarations and base function overloading
--- Comment #3 from rguenth at gcc dot gnu dot org 2006-01-27 13:40 --- Confirmed. -- rguenth at gcc dot gnu dot org changed: What|Removed |Added Status|UNCONFIRMED |NEW Ever Confirmed|0 |1 GCC build triplet|sparc-sun-solaris2.5.1 | GCC host triplet|i386-pc-mingw32 | GCC target triplet|powerpc-wrs-vxworks | Keywords||rejects-valid Known to fail||3.3.6 3.4.4 4.2.0 Last reconfirmed|-00-00 00:00:00 |2006-01-27 13:40:58 date|| http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25994
[Bug c++/25983] [gomp] transient ICE, c++
--- Comment #2 from tbptbp at gmail dot com 2006-01-27 13:51 --- Woops, that ICE wasn't in trunk but the gomp branch. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25983
[Bug c++/25995] switch/case does not detect invalid enum values if default-case is used
--- Comment #1 from pinskia at gcc dot gnu dot org 2006-01-27 13:57 --- Why do you think we should warn here? The enum is promoted to an int by the C/C++ standard for switch. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25995
[Bug c/25995] switch/case does not detect invalid enum values if default-case is used
--- Comment #2 from pinskia at gcc dot gnu dot org 2006-01-27 14:03 --- Never mind, I see what you mean now, I was too tired when I first read this bug. Confirmed. the default label is causing many things to be ignored. -- pinskia at gcc dot gnu dot org changed: What|Removed |Added Status|UNCONFIRMED |NEW Component|c++ |c Ever Confirmed|0 |1 Keywords||diagnostic Known to fail||3.2.3 3.3.3 3.4.0 4.0.0 ||4.1.0 Last reconfirmed|-00-00 00:00:00 |2006-01-27 14:03:27 date|| http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25995
[Bug middle-end/25990] gomp ICE with -fopenmp
--- Comment #3 from pinskia at gcc dot gnu dot org 2006-01-27 14:09 --- You can reproduce this with -std=c99 -fopenmp --param ggc-min-expand=0 --param ggc-min-heapsize=0 -- pinskia at gcc dot gnu dot org changed: What|Removed |Added Summary|gomp ICE with -fopenmp and -|gomp ICE with -fopenmp |O2 | http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25990
[Bug middle-end/25990] gomp ICE with -fopenmp
--- Comment #4 from pinskia at gcc dot gnu dot org 2006-01-27 14:11 --- Reducing. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25990
[Bug c++/25992] conditional expression and strings literal
--- Comment #4 from anton dot kirillov at rd-software dot com 2006-01-27 14:20 --- (In reply to comment #3) > 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. > deprecated this converiont: void foo( char* ) { } int main() { foo( "lalala" ); } i.e. convresion from strings literal to char*, but the result of expression (0 ? "a" : "b") IS NOT STRING LITERAL!!! IT'S CONST CHAR[2]!!! ( See 5.16 ) -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25992
[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
[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 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 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 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 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 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++/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 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 #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++/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 #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/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/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 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 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 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 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] 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 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 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 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 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 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] 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 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 #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 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 #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 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/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/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 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 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 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 #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 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 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 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/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 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 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 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++/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 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 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 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/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/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/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 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/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 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/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/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/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/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/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 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/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 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/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/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/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/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/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/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/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 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/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
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 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
[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 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 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/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/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/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/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