From patchwork Fri Apr 27 10:59:22 2012 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Georg-Johann Lay X-Patchwork-Id: 155465 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Received: from sourceware.org (server1.sourceware.org [209.132.180.131]) by ozlabs.org (Postfix) with SMTP id DE303B6F6E for ; Fri, 27 Apr 2012 20:59:56 +1000 (EST) Comment: DKIM? See http://www.dkim.org DKIM-Signature: v=1; a=rsa-sha1; c=relaxed/relaxed; d=gcc.gnu.org; s=default; x=1336129198; h=Comment: DomainKey-Signature:Received:Received:Received:Received: Message-ID:Date:From:User-Agent:MIME-Version:To:CC:Subject: Content-Type:Mailing-List:Precedence:List-Id:List-Unsubscribe: List-Archive:List-Post:List-Help:Sender:Delivered-To; bh=+Zjh5uC 9Bdr1XYNKucGmUdPFWGo=; b=H+mu+AAW0bSmVC09x3S4h+Drj6fQ6wP6mg8dIf5 bkbNMzSEf+DlGNLFUhxTs6Kq0La2At5+sWRqriBxROS5alSBi61dMKnN0BW8ySYQ 6K2CvQ4Onp/wqm4tEop3MFyApHnE0PBFQ5jGJeRuEsv910u7fUV8WDk1sTy6sXHl vwZg= Comment: DomainKeys? See http://antispam.yahoo.com/domainkeys DomainKey-Signature: a=rsa-sha1; q=dns; c=nofws; s=default; d=gcc.gnu.org; h=Received:Received:X-SWARE-Spam-Status:X-Spam-Check-By:Received:X-RZG-AUTH:X-RZG-CLASS-ID:Received:Message-ID:Date:From:User-Agent:MIME-Version:To:CC:Subject:Content-Type:X-IsSubscribed:Mailing-List:Precedence:List-Id:List-Unsubscribe:List-Archive:List-Post:List-Help:Sender:Delivered-To; b=ZrtO+/HYKYfzk9SJCX615qFHroGMnq+UxeUZcDW/JyopwO9dUKdYmoDp2ntHZq 6bz1Gru+/54hJ/rSLrBIFOYJgIIudAgq5WhFK60/57gYIg1PrwBBZmHLvVkcLTQt 7Xgu/uwMmpXOlM87gCS7GEE2BaRDdtSD3UqxJud4db0yQ=; Received: (qmail 32002 invoked by alias); 27 Apr 2012 10:59:52 -0000 Received: (qmail 31986 invoked by uid 22791); 27 Apr 2012 10:59:51 -0000 X-SWARE-Spam-Status: No, hits=-1.5 required=5.0 tests=AWL, BAYES_00, RCVD_IN_DNSWL_NONE X-Spam-Check-By: sourceware.org Received: from mo-p00-ob.rzone.de (HELO mo-p00-ob.rzone.de) (81.169.146.162) by sourceware.org (qpsmtpd/0.43rc1) with ESMTP; Fri, 27 Apr 2012 10:59:30 +0000 X-RZG-AUTH: :LXoWVUeid/7A29J/hMvvT2k715jHQaJercGObUOFkj18odoYNahU4Q== X-RZG-CLASS-ID: mo00 Received: from [192.168.0.22] (business-188-111-022-002.static.arcor-ip.net [188.111.22.2]) by smtp.strato.de (joses mo81) (RZmta 28.13 AUTH) with ESMTPA id K078e1o3R7GBeo ; Fri, 27 Apr 2012 12:59:25 +0200 (CEST) Message-ID: <4F9A7C0A.10301@gjlay.de> Date: Fri, 27 Apr 2012 12:59:22 +0200 From: Georg-Johann Lay User-Agent: Thunderbird 2.0.0.24 (X11/20100302) MIME-Version: 1.0 To: gcc-patches@gcc.gnu.org CC: Peter Bigot , Richard Guenther Subject: [Patch,4.7,committed]: Fix PR c/51527 X-IsSubscribed: yes Mailing-List: contact gcc-patches-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Id: List-Unsubscribe: List-Archive: List-Post: List-Help: Sender: gcc-patches-owner@gcc.gnu.org Delivered-To: mailing list gcc-patches@gcc.gnu.org http://gcc.gnu.org/viewcvs?view=revision&revision=186899 Applied as approved in http://gcc.gnu.org/ml/gcc/2012-04/msg00843.html Johann PR c/51527 * convert.c (convert_to_integer): Avoid infinite recursion for target-defined built-in types. Index: convert.c =================================================================== --- convert.c (revision 186872) +++ convert.c (working copy) @@ -769,6 +769,7 @@ convert_to_integer (tree type, tree expr (Otherwise would recurse infinitely in convert. */ if (TYPE_PRECISION (typex) != inprec) { + tree otypex = typex; /* Don't do unsigned arithmetic where signed was wanted, or vice versa. Exception: if both of the original operands were @@ -806,10 +807,12 @@ convert_to_integer (tree type, tree expr typex = unsigned_type_for (typex); else typex = signed_type_for (typex); - return convert (type, - fold_build2 (ex_form, typex, - convert (typex, arg0), - convert (typex, arg1))); + + if (TYPE_PRECISION (otypex) == TYPE_PRECISION (typex)) + return convert (type, + fold_build2 (ex_form, typex, + convert (typex, arg0), + convert (typex, arg1))); } } }