From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 9009 invoked by alias); 4 Feb 2013 19:01:44 -0000 Received: (qmail 8997 invoked by uid 22791); 4 Feb 2013 19:01:44 -0000 X-SWARE-Spam-Status: No, hits=-6.4 required=5.0 tests=AWL,BAYES_00,KHOP_RCVD_UNTRUST,KHOP_SPAMHAUS_DROP,RCVD_IN_DNSWL_HI,RCVD_IN_HOSTKARMA_W,RP_MATCHES_RCVD,SPF_HELO_PASS X-Spam-Check-By: sourceware.org Received: from mx1.redhat.com (HELO mx1.redhat.com) (209.132.183.28) by sourceware.org (qpsmtpd/0.43rc1) with ESMTP; Mon, 04 Feb 2013 19:01:35 +0000 Received: from int-mx09.intmail.prod.int.phx2.redhat.com (int-mx09.intmail.prod.int.phx2.redhat.com [10.5.11.22]) by mx1.redhat.com (8.14.4/8.14.4) with ESMTP id r14J1WId012977 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=OK); Mon, 4 Feb 2013 14:01:32 -0500 Received: from barimba (ovpn01.gateway.prod.ext.phx2.redhat.com [10.5.9.1]) by int-mx09.intmail.prod.int.phx2.redhat.com (8.14.4/8.14.4) with ESMTP id r14J1Uu3024818 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES128-SHA bits=128 verify=NO); Mon, 4 Feb 2013 14:01:31 -0500 From: Tom Tromey To: Mark Kettenis Cc: marcus.shawcroft@arm.com, gdb-patches@sourceware.org, palves@redhat.com Subject: Re: [PATCH] gdbserver ptrace() argument type cleanups. References: <510FF048.8070701@arm.com> <201302041857.r14IvSWJ000937@glazunov.sibelius.xs4all.nl> Date: Mon, 04 Feb 2013 19:01:00 -0000 In-Reply-To: <201302041857.r14IvSWJ000937@glazunov.sibelius.xs4all.nl> (Mark Kettenis's message of "Mon, 4 Feb 2013 19:57:28 +0100 (CET)") Message-ID: <876227299x.fsf@fleche.redhat.com> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/24.2.92 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain 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 X-SW-Source: 2013-02/txt/msg00091.txt.bz2 >>>>> "Mark" == Mark Kettenis writes: Mark> I'd use the word "obfuscation" instead of "cleanup". It is awful but necessary. I think calls in gdb proper probably need this as well. I did try writing a patch to fix it a different way, without as many casts: +static inline PTRACE_TYPE_RET +gdb_ptrace (int request, pid_t pid, PTRACE_TYPE_ARG3 addr, void *data) +{ + return ptrace (request, pid, addr, data); +} + +#undef ptrace +#define ptrace ERROR ... followed by using gdb_ptrace everywhere. However you do still need casts at some call points. It's quite awful. I can send this if anyone thinks it is better. Tom