[Bug target/32264] gcc 4.2.0 compiled vanilla kernel 2.4.34.5 crashes when VIA C3 optimized -march=c3
--- Comment #17 from axel at freakout dot de 2007-08-04 10:45 --- Subject: Re: gcc 4.2.0 compiled vanilla kernel 2.4.34.5 crashes when VIA C3 optimized -march=c3 According to pluto at agmk dot net: > > but who's bug is it? > > it's a kernel bug exposed by recent gcc. > i'm still confused? is the kernel on which i build defect - or the sources of the kernel i compile are buggy? lots of questions anyway for me: in with module? in which line? how to patch? shouldn't we pass this to the kernel guys? in which way can i do this most effectively? Axel -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32264
[Bug fortran/31214] User-defined operator using entry leads to ICE
--- Comment #6 from patchapp at dberlin dot org 2007-08-04 11:50 --- Subject: Bug number PR31214 A patch for this bug has been added to the patch tracker. The mailing list url for the patch is http://gcc.gnu.org/ml/gcc-patches/2007-08/msg00239.html -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=31214
[Bug c/32796] [4.3 Regression] internal compiler error: tree check: expected integer_type or enumeral_type or boolean_type or real_type, have pointer_type in int_fits_type_p
--- Comment #6 from pinskia at gcc dot gnu dot org 2007-08-04 11:54 --- Mine. -- 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|NEW |ASSIGNED http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32796
[Bug fortran/32979] Implement vendor-specific ISNAN() intrinsic function
--- Comment #6 from burnus at gcc dot gnu dot org 2007-08-04 11:57 --- Created an attachment (id=14020) --> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=14020&action=view) Patch for invoke.texi > I'd go for implementing isnan as an extension, and only isnan. (until we get > the IEEE module). The following patch does just that: Thanks. The patch looks ok, except that there is no error shows if -std=f2003/f95 is given. I attached a patch for invoke.texi. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32979
[Bug tree-optimization/32772] [4.3 Regression] error: found real variable when subvariables should have appeared
--- Comment #7 from pinskia at gcc dot gnu dot org 2007-08-04 12:06 --- I think this is exactly the same as PR 32032, the inliner not setting has_volatile_ops correctly. -- pinskia at gcc dot gnu dot org changed: What|Removed |Added CC||pinskia at gcc dot gnu dot ||org, hubicka at gcc dot gnu ||dot org BugsThisDependsOn||32032 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32772
[Bug c++/32984] New: add checking for array new & delete
Given the following C++ code class K { public: void f(); void g(); private: int * a; double * b; float * c; unsigned int * d; }; void K :: f() { a = new int; b = new double [ 10]; delete c; delete [] d; } void K :: g() { delete [] a;// error delete b; // error c = new float [ 20];// error d = new unsigned int; // error } Recent snapshot g++ 4.3 20070803 can't find anything wrong with the code. Suggest enhance compiler to track use of plain new/delete and array new/delete and warn where possible to detect an error. Manual memory allocation and de-allocation is enough of a pain in C++ without total silence from the compiler. -- Summary: add checking for array new & delete Product: gcc Version: 4.3.0 Status: UNCONFIRMED Severity: enhancement Priority: P3 Component: c++ AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: dcb314 at hotmail dot com GCC host triplet: x86_64-suse-linux http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32984
Re: [Bug c++/32984] New: add checking for array new & delete
"dcb314 at hotmail dot com" <[EMAIL PROTECTED]> writes: | Given the following C++ code | | class K | { | public: | void f(); | void g(); | | private: | int * a; | double * b; | float * c; | unsigned int * d; | }; | | void K :: f() | { | a = new int; | b = new double [ 10]; | delete c; | delete [] d; | } | | void K :: g() | { | delete [] a;// error | delete b; // error | c = new float [ 20];// error | d = new unsigned int; // error | } | | Recent snapshot g++ 4.3 20070803 can't find anything | wrong with the code. Special, dedicated tools exist for that task. I would suggest you use one of them. The above should not be the business of the *compiler*. -- Gaby
[Bug c++/32984] add checking for array new & delete
--- Comment #1 from gdr at cs dot tamu dot edu 2007-08-04 13:01 --- Subject: Re: New: add checking for array new & delete "dcb314 at hotmail dot com" <[EMAIL PROTECTED]> writes: | Given the following C++ code | | class K | { | public: | void f(); | void g(); | | private: | int * a; | double * b; | float * c; | unsigned int * d; | }; | | void K :: f() | { | a = new int; | b = new double [ 10]; | delete c; | delete [] d; | } | | void K :: g() | { | delete [] a;// error | delete b; // error | c = new float [ 20];// error | d = new unsigned int; // error | } | | Recent snapshot g++ 4.3 20070803 can't find anything | wrong with the code. Special, dedicated tools exist for that task. I would suggest you use one of them. The above should not be the business of the *compiler*. -- Gaby -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32984
[Bug fortran/32985] New: Derived type variables need SEQUENCE attribute to be in a COMMON
"C589 (R558) If a common-block-object is of a derived type, it shall be a sequence type (4.5.1) or a type with the BIND attribute and it shall have no default initialization." A default initializer is also accepted. Testcase based on the invalid gfortran.dg/namelist_14.f90: !{ dg-do compile } module global type :: mt integer:: ii(4) end type mt end module global program namelist_14 use global common /myc/ cdt type(mt) :: cdt end program namelist_14 ! { dg-final { cleanup-modules "global" } } -- Summary: Derived type variables need SEQUENCE attribute to be in a COMMON Product: gcc Version: 4.3.0 Status: UNCONFIRMED Keywords: accepts-invalid Severity: normal Priority: P3 Component: fortran AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: burnus at gcc dot gnu dot org http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32985
[Bug fortran/32986] New: Improve diagnostic message for COMMON with automatic object
The following is invalid, but the error message does not help much: function a(n) real :: x(n) common /c/ x end function Error: Variable 'n' at (1) in this context must be constant Sunf95: real :: x(n) ^ ERROR: "X" is a common-block-object, therefore it must not be declared as an explicit-shape array with nonconstant bounds. ifort: fortcom: Error: aff.f90, line 2: A COMMON block data object must not be an automatic object. [X] -- Summary: Improve diagnostic message for COMMON with automatic object Product: gcc Version: 4.3.0 Status: UNCONFIRMED Keywords: diagnostic Severity: enhancement Priority: P3 Component: fortran AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: burnus at gcc dot gnu dot org http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32986
[Bug target/30315] optimize unsigned-add overflow test on x86 to use cpu flags from addl
--- Comment #9 from patchapp at dberlin dot org 2007-08-04 13:10 --- Subject: Bug number PR target/30315 A patch for this bug has been added to the patch tracker. The mailing list url for the patch is http://gcc.gnu.org/ml/gcc-patches/2007-08/msg00242.html -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=30315
[Bug fortran/32985] COMMON checking: TYPE with(out) SEQUENCE/bind(C), ALLOCATABLE
--- Comment #1 from burnus at gcc dot gnu dot org 2007-08-04 13:17 --- Interestingly, the following gives an error: type a integer :: i end type a type(a) :: t common /c/ t end Related, the following is accepted but invalid (for different reasons): "C588 (R558) A common-block-object shall not be a dummy argument, an allocatable variable, a derived-type object with an ultimate component that is allocatable, an automatic object, a function name, an entry name, a variable with the BIND attribute, or a result name." type a sequence integer,allocatable :: i(:) end type a type(a) :: t common /c/ t end NAG f95 writes: T has an allocatable component - cannot occur in COMMON ifort: Error: Variables containing ultimate allocatable array components cannot appear in COMMON or EQUIVALENCE statements. [T] openf95/sunf95: "T" is of a derived type that has an ultimate component that is allocatable, therefore it must not be a named constant or a variable in common. -- burnus at gcc dot gnu dot org changed: What|Removed |Added Keywords||rejects-valid Summary|Derived type variables need |COMMON checking: TYPE |SEQUENCE attribute to be in |with(out) SEQUENCE/bind(C), |a COMMON|ALLOCATABLE http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32985
[Bug fortran/32985] COMMON checking: TYPE with(out) SEQUENCE/bind(C), ALLOCATABLE
--- Comment #2 from burnus at gcc dot gnu dot org 2007-08-04 13:18 --- And the following valid program is rejected: use iso_c_binding implicit none type, bind(C):: a integer(c_int) :: i end type a type(a) :: t common /c/ t end -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32985
[Bug fortran/32986] Improve diagnostic message for COMMON with automatic object
--- Comment #1 from burnus at gcc dot gnu dot org 2007-08-04 13:36 --- "C588 (R558) A common-block-object shall not be a dummy argument, an allocatable variable, a derived-type object with an ultimate component that is allocatable, an automatic object, a function name, an entry name, a variable with the BIND attribute, or a result name." -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32986
[Bug fortran/32987] New: GFortran FORMAT statement error
GFortarn has runtime error when FORMAT has TAB char between parameters (see testcase) 10 format ('Hello ','bug!') ^^^ > ./a.out At line 2 of file format_with_tab.f Fortran runtime error: Unexpected element in format ('Hello ', 'bug!') ^ This bug is reproduced in 4.1.2 -- Summary: GFortran FORMAT statement error Product: gcc Version: 4.1.2 Status: UNCONFIRMED Severity: normal Priority: P3 Component: fortran AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: satyaakam at yahoo dot co dot in http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32987
[Bug fortran/32987] GFortran FORMAT statement error
--- Comment #1 from satyaakam at yahoo dot co dot in 2007-08-04 13:56 --- Created an attachment (id=14021) --> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=14021&action=view) testcase -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32987
[Bug target/29493] -masm=intel - does not emit right asm code
--- Comment #3 from rask at sygehus dot dk 2007-08-04 15:37 --- This appears to intentional. On systems without a prefix on labels, registers are always prefixed with %. This is so that you can have global variables named .e.g. edx. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29493
[Bug fortran/32987] GFortran FORMAT statement error
--- Comment #2 from kargl at gcc dot gnu dot org 2007-08-04 15:56 --- Fix your code. A tab is not a legal substitution for a space character. -- kargl at gcc dot gnu dot org changed: What|Removed |Added Status|UNCONFIRMED |RESOLVED Resolution||FIXED http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32987
[Bug c/32988] New: [4.3.0 Regression] ICE in build2_stat, at tree.c:3081
gcc-4.3.0 Failing gcc: warning: -pipe ignored because -save-temps specified Using built-in specs. Target: powerpc-unknown-linux-gnu Configured with: ../gcc-4.3.0/configure --prefix=/usr --infodir=/usr/share/info --mandir=/usr/share/man --host=powerpc-unknown-linux-gnu --build=powerpc-unknown-linux-gnu --enable-__cxa_atexit --enable-threads=posix --enable-shared --enable-clocale=gnu --enable-bootstrap --enable-languages=c,c++,fortran --disable-altivec --disable-libssp --disable-decimal-float --disable-libmudflap --disable-nls --disable-werror --disable-multilib --with-ibmlongdouble --with-cpu=G4 --enable-clocale=gnu --with-system-zlib Thread model: posix gcc version 4.3.0 20070804 (experimental) /usr/libexec/gcc/powerpc-unknown-linux-gnu/4.3.0/cc1 -E -quiet -nostdinc -v -Iinclude -Iarch/powerpc -Iarch/powerpc/include -Iarch/powerpc -D__unix__ -D__gnu_linux__ -D__linux__ -Dunix -D__unix -Dlinux -D__linux -Asystem=linux -Asystem=unix -Asystem=posix -D__KERNEL__ -DKBUILD_STR(s)=#s -DKBUILD_BASENAME=KBUILD_STR(page_alloc) -DKBUILD_MODNAME=KBUILD_STR(page_alloc) -isystem /usr/lib/gcc/powerpc-unknown-linux-gnu/4.3.0/include -include include/linux/autoconf.h -MD mm/.page_alloc.o.d mm/page_alloc.c -m32 -msoft-float -mmultiple -mno-altivec -mno-string -mcpu=powerpc -Wall -Wundef -Wstrict-prototypes -Wno-trigraphs -Werror-implicit-function-declaration -Wdeclaration-after-statement -Wno-pointer-sign -fno-strict-aliasing -fno-common -ffixed-r2 -funit-at-a-time -fomit-frame-pointer -fno-stack-protector -O2 -fpch-preprocess -o page_alloc.i ignoring duplicate directory "arch/powerpc" #include "..." search starts here: #include <...> search starts here: include arch/powerpc arch/powerpc/include /usr/include/libffi /usr/lib/gcc/powerpc-unknown-linux-gnu/4.3.0/include End of search list. /usr/libexec/gcc/powerpc-unknown-linux-gnu/4.3.0/cc1 -fpreprocessed page_alloc.i -quiet -dumpbase page_alloc.c -m32 -msoft-float -mmultiple -mno-altivec -mno-string -mcpu=powerpc -auxbase-strip mm/page_alloc.o -O2 -Wall -Wundef -Wstrict-prototypes -Wno-trigraphs -Werror-implicit-function-declaration -Wdeclaration-after-statement -Wno-pointer-sign -version -fno-strict-aliasing -fno-common -ffixed-r2 -funit-at-a-time -fomit-frame-pointer -fno-stack-protector -o page_alloc.s GNU C version 4.3.0 20070804 (experimental) (powerpc-unknown-linux-gnu) compiled by GNU C version 4.3.0 20070804 (experimental), GMP version 4.2.1, MPFR version 2.2.1-p5. GGC heuristics: --param ggc-min-expand=30 --param ggc-min-heapsize=4096 Compiler executable checksum: 4442e4b24a55c66f044ee5a4a200c543 mm/page_alloc.c: In function 'free_area_init_nodes': mm/page_alloc.c:3387: internal compiler error: in build2_stat, at tree.c:3081 Please submit a full bug report, with preprocessed source if appropriate. See http://gcc.gnu.org/bugs.html> for instructions. gcc-4.2.2 OK gcc: warning: -pipe ignored because -save-temps specified Using built-in specs. Target: powerpc-unknown-linux-gnu Configured with: ../gcc-4.2.2/configure --prefix=/usr --infodir=/usr/share/info --mandir=/usr/share/man --host=powerpc-unknown-linux-gnu --build=powerpc-unknown-linux-gnu --enable-__cxa_atexit --enable-threads=posix --enable-altivec --enable-shared --enable-ffi --enable-clocale=gnu --enable-bootstrap --enable-libgcc-math --enable-languages=c,c++ --disable-libunwind-exceptions --disable-nls --disable-werror --disable-multilib --with-ibmlongdouble --with-cpu=7450 --enable-clocale=gnu --with-system-zlib Thread model: posix gcc version 4.2.2 20070731 (prerelease) /usr/libexec/gcc/powerpc-unknown-linux-gnu/4.2.2/cc1 -E -quiet -nostdinc -v -Iinclude -Iarch/powerpc -Iarch/powerpc/include -Iarch/powerpc -D__unix__ -D__gnu_linux__ -D__linux__ -Dunix -D__unix -Dlinux -D__linux -Asystem=linux -Asystem=unix -Asystem=posix -D__KERNEL__ -DKBUILD_STR(s)=#s -DKBUILD_BASENAME=KBUILD_STR(page_alloc) -DKBUILD_MODNAME=KBUILD_STR(page_alloc) -isystem /usr/lib/gcc/powerpc-unknown-linux-gnu/4.3.0/include -include include/linux/autoconf.h -MD mm/.page_alloc.o.d mm/page_alloc.c -m32 -msoft-float -mmultiple -mno-altivec -mno-string -mcpu=powerpc -Wall -Wundef -Wstrict-prototypes -Wno-trigraphs -Werror-implicit-function-declaration -Wdeclaration-after-statement -Wno-pointer-sign -fno-strict-aliasing -fno-common -ffixed-r2 -funit-at-a-time -fomit-frame-pointer -fno-stack-protector -O2 -fpch-preprocess -o page_alloc.i ignoring duplicate directory "arch/powerpc" #include "..." search starts here: #include <...> search starts here: include arch/powerpc arch/powerpc/include /usr/include/libffi /usr/lib/gcc/powerpc-unknown-linux-gnu/4.3.0/include End of search list. /usr/libexec/gcc/powerpc-unknown-linux-gnu/4.2.2/cc1 -fpreprocessed page_alloc.i -quiet -dumpbase page_alloc.c -m32 -msoft-float -mmultiple -mno-altivec -mno-string -mcpu=powerpc -auxbase-strip mm/page_alloc.o -O2 -Wall -Wundef -Wstrict-prototypes -Wno-trigraphs -Werror
[Bug c/32988] [4.3.0 Regression] ICE in build2_stat, at tree.c:3081
--- Comment #1 from michelin60 at gmail dot com 2007-08-04 16:09 --- Created an attachment (id=14022) --> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=14022&action=view) failing *.i -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32988
[Bug ada/31174] [4.2 regression] ACATS C380004 fails
--- Comment #6 from jdgressett at amli-denton dot com 2007-08-04 16:10 --- Ada compiler in gcc-4.2.1 still fails C380004. Built on Fedora 7. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=31174
[Bug c/32988] [4.3.0 Regression] ICE in build2_stat, at tree.c:3081
--- Comment #2 from michelin60 at gmail dot com 2007-08-04 16:10 --- Created an attachment (id=14023) --> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=14023&action=view) OK *.I -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32988
[Bug c/32988] [4.3.0 Regression] ICE in build2_stat, at tree.c:3081
--- Comment #3 from michelin60 at gmail dot com 2007-08-04 16:11 --- Created an attachment (id=14024) --> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=14024&action=view) Failing *.s -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32988
[Bug fortran/32987] GFortran FORMAT statement error
--- Comment #3 from kargl at gcc dot gnu dot org 2007-08-04 16:26 --- Here's a patch that permits gfortran to accept your INVALID code. Your code should be fixed, and I will activity oppose application of this patch by others. Index: format.c === --- format.c(revision 127165) +++ format.c(working copy) @@ -92,7 +92,7 @@ fmt->format_string_len--; c = toupper (*fmt->format_string++); } - while (c == ' ' && !literal); + while ((c == ' ' || c == '\t') && !literal); return c; } -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32987
[Bug fortran/32968] selected_(int|real)_kind fail with -fdefault-integer-8
--- Comment #13 from kargl at gcc dot gnu dot org 2007-08-04 16:49 --- Subject: Bug 32968 Author: kargl Date: Sat Aug 4 16:48:50 2007 New Revision: 127205 URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=127205 Log: 2008-08-04 Steven G. Kargl <[EMAIL PROTECTED]> PR fortran/32968 * gfortran.dg/selected_kind_1.f90: New test. 2008-08-04 Steven G. Kargl <[EMAIL PROTECTED]> PR fortran/32969 * iresolve.c (gfc_resolve_rrspacing): Convert argument(s) to expected KIND. (gfc_resolve_scale): Ditto. (gfc_resolve_set_exponent): Ditto. (gfc_resolve_spacing): Ditto. PR fortran/32968 * trans-intrinsic.c (gfc_conv_intrinsic_si_kind, gfc_conv_intrinsic_sr_kind): Convert the argument(s) to the expected KIND, and fold the result to the expected KIND. Added: trunk/gcc/testsuite/gfortran.dg/selected_kind_1.f90 Modified: trunk/gcc/fortran/ChangeLog trunk/gcc/fortran/iresolve.c trunk/gcc/fortran/trans-intrinsic.c trunk/gcc/testsuite/ChangeLog -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32968
[Bug fortran/32969] (rr)?spacing give wrong answers with -fdefault-integer-8
--- Comment #2 from kargl at gcc dot gnu dot org 2007-08-04 16:49 --- Subject: Bug 32969 Author: kargl Date: Sat Aug 4 16:48:50 2007 New Revision: 127205 URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=127205 Log: 2008-08-04 Steven G. Kargl <[EMAIL PROTECTED]> PR fortran/32968 * gfortran.dg/selected_kind_1.f90: New test. 2008-08-04 Steven G. Kargl <[EMAIL PROTECTED]> PR fortran/32969 * iresolve.c (gfc_resolve_rrspacing): Convert argument(s) to expected KIND. (gfc_resolve_scale): Ditto. (gfc_resolve_set_exponent): Ditto. (gfc_resolve_spacing): Ditto. PR fortran/32968 * trans-intrinsic.c (gfc_conv_intrinsic_si_kind, gfc_conv_intrinsic_sr_kind): Convert the argument(s) to the expected KIND, and fold the result to the expected KIND. Added: trunk/gcc/testsuite/gfortran.dg/selected_kind_1.f90 Modified: trunk/gcc/fortran/ChangeLog trunk/gcc/fortran/iresolve.c trunk/gcc/fortran/trans-intrinsic.c trunk/gcc/testsuite/ChangeLog -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32969
[Bug fortran/32969] (rr)?spacing give wrong answers with -fdefault-integer-8
--- Comment #3 from kargl at gcc dot gnu dot org 2007-08-04 16:53 --- Should be fixed on trunk. No back port. -- kargl at gcc dot gnu dot org changed: What|Removed |Added Status|ASSIGNED|RESOLVED Resolution||FIXED http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32969
[Bug fortran/32987] TAB in FORMAT: accept extension, warn with -std=f*
--- Comment #4 from burnus at gcc dot gnu dot org 2007-08-04 16:53 --- I just checked: ifort, sunf95, openf95, g95 and even the picky NAG f95 accept it. None of the compilers gives a warning except of "ifort" when passing the option "-stand 95": fortcom: Warning: format_with_tab.f, line 3: Extension to FORTRAN-90: tab formatting 10 format ('Hello ', 'bug!') ^ I therefore suggest: - Silently accept the tab in libgfortran - Give a warning or an error with -std=f95/f2003. Index: gcc/fortran/io.c === --- gcc/fortran/io.c(revision 127204) +++ gcc/fortran/io.c(working copy) @@ -183,0 +184,2 @@ next_char_not_space (void) + if (c == '\t' && !(gfc_option.allow_std & GFC_STD_GNU)) + gfc_warning ("Extension: Tab character in format at %C"); Index: libgfortran/io/format.c === --- libgfortran/io/format.c (revision 127204) +++ libgfortran/io/format.c (working copy) @@ -95 +95 @@ next_char (format_data *fmt, int literal - while (c == ' ' && !literal); + while ((c == ' ' || c == '\t') && !literal); -- burnus at gcc dot gnu dot org changed: What|Removed |Added CC||burnus at gcc dot gnu dot ||org Status|RESOLVED|UNCONFIRMED Keywords||diagnostic Resolution|FIXED | Summary|GFortran FORMAT statement |TAB in FORMAT: accept |error |extension, warn with -std=f* http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32987
[Bug fortran/32968] selected_(int|real)_kind fail with -fdefault-integer-8
--- Comment #14 from kargl at gcc dot gnu dot org 2007-08-04 16:53 --- Should be fixed on trunk. No back port. -- kargl at gcc dot gnu dot org changed: What|Removed |Added Status|ASSIGNED|RESOLVED Resolution||FIXED Target Milestone|--- |4.3.0 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32968
[Bug fortran/32969] (rr)?spacing give wrong answers with -fdefault-integer-8
-- kargl at gcc dot gnu dot org changed: What|Removed |Added Target Milestone|--- |4.3.0 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32969
[Bug fortran/32987] TAB in FORMAT: accept extension, warn with -std=f*
--- Comment #5 from sgk at troutmask dot apl dot washington dot edu 2007-08-04 17:00 --- Subject: Re: TAB in FORMAT: accept extension, warn with -std=f* On Sat, Aug 04, 2007 at 04:53:33PM -, burnus at gcc dot gnu dot org wrote: > > > I therefore suggest: > - Silently accept the tab in libgfortran I disagree on this point. gfortran has been around for a long time now and this is the first report of the tab-in-format runtime error. gfortran should complain loudly that the code is invalid. > - Give a warning or an error with -std=f95/f2003. What about -std=f66, f77, or f90? Yes, I know gfortran doesn't have these levels, but the tab violates all fortran standards. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32987
[Bug fortran/32987] TAB in FORMAT: accept extension, warn with -std=f*
--- Comment #6 from burnus at gcc dot gnu dot org 2007-08-04 17:37 --- > > - Silently accept the tab in libgfortran > I disagree on this point. Discussion -> [EMAIL PROTECTED] list; starts here: http://gcc.gnu.org/ml/fortran/2007-08/msg00097.html > > - Give a warning or an error with -std=f95/f2003. > What about -std=f66, f77, or f90? I meant: Give a warning for all -std=* except of -std=gnu/legacy; as gfortran has no fIV, f66, f77, f90, f2008, F (yet?) the two statements are the same. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32987
[Bug fortran/32987] TAB in FORMAT: accept extension, warn with -std=f*
--- Comment #7 from patchapp at dberlin dot org 2007-08-04 17:40 --- Subject: Bug number PR32987 A patch for this bug has been added to the patch tracker. The mailing list url for the patch is http://gcc.gnu.org/ml/gcc-patches/2007-08/msg00246.html -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32987
[Bug fortran/32980] Vendor extension: Intrinsic functions (D)GAMMA, LGAMMA (ALGAMA/DLGAMA)
--- Comment #1 from fxcoudert at gcc dot gnu dot org 2007-08-04 17:53 --- Aren't they included in the current F2008, by any chance? -- fxcoudert at gcc dot gnu dot org changed: What|Removed |Added CC||fxcoudert at gcc dot gnu dot ||org Status|UNCONFIRMED |NEW Ever Confirmed|0 |1 Last reconfirmed|-00-00 00:00:00 |2007-08-04 17:53:03 date|| http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32980
[Bug libfortran/32770] [Meta-bug] -fdefault-integer-8 issues
--- Comment #27 from tkoenig at gcc dot gnu dot org 2007-08-04 18:21 --- Subject: Bug 32770 Author: tkoenig Date: Sat Aug 4 18:20:54 2007 New Revision: 127210 URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=127210 Log: 2007-08-04 Thomas Koenig <[EMAIL PROTECTED]> PR fortran/32770 * gfortran.dg/direct_io_2.f90: Implicitly declare integer variables as kind=4 so they don't overflow the record length. Modified: trunk/gcc/testsuite/ChangeLog trunk/gcc/testsuite/gfortran.dg/direct_io_2.f90 -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32770
[Bug fortran/31189] Support backtracing for non-library errors
--- Comment #4 from fxcoudert at gcc dot gnu dot org 2007-08-04 18:49 --- Thanks Tobias for the patch, here's an updated version that I intend to submit for review... Index: runtime/backtrace.c === --- runtime/backtrace.c (revision 127184) +++ runtime/backtrace.c (working copy) @@ -223,7 +223,8 @@ show_backtrace (void) /* Try to recognize the internal libgfortran functions. */ if (strncasecmp (func, "*_gfortran", 10) == 0 || strncasecmp (func, "_gfortran", 9) == 0 - || strcmp (func, "main") == 0 || strcmp (func, "_start") == 0) + || strcmp (func, "main") == 0 || strcmp (func, "_start") == 0 + || strcmp (func, "_gfortrani_handler") == 0) continue; if (local_strcasestr (str[i], "libgfortran.so") != NULL Index: libgfortran.h === --- libgfortran.h (revision 127184) +++ libgfortran.h (working copy) @@ -373,6 +373,9 @@ options_t; extern options_t options; internal_proto(options); +extern void handler (int); +internal_proto(handler); + /* Compile-time options that will influence the library. */ Index: runtime/compile_options.c === --- runtime/compile_options.c (revision 127184) +++ runtime/compile_options.c (working copy) @@ -31,10 +31,61 @@ Boston, MA 02110-1301, USA. */ #include "libgfortran.h" +#ifdef HAVE_SIGNAL_H +#include +#endif + /* Useful compile-time options will be stored in here. */ compile_options_t compile_options; + +/* A signal handler to allow us to output a backtrace. */ +void +handler (int signum) +{ + const char * name = NULL, * desc = NULL; + + switch (signum) +{ +#if defined(SIGSEGV) + case SIGSEGV: + name = "SIGSEGV"; + desc = "Segmentation fault"; + break; +#endif + +#if defined(SIGBUS) + case SIGBUS: + name = "SIGBUS"; + desc = "Bus error"; + break; +#endif + +#if defined(SIGILL) + case SIGILL: + name = "SIGILL"; + desc = "Illegal instruction"; + break; +#endif + +#if defined(SIGFPE) + case SIGFPE: + name = "SIGFPE"; + desc = "Floating-point exception"; + break; +#endif +} + + if (name) +st_printf ("\nProgram received signal %d (%s): %s.\n", signum, name, desc); + else +st_printf ("\nProgram received signal %d.\n", signum); + + sys_exit (5); +} + + /* Set the usual compile-time options. */ extern void set_options (int , int []); export_proto(set_options); @@ -56,6 +107,31 @@ set_options (int num, int options[]) compile_options.sign_zero = options[5]; if (num >= 7) compile_options.bounds_check = options[6]; + + /* If backtrace is required, we set signal handlers on most common + signals. */ +#if defined(HAVE_SIGNAL_H) && (defined(SIGSEGV) || defined(SIGBUS) \ + || defined(SIGILL) || defined(SIGFPE)) + if (compile_options.backtrace) +{ +#if defined(SIGSEGV) + signal (SIGSEGV, handler); +#endif + +#if defined(SIGBUS) + signal (SIGBUS, handler); +#endif + +#if defined(SIGILL) + signal (SIGILL, handler); +#endif + +#if defined(SIGFPE) + signal (SIGFPE, handler); +#endif +} +#endif + } -- fxcoudert at gcc dot gnu dot org changed: What|Removed |Added AssignedTo|unassigned at gcc dot gnu |fxcoudert at gcc dot gnu dot |dot org |org Status|NEW |ASSIGNED Last reconfirmed|2007-03-17 11:36:17 |2007-08-04 18:49:39 date|| http://gcc.gnu.org/bugzilla/show_bug.cgi?id=31189
[Bug fortran/32980] Vendor extension: Intrinsic functions (D)GAMMA, LGAMMA (ALGAMA/DLGAMA)
--- Comment #2 from burnus at gcc dot gnu dot org 2007-08-04 19:32 --- > Aren't they included in the current F2008, by any chance? Yes and no. The Fortran 2008 draft has the following functions, but they are not necessarily called the same as the typical vendor extensions. http://j3-fortran.org/doc/year/07/07-007r2.pdf ACOSH, ASINH, ATANH Inverse hyperbolic functions [exist in gfortran] BESSEL_J0, _J1, _JN, _Y0, _Y1, _YN Bessel functions [exist as BESJ0 etc.] ERF Error function [exists] ERFC Complementary error function [exists] ERFC_SCALED Exponentially scaled ERFC [not in gfortran] GAMMA Gamma function [not in gfortran ;-)] HYPOT = sqrt(x**2+y**2) [not in gfortran] LOG_GAMMA [not in gfortran ;-)] NORM2 L_2 norm [not in gfortran] No specific names seems to exist for those whereas the compiler extensions have: for GAMMA: DGAMMA and for LGAMMA [F2003: LOG_GAMMA]: ALGAMA, DLGAMA. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32980
[Bug c++/32984] add checking for array new & delete
--- Comment #2 from dcb314 at hotmail dot com 2007-08-04 19:52 --- (In reply to comment #1) > Special, dedicated tools exist for that task. Would you be willing to name three of them ? > The above should not be the business of the *compiler*. Why not ? The compiler can generate a whole bunch of warnings already. Are you suggesting these existing warnings are none of the business of the compiler ? -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32984
[Bug libfortran/32989] New: getarg and -fdefault-integer-8
Compiling the testsuite program: $ gfortran -fdefault-integer-8 getarg_1.f90 getarg_1.f90:6.14: CALL GETARG(I,ARGS) 1 Error: Type of argument 'count' in call to 'getarg' at (1) should be INTEGER(8), not INTEGER(4) getarg_1.f90:12.14: CALL GETARG(I,ARGS) 1 Error: Type of argument 'count' in call to 'getarg' at (1) should be INTEGER(8), not INTEGER(4) getarg_1.f90:15.14: CALL GETARG(I,ARGS) 1 Error: Type of argument 'count' in call to 'getarg' at (1) should be INTEGER(8), not INTEGER(4) getarg_1.f90:19.14: CALL GETARG(I,ARGS) 1 Error: Type of argument 'count' in call to 'getarg' at (1) should be INTEGER(8), not INTEGER(4) getarg_1.f90:22.14: CALL GETARG(I,ARGS) 1 Error: Type of argument 'count' in call to 'getarg' at (1) should be INTEGER(8), not INTEGER(4) A "default" integer really shouldn't result in this :-) -- Summary: getarg and -fdefault-integer-8 Product: gcc Version: 4.3.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: libfortran AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: tkoenig at gcc dot gnu dot org OtherBugsDependingO 32770 nThis: http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32989
[Bug fortran/32962] b = conjg(transpose(a)) is erroneous if b is an allocatable array
--- Comment #9 from pault at gcc dot gnu dot org 2007-08-04 20:13 --- (In reply to comment #4) > Confirmed. > > Paul, I'm putting you on the CC list because you fixed > PR 31994, the original conjg(transpose()) bug. Maybe > you can do something about this one :-) > Nice try but I think that it has nothing to do with the above PR. This looks to be a scalarizer problem to me. I am away until Wednesday - I'll have alook when I get back. Paul -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32962
[Bug libfortran/32770] [Meta-bug] -fdefault-integer-8 issues
--- Comment #28 from tkoenig at gcc dot gnu dot org 2007-08-04 20:14 --- Subject: Bug 32770 Author: tkoenig Date: Sat Aug 4 20:14:26 2007 New Revision: 127212 URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=127212 Log: 2007-08-04 Thomas Koenig <[EMAIL PROTECTED]> PR fortran/32770 * gfortran.dg/streamio_8.f90: Adjust so test case passes for -fdefault-integer-8 and -fdefault-real-8. * gfortran.dg/streamio_10.f90: Likewise. * gfortran.dg/sizeof.f90: Likewise. Modified: trunk/gcc/testsuite/ChangeLog trunk/gcc/testsuite/gfortran.dg/sizeof.f90 trunk/gcc/testsuite/gfortran.dg/streamio_10.f90 trunk/gcc/testsuite/gfortran.dg/streamio_8.f90 -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32770
[Bug fortran/31214] User-defined operator using entry leads to ICE
--- Comment #7 from pault at gcc dot gnu dot org 2007-08-04 20:46 --- Subject: Bug 31214 Author: pault Date: Sat Aug 4 20:46:11 2007 New Revision: 127213 URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=127213 Log: 2007-08-04 Paul Thomas <[EMAIL PROTECTED]> PR fortran/31214 * symbol.c (get_unique_symtree): Moved from module.c. * module.c (get_unique_symtree): Moved to symbol.c. * decl.c (get_proc_name): Transfer the typespec from the local symbol to the module symbol, in the case that an entry is also a module procedure. Ensure the local symbol is cleaned up by pointing to it with a unique symtree. * dump_parse_tree (gfc_show_code_node): Add EXEC_ASSIGN_CALL. 2007-08-04 Paul Thomas <[EMAIL PROTECTED]> PR fortran/31214 * gfortran.dg/entry_13.f90: New test. * gfortran.dg/entry_12.f90: Clean up .mod file. Added: trunk/gcc/testsuite/gfortran.dg/entry_13.f90 Modified: trunk/gcc/fortran/ChangeLog trunk/gcc/fortran/decl.c trunk/gcc/fortran/dump-parse-tree.c trunk/gcc/fortran/gfortran.h trunk/gcc/fortran/module.c trunk/gcc/fortran/symbol.c trunk/gcc/testsuite/ChangeLog trunk/gcc/testsuite/gfortran.dg/entry_12.f90 -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=31214
[Bug fortran/31214] User-defined operator using entry leads to ICE
--- Comment #8 from pault at gcc dot gnu dot org 2007-08-04 20:58 --- Subject: Bug 31214 Author: pault Date: Sat Aug 4 20:58:11 2007 New Revision: 127214 URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=127214 Log: 2007-08-04 Paul Thomas <[EMAIL PROTECTED]> PR fortran/31214 * symbol.c (get_unique_symtree): Moved from module.c. * module.c (get_unique_symtree): Moved to symbol.c. * decl.c (get_proc_name): Transfer the typespec from the local symbol to the module symbol, in the case that an entry is also a module procedure. Ensure the local symbol is cleaned up by pointing to it with a unique symtree. * dump_parse_tree (gfc_show_code_node): Add EXEC_ASSIGN_CALL. 2007-08-04 Paul Thomas <[EMAIL PROTECTED]> PR fortran/31214 * gfortran.dg/entry_13.f90: New test. * gfortran.dg/entry_12.f90: Clean up .mod file. Modified: trunk/gcc/fortran/ChangeLog -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=31214
[Bug fortran/32979] Implement vendor-specific ISNAN() intrinsic function
-- fxcoudert at gcc dot gnu dot org changed: What|Removed |Added URL||http://gcc.gnu.org/ml/gcc- ||patches/2007- ||08/msg00252.html Keywords||patch Target Milestone|--- |4.3.0 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32979
[Bug libgcj/21821] MAXPATHLEN usage in libjava
--- Comment #10 from samuel dot thibault at ens-lyon dot org 2007-08-04 22:02 --- It got fixed in CVS. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=21821
Re: [Bug c++/32984] add checking for array new & delete
"dcb314 at hotmail dot com" <[EMAIL PROTECTED]> writes: | The compiler can generate a whole bunch of warnings | already. Which fall in different mindset that the one you would like. -- Gaby
[Bug c++/32984] add checking for array new & delete
--- Comment #3 from gdr at cs dot tamu dot edu 2007-08-04 22:06 --- Subject: Re: add checking for array new & delete "dcb314 at hotmail dot com" <[EMAIL PROTECTED]> writes: | The compiler can generate a whole bunch of warnings | already. Which fall in different mindset that the one you would like. -- Gaby -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32984
[Bug c++/32984] add checking for array new & delete
--- Comment #4 from gdr at cs dot tamu dot edu 2007-08-04 22:09 --- Subject: Re: add checking for array new & delete "dcb314 at hotmail dot com" <[EMAIL PROTECTED]> writes: | (In reply to comment #1) | > Special, dedicated tools exist for that task. | | Would you be willing to name three of them ? web searchers are your friends. look for "valgrind" and friends. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32984
[Bug fortran/32962] b = conjg(transpose(a)) is erroneous if b is an allocatable array
--- Comment #10 from pault at gcc dot gnu dot org 2007-08-04 22:13 --- The problem occurs whenever the destination array is described by and array descriptor; eg. complex(kind=8) :: a(2,2), b(2,2) call testcase (a, b) contains subroutine testcase (a, b) complex(kind=8) :: a(:,:), b(:,:) a(1,1) = 2 a(2,1) = 3 a(1,2) = 7 a(2,2) = 11 b = conjg(transpose(a)) print *, 'original = ', a print *, 'WRONG conjg(transpose(a)) = ', b end subroutine end program also fails and no allocatable arrays are invoved. Paul -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32962
[Bug libfortran/32989] getarg and -fdefault-integer-8
-- tkoenig at gcc dot gnu dot org changed: What|Removed |Added AssignedTo|unassigned at gcc dot gnu |tkoenig at gcc dot gnu dot |dot org |org Status|UNCONFIRMED |ASSIGNED Ever Confirmed|0 |1 Last reconfirmed|-00-00 00:00:00 |2007-08-04 22:20:49 date|| http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32989
[Bug c++/32990] New: [Regression] gdb has symbol table issues
When debugging code produced by g++-4.3.0-20070716 the debugger regularly outputs the following error message when stopping at breakpoints or examining stack frames: error: warning: (Internal error: pc 0x419e59 in read in psymtab, but not in symtab.) Compiling the same code with g++-4.1.2 and running the same breakpoints results in no problems. I'm using gdb-6.6-debian, if that's any help. Unfortunately I have no idea how to narrow the test case down, and am not allowed to submit my program (it's from work). Some searching on Google indicates that .linkonce functions might be part of the issue (I have tons of those), but other than that I'm at a loss to narrow down the problem. If anyone has ideas I'm happy to try them out and report back. -- Summary: [Regression] gdb has symbol table issues Product: gcc Version: 4.3.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: c++ AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: scovich at gmail dot com GCC target triplet: x86_64-linux-gnu http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32990
[Bug target/32991] New: config/alpha/constraints.md is marked as mime-type
bash-3.2$ svn proplist config/alpha/constraints.md Properties on 'config/alpha/constraints.md': svn:mime-type bash-3.2$ It shouldn't be marked with any property since it is a text file. -- Summary: config/alpha/constraints.md is marked as mime-type Product: gcc Version: 4.3.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: target AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: hjl at lucon dot org http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32991
[Bug c++/32984] add checking for array new & delete
--- Comment #5 from sebor at roguewave dot com 2007-08-05 00:31 --- There are third party tools that track these types of problems. Some of them have started to make their way into compilers. For example, the HP static analysis tool called Code Adviser is integrated into the HP aCC compiler on IPF (see www.hp.com/go/cadvise). -- sebor at roguewave dot com changed: What|Removed |Added CC||sebor at roguewave dot com http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32984
[Bug c++/32992] New: Incorrect code generated for anonymous union
Compiling and running the code below produces the following output: $ g++ -Wall -DT=long -g3 union-bug.C && ./a.out &array= 0x7fff11782ef0 &a= 0x7fff11782f20 B={1,3,5} A={-1719443200,4196007,-1719451616} A and B should contain the same values, but A contains garbage instead because the two members of the union do not reside at the same address. Changing T 'int' produces the expected output: $ g++ -Wall -DT=int -g3 union-bug.C && ./a.out &array= 0x7fff1fbf6370 &a= 0x7fff1fbf6370 B={1,3,5} A={1,3,5} 'char' and 'short' also work correctly; '__m128i' (SSE register) breaks. This bug affects both gcc-4.1.2 and gcc-4.3 // union-bug.C #include struct A { T _a; T _b; T _c; }; struct B { T _array[3]; operator A() { union { T array[3]; A a; }; printf("&array= %p\n&a= %p\n", &array, &a); for(int i=0; i < 3; i++) array[i] = _array[i]; return a; } }; int main() { B b = {{1,3,5}}; A a = b; printf("B={%d,%d,%d}\n", (int) b._array[0], (int) b._array[1], (int) b._array[2]); printf("A={%d,%d,%d}\n", (int) a._a, (int) a._b, (int) a._c); return 0; } -- Summary: Incorrect code generated for anonymous union Product: gcc Version: 4.3.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: c++ AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: scovich at gmail dot com GCC target triplet: x86_64-linux-gnu http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32992
[Bug c++/32993] New: Template type dedution of funtion reference includes default args
I have tested this code on "gcc version 4.3.0 20070202 (experimental)" as well as "gcc version 3.4.4 (cygming special)". f1, f2, d1 and d2 declare functions with the same types but one has default parameters. It appears that the standard requires that all default args should not propagate to the type deduction at all. This is the behaviour in VC++ 2005 and Comeau. int f1( int p = 5 ); int f2( int p ); double d1( double p ); double d2( double p = 1.1 ); template T F( T fp ) { return fp; } #include int main() { std::cout << F( f1 )() << "\n"; // uses default arg std::cout << F( f2 )() << "\n"; // uses default arg of f1 std::cout << F( d1 )() << "\n"; // d1 has no default arg - error std::cout << F( d2 )() << "\n"; // d2 has default arg but bot used here } -- Summary: Template type dedution of funtion reference includes default args Product: gcc Version: 4.3.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: c++ AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: gianni at mariani dot ws GCC build triplet: x86_64-redhat-linux GCC host triplet: x86_64-redhat-linux GCC target triplet: x86_64-redhat-linux http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32993