From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 14621 invoked by alias); 1 Dec 2014 17:24:32 -0000 Mailing-List: contact gcc-bugs-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Id: List-Archive: List-Post: List-Help: Sender: gcc-bugs-owner@gcc.gnu.org Received: (qmail 13654 invoked by uid 48); 1 Dec 2014 17:24:22 -0000 From: "kargl at gcc dot gnu.org" To: gcc-bugs@gcc.gnu.org Subject: [Bug fortran/64138] gfortran interface issue Date: Mon, 01 Dec 2014 17:24:00 -0000 X-Bugzilla-Reason: CC X-Bugzilla-Type: changed X-Bugzilla-Watch-Reason: None X-Bugzilla-Product: gcc X-Bugzilla-Component: fortran X-Bugzilla-Version: 4.9.3 X-Bugzilla-Keywords: X-Bugzilla-Severity: normal X-Bugzilla-Who: kargl at gcc dot gnu.org X-Bugzilla-Status: UNCONFIRMED X-Bugzilla-Priority: P3 X-Bugzilla-Assigned-To: unassigned at gcc dot gnu.org X-Bugzilla-Target-Milestone: --- X-Bugzilla-Flags: X-Bugzilla-Changed-Fields: cc Message-ID: In-Reply-To: References: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 7bit X-Bugzilla-URL: http://gcc.gnu.org/bugzilla/ Auto-Submitted: auto-generated MIME-Version: 1.0 X-SW-Source: 2014-12/txt/msg00117.txt.bz2 https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64138 kargl at gcc dot gnu.org changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |kargl at gcc dot gnu.org --- Comment #1 from kargl at gcc dot gnu.org --- (In reply to david from comment #0) > Hi, > > I have created a complex number module: > > module complex_number_module > implicit none > > integer, parameter :: loc_real_precision = 8 > > type complex_number > real(kind=loc_real_precision) :: real_part, imag_part > end type complex_number > > interface c_sub > module procedure c_sub_cc, & ! z1 - z2 > c_sub_cr, & ! z1 - num, where num is a > real number > c_sub_rc ! num - z1, where num is a > real number > end interface > > ! -------------------------------------------------------------------------- > type (complex_number) function c_sub_cc (z1, z2) > > type (complex_number), intent(in) :: z1, z2 > > c_sub_cc%real_part = z1%real_part - z2%real_part > c_sub_cc%imag_part = z1%imag_part - z2%imag_part > > end function c_sub_ccj > > ! -------------------------------------------------------------------------- > type (complex_number) function c_sub_cr (z1, num) > > type (complex_number), intent(in) :: z1 > real(kind=loc_real_precision), intent(in) :: num > > c_sub_cr%real_part = z1%real_part - num > c_sub_cr%imag_part = z1%imag_part > > end function c_sub_cr > > ! -------------------------------------------------------------------------- > type (complex_number) function c_sub_rc (num, z1) > > type (complex_number), intent(in) :: z1 > real(kind=loc_real_precision), intent(in) :: num > > c_sub_rc%real_part = num - z1%real_part > c_sub_rc%imag_part = - z1%imag_part > > end function c_sub_rc > > end module complex_number_module > > When I compile with gfortran (version 4.6.4), I got the following error: > > module_twoway_rrtmg_aero_optical_util.F:14.85: > > c_sub_rc ! num - z1, where num is a real number > 1 > > Error: Ambiguous interfaces 'c_sub_rc' and 'c_sub_cr' in generic interface > 'c_sub' at (1) > > I don't see any ambiguity and I don't encounter any problem with other > compilers such pgi and ifort. Please advise. > > Cheers, > David Please attach the exact code you tried to compile. The above is nonsense.