From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 82741 invoked by alias); 24 Mar 2018 19:23:25 -0000 Mailing-List: contact gdb-patches-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: gdb-patches-owner@sourceware.org Received: (qmail 82372 invoked by uid 89); 24 Mar 2018 19:23:25 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=-2.5 required=5.0 tests=AWL,BAYES_00,SPF_HELO_PASS,SPF_PASS,T_RP_MATCHES_RCVD autolearn=ham version=3.3.2 spammy=day X-HELO: smtp.polymtl.ca Received: from smtp.polymtl.ca (HELO smtp.polymtl.ca) (132.207.4.11) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with ESMTP; Sat, 24 Mar 2018 19:23:24 +0000 Received: from simark.ca (simark.ca [158.69.221.121]) (authenticated bits=0) by smtp.polymtl.ca (8.14.7/8.14.7) with ESMTP id w2OJNHKb015822 (version=TLSv1/SSLv3 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT) for ; Sat, 24 Mar 2018 15:23:22 -0400 Received: by simark.ca (Postfix, from userid 112) id 739551E77E; Sat, 24 Mar 2018 15:23:17 -0400 (EDT) Received: from simark.ca (localhost [127.0.0.1]) by simark.ca (Postfix) with ESMTP id 8C55A1E4B2; Sat, 24 Mar 2018 15:23:16 -0400 (EDT) MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII; format=flowed Content-Transfer-Encoding: 7bit Date: Sat, 24 Mar 2018 19:23:00 -0000 From: Simon Marchi To: Wei-min Pan Cc: Pedro Alves , gdb-patches@sourceware.org Subject: Re: [PATCH 3 PR gdb/16959] gdb hangs in infinite recursion In-Reply-To: <71719916-38d0-dd84-e79c-0e9d24dda5aa@oracle.com> References: <1521840352-75024-1-git-send-email-weimin.pan@oracle.com> <58d0f0759e471fb7862da336ba18bde6@polymtl.ca> <71719916-38d0-dd84-e79c-0e9d24dda5aa@oracle.com> Message-ID: <1571cea710a01e250774e10b211672e6@polymtl.ca> X-Sender: simon.marchi@polymtl.ca User-Agent: Roundcube Webmail/1.3.4 X-Poly-FromMTA: (simark.ca [158.69.221.121]) at Sat, 24 Mar 2018 19:23:17 +0000 X-IsSubscribed: yes X-SW-Source: 2018-03/txt/msg00489.txt.bz2 On 2018-03-24 14:54, Wei-min Pan wrote: > Please note the check_typedef() call (now redundant and removed) > before calling cp_print_value_fields(). > So passing the resolved type is correct. I think it's better if functions don't assume too much what other functions need (original type vs real type). cp_print_value_fields may not require the real type today, but maybe that will change one day, and that call will have to be changed (if we even notice it). So in that sense, it's better to always pass down the original type and let functions get the real type for their own use if they need it. Simon