From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from hera.aquilenet.fr (hera.aquilenet.fr [185.233.100.1]) by sourceware.org (Postfix) with ESMTPS id 65E3F386EC5C for ; Fri, 29 May 2020 20:04:47 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.3.2 sourceware.org 65E3F386EC5C Authentication-Results: sourceware.org; dmarc=none (p=none dis=none) header.from=gnu.org Authentication-Results: sourceware.org; spf=fail smtp.mailfrom=samuel.thibault@gnu.org Received: from localhost (localhost [127.0.0.1]) by hera.aquilenet.fr (Postfix) with ESMTP id 7F870C5E8; Fri, 29 May 2020 22:04:46 +0200 (CEST) X-Virus-Scanned: Debian amavisd-new at aquilenet.fr Received: from hera.aquilenet.fr ([127.0.0.1]) by localhost (hera.aquilenet.fr [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id RnIKSCux9_Hr; Fri, 29 May 2020 22:04:45 +0200 (CEST) Received: from function.home (unknown [IPv6:2a01:cb19:956:1b00:9eb6:d0ff:fe88:c3c7]) by hera.aquilenet.fr (Postfix) with ESMTPSA id 4E882C359; Fri, 29 May 2020 22:04:45 +0200 (CEST) Received: from samy by function.home with local (Exim 4.93) (envelope-from ) id 1jelFE-007poi-Ho; Fri, 29 May 2020 22:04:44 +0200 Date: Fri, 29 May 2020 22:04:44 +0200 From: Samuel Thibault To: gdb-patches@sourceware.org Cc: Thomas Schwinge , thomas@schwinge.name, bug-hurd@gnu.org Subject: [PATCH 3/5] hurd: make function cast stronger Message-ID: <20200529200444.3mc4bw2nqep3d4oh@function> Mail-Followup-To: gdb-patches@sourceware.org, Thomas Schwinge , thomas@schwinge.name, bug-hurd@gnu.org References: <20200529200109.2qzmgxwtnm7fzfzs@function> <20200529200247.ldtwyly6jepcdpuc@function> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20200529200247.ldtwyly6jepcdpuc@function> Organization: I am not organized User-Agent: NeoMutt/20170609 (1.8.3) X-Spam-Status: No, score=-11.7 required=5.0 tests=BAYES_00, GIT_PATCH_0, KAM_DMARC_STATUS, SPF_HELO_PASS, SPF_SOFTFAIL, TXREP autolearn=ham autolearn_force=no version=3.4.2 X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on server2.sourceware.org X-BeenThere: gdb-patches@sourceware.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Gdb-patches mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 29 May 2020 20:04:48 -0000 gdb/ChangeLog: 2020-05-29 Samuel Thibault * reply_mig_hack.awk (Error return): Cast function through void *, to bypass compiler function call check. diff --git a/gdb/reply_mig_hack.awk b/gdb/reply_mig_hack.awk index 52ab90bba3..6ff683a841 100644 --- a/gdb/reply_mig_hack.awk +++ b/gdb/reply_mig_hack.awk @@ -130,7 +130,8 @@ parse_phase == 5 && /^#if[ \t]TypeCheck/ { # two arguments. # This is possibly bogus, but easier than supplying bogus values for all # the other args (we can't just pass 0 for them, as they might not be scalar). - print "\t OutP->RetCode = (*(kern_return_t (*)(mach_port_t, kern_return_t)) " user_function_name ") (In0P->Head.msgh_request_port, In0P->" arg_name[0] ");"; + print "\t void * __error_call = " user_function_name ";"; + print "\t OutP->RetCode = (*(kern_return_t (*)(mach_port_t, kern_return_t)) __error_call) (In0P->Head.msgh_request_port, In0P->" arg_name[0] ");"; print "\t return;"; print "\t }"; print "";