From nobody Thu Feb 19 15:10:50 2026 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4fGxf26V3qz6RQn6 for ; Thu, 19 Feb 2026 15:10:50 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (not verified)) by mx1.freebsd.org (Postfix) with ESMTPS id 4fGxf232cDz3tfQ for ; Thu, 19 Feb 2026 15:10:50 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1771513850; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=/IEUUGSHCrtGfjKzuPA4AAe/2dCzGbXTirMnvNyLzfA=; b=HycbFS3+OMlvBRx6+v2nMqTYVaizbabn4DD74AplXQwOagpjpPVsVSJ9IfkJO4HJTUhYqW VYiA40z3nREBR5YKdaOu7SRgLeqlgMRk1wMW9rFXDRMi29VHF1v9Y7/sOph01UB2DTqe8c wuM5Io8DD9r1ci8BTG3ZaAHagX4as8Oed8wnz/Do/2jnnhzh7ogbEaG0NnfLAIAaMyu0kO /ZRxO4MRJHY/UuH448NvPMAOE1U1HMDxsvVvi8GrMlXzqj0BufbhNfqyga6zy5HUZ244fQ LUZL9jB0DLLwM7+4yAPudDHt37dk3ZS1CbvgH2KD28xuRslATayGMqbTtgIXoQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1771513850; a=rsa-sha256; cv=none; b=XEAwQBUR/YImbTIRH5iUoeP3Kl9hOE6Ig6NFV/RizU6Pxk0Qv5/iMHcB6to2xd3/xTOqU2 VWsssa9thSwMNCQcxLMaUVaFdEAI229R6ms1rGg+5I1vbSRYLFZWPIt8uZt2WdECtgF2H5 ojt6NrECO6gptVdPWumEgfVRkM4Ukv1qfF7hcaw77pLBc0NXvVaj0Q5bvbjg2y7I8+Es7A inJApjW74z0sixYogYOcCASegjSAGTBNZiRbRr8391Q4WviJqsaJJ20lQ5OCy6Cx9gk7pd pPrQN0SDPAxqZNtG+Yh5haH4gbw+JldEiewEMf7rH0Xf4v3WvFCA6p7DEV/rCA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1771513850; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=/IEUUGSHCrtGfjKzuPA4AAe/2dCzGbXTirMnvNyLzfA=; b=mD8nmOjFVB1ZROIhS1eXI/gim/g+Qu1voqQaNBHfVVZ6wobu2e0oJfA1WY8am1S3rLXM6t KMPnbTiM4OTZ1yH7zzy77uxhLZnM9sXcht2bv8iqyyNBfDXz8CNLcOSXTb/jKFl9Wf0ned KczdhNqpwRxcLZVVaa7DQAgR1JWjXUzFQ/J539jjLIGqQlz2hQ/EuNXoJ/OUMqDJlgNfVV R2nwa8XzwyjuOlYW0yYwrAiI/v6sh5If8ANrkHaCVSjX2fOKXTW2LMIisPKfyoxxBv/A6H hOgP0elvMKt3Qubno8CI3SdaaukXjt/gwwSWZMVndyqzwiNR6VGkM4EibCSw1w== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4fGxf223pzznNs for ; Thu, 19 Feb 2026 15:10:50 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 235e9 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Thu, 19 Feb 2026 15:10:50 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Brooks Davis Subject: git: 2adc3f0db187 - main - stddef.h: centralize definition of offsetof() List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: brooks X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 2adc3f0db1877dbe9801e6dacfa9ae8df8879549 Auto-Submitted: auto-generated Date: Thu, 19 Feb 2026 15:10:50 +0000 Message-Id: <699727fa.235e9.1b8777a6@gitrepo.freebsd.org> The branch main has been updated by brooks: URL: https://cgit.FreeBSD.org/src/commit/?id=2adc3f0db1877dbe9801e6dacfa9ae8df8879549 commit 2adc3f0db1877dbe9801e6dacfa9ae8df8879549 Author: Brooks Davis AuthorDate: 2026-02-19 15:05:22 +0000 Commit: Brooks Davis CommitDate: 2026-02-19 15:10:32 +0000 stddef.h: centralize definition of offsetof() Move to sys/_offsetof.h and use __builtin_offsetof() instead of __offsetof to avoid reintroducing sys/cdefs.h polution in stddef.h. This has the side effect of allowing sys/stddef.h to be included after stddef.h which can happen in compatability headers. Effort: CHERI upstreaming Sponsored by: DARPA, AFRL Reviewed by: imp, kib Differential Revision: https://reviews.freebsd.org/D55307 --- include/stddef.h | 5 +---- sys/sys/_offsetof.h | 19 +++++++++++++++++++ sys/sys/stddef.h | 3 +-- 3 files changed, 21 insertions(+), 6 deletions(-) diff --git a/include/stddef.h b/include/stddef.h index 978a34affc0a..9c7f1f147289 100644 --- a/include/stddef.h +++ b/include/stddef.h @@ -33,6 +33,7 @@ #define _STDDEF_H_ #include +#include #include #include @@ -68,10 +69,6 @@ typedef __max_align_t max_align_t; #endif #endif -#ifndef offsetof -#define offsetof(type, field) __builtin_offsetof(type, field) -#endif - #if __EXT1_VISIBLE /* ISO/IEC 9899:2011 K.3.3.2 */ #ifndef _RSIZE_T_DEFINED diff --git a/sys/sys/_offsetof.h b/sys/sys/_offsetof.h new file mode 100644 index 000000000000..25982fad774a --- /dev/null +++ b/sys/sys/_offsetof.h @@ -0,0 +1,19 @@ +/* + * Copyright (c) 2026 Capabilities Limited + * + * SPDX-License-Identifier: BSD-2-Clause + * + * This software was developed by SRI International, the University of + * Cambridge Computer Laboratory (Department of Computer Science and + * Technology), and Capabilities Limited under Defense Advanced Research + * Projects Agency / Air Force Research Laboratory (DARPA/AFRL) Contract + * No. FA8750-24-C-B047 ("DEC"). + */ +#ifndef _SYS__OFFSETOF_H_ +#define _SYS__OFFSETOF_H_ + +#ifndef offsetof +#define offsetof(type, field) __builtin_offsetof(type, field) +#endif + +#endif /* _SYS__OFFSETOF_H_ */ diff --git a/sys/sys/stddef.h b/sys/sys/stddef.h index 90186eed7624..911755f71aa8 100644 --- a/sys/sys/stddef.h +++ b/sys/sys/stddef.h @@ -31,6 +31,7 @@ #include #include +#include #include #include @@ -46,6 +47,4 @@ typedef __ptrdiff_t ptrdiff_t; #define _PTRDIFF_T_DECLARED #endif -#define offsetof(type, field) __offsetof(type, field) - #endif /* !_SYS_STDDEF_H_ */