This is the mail archive of the gcc-bugs@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[Bug fortran/25901] New: [gfortran, 4.2.0 regression] overloaded function is rejected


Current mainline gfortran rejects the code below:

module general_time
implicit none

  type gnsec
    integer :: int
  end type gnsec

  interface operator(+)
    module procedure &
      gn_addsec_int_post, gn_addsec_int_pre
  end interface

contains

  function gn_addsec_int_pre(interval, sec) result(isec)
    integer, intent(in) :: interval
    type(gnsec), intent(in) :: sec
    type(gnsec) :: isec

    isec = gn_addsec_int_post(sec, interval)
  end function gn_addsec_int_pre

  function gn_addsec_int_post(sec, interval) result(seci)
    type(gnsec), intent(in) :: sec
    integer, intent(in) :: interval
    type(gnsec) :: seci

    seci%int = sec%int + interval
  end function gn_addsec_int_post

end module general_time


martin@linux:~/tmp> gfortran -v -c bug2.f90
Using built-in specs.
Target: x86_64-unknown-linux-gnu
Configured with: /home/martin/software/gcc/configure
--with-gmp=/home/martin/software/mygmp --with-mpfr=/home/martin/software/mympfr
--prefix=/home/martin/software/ugcc --enable-languages=c++,fortran
--enable-checking=release
Thread model: posix
gcc version 4.2.0 20060121 (experimental)
 /home/martin/software/ugcc/libexec/gcc/x86_64-unknown-linux-gnu/4.2.0/f951
bug2.f90 -quiet -dumpbase bug2.f90 -mtune=generic -auxbase bug2 -version -o
/tmp/ccpO6EFZ.s
GNU F95 version 4.2.0 20060121 (experimental) (x86_64-unknown-linux-gnu)
        compiled by GNU C version 4.2.0 20060121 (experimental).
GGC heuristics: --param ggc-min-expand=98 --param ggc-min-heapsize=128005
 In file bug2.f90:23

  function gn_addsec_int_post(sec, interval) result(seci)
                            1
 In file bug2.f90:10

      gn_addsec_int_post, gn_addsec_int_pre
                       2
Error: Procedure 'gn_addsec_int_post' at (1) is already defined at (2)


This code was compiled without problems by gfortran a few days ago.


-- 
           Summary: [gfortran, 4.2.0 regression] overloaded function is
                    rejected
           Product: gcc
           Version: 4.2.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: fortran
        AssignedTo: unassigned at gcc dot gnu dot org
        ReportedBy: martin at mpa-garching dot mpg dot de
 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=25901


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]