From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 13797 invoked by alias); 23 May 2008 20:08:25 -0000 Received: (qmail 13648 invoked by uid 48); 23 May 2008 20:07:38 -0000 Date: Fri, 23 May 2008 20:08:00 -0000 Message-ID: <20080523200738.13647.qmail@sourceware.org> X-Bugzilla-Reason: CC References: Subject: [Bug fortran/36316] type mismatch in binary expression caught by verify_gimple In-Reply-To: Reply-To: gcc-bugzilla@gcc.gnu.org To: gcc-bugs@gcc.gnu.org From: "toon at moene dot indiv dot nluug dot nl" 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 X-SW-Source: 2008-05/txt/msg01809.txt.bz2 ------- Comment #3 from toon at moene dot indiv dot nluug dot nl 2008-05-23 20:07 ------- Ugh, sorry, I see I included the wrong source. Here's the correct one: MODULE YOMCAIN IMPLICIT NONE SAVE TYPE distributed_vector REAL, pointer :: local(:) INTEGER :: global_length,local_start,local_end,nchnks END TYPE distributed_vector INTERFACE ASSIGNMENT (=) MODULE PROCEDURE assign_ar_dv END INTERFACE INTERFACE OPERATOR (*) MODULE PROCEDURE multiply_dv_dv END INTERFACE CONTAINS SUBROUTINE assign_ar_dv (handle,pvec) ! copy array to the distributed_vector REAL, INTENT(IN) :: pvec(:) TYPE (distributed_vector), INTENT(INOUT) :: handle handle%local(:) = pvec(:) RETURN END SUBROUTINE assign_ar_dv FUNCTION multiply_dv_dv (handle1,handle2) ! multiply two distributed_vectors TYPE (distributed_vector), INTENT(IN) :: handle2 TYPE (distributed_vector), INTENT(IN) :: handle1 REAL, DIMENSION(handle1%local_start:handle1%local_end) ::multiply_dv_dv multiply_dv_dv = handle1%local(:) * handle2%local(:) RETURN END FUNCTION multiply_dv_dv SUBROUTINE CAININAD_SCALE_DISTVEC () TYPE (distributed_vector) :: PVAZG TYPE (distributed_vector) :: ZTEMP TYPE (distributed_vector) :: SCALP_DV ZTEMP = PVAZG * SCALP_DV END SUBROUTINE CAININAD_SCALE_DISTVEC END MODULE YOMCAIN Apologies ... -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=36316