From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from simark.ca by simark.ca with LMTP id XJwkMb9+oGlyXgsAWB0awg (envelope-from ) for ; Thu, 26 Feb 2026 12:11:27 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=simark.ca; s=mail; t=1772125887; bh=0relYxlLab+0MQuSaqG2cz96Ncwjjv/SRMMBgz+btaA=; h=Date:Subject:To:References:From:In-Reply-To:List-Id: List-Unsubscribe:List-Archive:List-Post:List-Help:List-Subscribe: From; b=EOsrNJJqyhePK2SfkNputNZI2Tf+PeO3XBhsIh6LLHYzqwi/Y4qlNZMfXD9qVpXzQ rl5WVIzNE2EhKtmMiZz+avF8hzd3A1poB7OGmj0uCeb647QuEj2QWxw9YYYf7DWoZK lCE83tyr2MAOHpQBNzCHlzM1jluUGSwIjM9vpH2w= Received: by simark.ca (Postfix, from userid 112) id AF7B91E0DD; Thu, 26 Feb 2026 12:11:27 -0500 (EST) X-Spam-Checker-Version: SpamAssassin 4.0.1 (2024-03-25) on simark.ca X-Spam-Level: X-Spam-Status: No, score=-2.4 required=5.0 tests=ARC_SIGNED,ARC_VALID,BAYES_00, DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,MAILING_LIST_MULTI, RCVD_IN_DNSWL_MED,RCVD_IN_VALIDITY_CERTIFIED_BLOCKED, RCVD_IN_VALIDITY_RPBL_BLOCKED,RCVD_IN_VALIDITY_SAFE_BLOCKED autolearn=ham autolearn_force=no version=4.0.1 Authentication-Results: simark.ca; dkim=pass (1024-bit key; unprotected) header.d=simark.ca header.i=@simark.ca header.a=rsa-sha256 header.s=mail header.b=gPJQaqkU; dkim-atps=neutral Received: from vm01.sourceware.org (vm01.sourceware.org [38.145.34.32]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange x25519 server-signature ECDSA (prime256v1) server-digest SHA256) (No client certificate requested) by simark.ca (Postfix) with ESMTPS id 9759A1E089 for ; Thu, 26 Feb 2026 12:11:26 -0500 (EST) Received: from vm01.sourceware.org (localhost [127.0.0.1]) by sourceware.org (Postfix) with ESMTP id ADACC4B9DB75 for ; Thu, 26 Feb 2026 17:11:25 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org ADACC4B9DB75 Authentication-Results: sourceware.org; dkim=pass (1024-bit key, unprotected) header.d=simark.ca header.i=@simark.ca header.a=rsa-sha256 header.s=mail header.b=gPJQaqkU Received: from simark.ca (simark.ca [158.69.221.121]) by sourceware.org (Postfix) with ESMTPS id 7209B4BA23FC for ; Thu, 26 Feb 2026 17:11:00 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 7209B4BA23FC Authentication-Results: sourceware.org; dmarc=pass (p=none dis=none) header.from=simark.ca Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=simark.ca ARC-Filter: OpenARC Filter v1.0.0 sourceware.org 7209B4BA23FC Authentication-Results: server2.sourceware.org; arc=none smtp.remote-ip=158.69.221.121 ARC-Seal: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1772125860; cv=none; b=elHWhqW8MLSQoMG7Zt6m7U5mPNO50P+LPwKPg0ea/zCHaE+D3trVuX8boWyCTZnw7F0Y9l45CHYRRFt4P2U+J/R3CoJUioyVVM4GtWP8QUy8Vxd2e+gqoj3rZ9QVE8gAvkUUJC6haFWgEhJMfD/X9Q/QJWNIJzIxIewvsRpWHNA= ARC-Message-Signature: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1772125860; c=relaxed/simple; bh=0relYxlLab+0MQuSaqG2cz96Ncwjjv/SRMMBgz+btaA=; h=DKIM-Signature:Message-ID:Date:MIME-Version:Subject:To:From; b=U1f6QrGZbEpeqhZROqyPNsbwxx8xmQ3jqrH6qWohX3Ed0oD7ixnuoeAcpqykCuZbx9JiGSM+YLsz4+thSXav5ghK/qKB0c3LDP12fWG/jR4gComeX2CzfplfsaGgPUc4C/SEKGWUlUT80lXJcnLI9+T4Qge+ZaXNCP7VPMDBn6E= ARC-Authentication-Results: i=1; server2.sourceware.org DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 7209B4BA23FC DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=simark.ca; s=mail; t=1772125859; bh=0relYxlLab+0MQuSaqG2cz96Ncwjjv/SRMMBgz+btaA=; h=Date:Subject:To:References:From:In-Reply-To:From; b=gPJQaqkUVyjuoMIM6yp1n+IN0a64/FxfG3oceWH/xuZTYQ7DKyNeON9p9IOf04nP3 m4qStSBV/rVa6cupCesnkjQvZKea1zrCi0CltW7s4NZwUCnQll7CWR/U6S/uTscCK4 jZHuiT4jGXu549y82wwIgbVsL/Q+GOuiE/Lj3TrI= Received: by simark.ca (Postfix) id 54F331E089; Thu, 26 Feb 2026 12:10:59 -0500 (EST) Message-ID: Date: Thu, 26 Feb 2026 12:10:58 -0500 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: [PATCH 2/2] Use enum types for remote fileio flags To: Tom Tromey , gdb-patches@sourceware.org References: <20260225-target-fd-newtype-v1-0-e04af6692ccb@adacore.com> <20260225-target-fd-newtype-v1-2-e04af6692ccb@adacore.com> Content-Language: fr From: Simon Marchi In-Reply-To: <20260225-target-fd-newtype-v1-2-e04af6692ccb@adacore.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-BeenThere: gdb-patches@sourceware.org X-Mailman-Version: 2.1.30 Precedence: list List-Id: Gdb-patches mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: gdb-patches-bounces~public-inbox=simark.ca@sourceware.org On 2/25/26 4:25 PM, Tom Tromey wrote: > diff --git a/gdb/sparc64-tdep.c b/gdb/sparc64-tdep.c > index 6919a1c37d3..6733aa7cc48 100644 > --- a/gdb/sparc64-tdep.c > +++ b/gdb/sparc64-tdep.c > @@ -287,8 +287,9 @@ adi_tag_fd () > char cl_name[MAX_PROC_NAME_SIZE]; > snprintf (cl_name, sizeof(cl_name), "/proc/%ld/adi/tags", (long) pid); > fileio_error target_errno; > - proc->stat.tag_fd = target_fileio_open (NULL, cl_name, O_RDWR|O_EXCL, > - false, 0, &target_errno); > + proc->stat.tag_fd = target_fileio_open (NULL, cl_name, > + FILEIO_O_RDWR | FILEIO_O_EXCL, > + FILEIO_S_IRWXU, 0, &target_errno); Perhaps change that 0 to false (the `bool warn_if_slow` param). So the flags here goes from "false" (obviously wrong) to FILEIO_S_IRWXU. Since we don't pass the _CREATE flag, I think that the value for mode is irrelevant. If so, it might be clearer to pass 0, otherwise it makes it seem like the value we pass is meaningful, which can be confusing. > /* lseek(2) flags */ > -#define FILEIO_SEEK_SET 0 > -#define FILEIO_SEEK_CUR 1 > -#define FILEIO_SEEK_END 2 > +enum fileio_lseek_flag : unsigned > +{ > + FILEIO_SEEK_SET = 0, > + FILEIO_SEEK_CUR = 1, > + FILEIO_SEEK_END = 2, > +}; > +DEF_ENUM_FLAGS_TYPE (enum fileio_lseek_flag, fileio_lseek_flags); I don't think these values are actually flags, theys are all mutually exclusive, I think it should be a regular enum (or enum class). If we want to mimic the posix API, you could call it "fileio_lseek_whence". But I also noticed the enum type is not actually used. It could be used in remote_fileio_seek_flag_to_host, although it wouldn't be terribly useful. So perhaps this enum could be anonymous actually. > > /* errno values */ > enum fileio_error > @@ -146,12 +159,12 @@ extern int fileio_error_to_host (fileio_error errnum); > /* Convert File-I/O open flags FFLAGS to host format, storing > the result in *FLAGS. Return 0 on success, -1 on error. */ > > -extern int fileio_to_host_openflags (int fflags, int *flags); > +extern int fileio_to_host_openflags (fileio_open_flags fflags, int *flags); In the implementation, the second parameter is named open_flags_p. You could maybe rename it here. That would free up "flags" for the first parameter, if you want. Simon