From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by inbox.dpdk.org (Postfix) with ESMTP id F2A29A0547; Thu, 24 Jun 2021 18:29:25 +0200 (CEST) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id BAB0640040; Thu, 24 Jun 2021 18:29:25 +0200 (CEST) Received: from out2-smtp.messagingengine.com (out2-smtp.messagingengine.com [66.111.4.26]) by mails.dpdk.org (Postfix) with ESMTP id 50A6C4003C for ; Thu, 24 Jun 2021 18:29:24 +0200 (CEST) Received: from compute4.internal (compute4.nyi.internal [10.202.2.44]) by mailout.nyi.internal (Postfix) with ESMTP id F2B825C01A0; Thu, 24 Jun 2021 12:29:23 -0400 (EDT) Received: from mailfrontend2 ([10.202.2.163]) by compute4.internal (MEProxy); Thu, 24 Jun 2021 12:29:23 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=monjalon.net; h= from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding:content-type; s=fm1; bh= sVXDRcEir9wqZYaX4FmOJX98cJAiltlkRFkZ3i4fT4A=; b=swIGgrkllUThLUtY 73pDqY8m/9e5318xK160D7xQL6xLeXGB286RB3kAi8Lu8urOJunCH+WuOomg7qpW N+v3Tol01UWg3d+B4QxD+FueSXE1jPNWCe+A4aLx04lcYf3XTR4GJ+LuzvTVN97m ubhbis2z0MupfMTvV4XHRPWcZfTJwISw30EWfK0ocQm3wIPXZtxxzgM/6wBsPRSX cxAVzOsZtuFr79OEJtiyM+XYR30bgzOgyxebx7rmAxMZHeT5ojl+NQdjRhDtiKIm o8CspEJ+rjOdIeEUZhpIlViI7JSWMe3JFHSHwZZLtgrCyE/+vgd8vSracB4UKks5 cE1dVw== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=cc:content-transfer-encoding:content-type :date:from:in-reply-to:message-id:mime-version:references :subject:to:x-me-proxy:x-me-proxy:x-me-sender:x-me-sender :x-sasl-enc; s=fm3; bh=sVXDRcEir9wqZYaX4FmOJX98cJAiltlkRFkZ3i4fT 4A=; b=mIjioitIlFJh5KCoTF0dW6WmfKiLFp8fdhICQDiqprJNFyMHAmHFHncDq 5iyMsB9Bni5X1IJHmVR4z+1r3dI5XgjHrIhcpjIAYZatPcaqTPWmFLlyxqgoBHto EYbxp7ZjVMGdfv/Bt5TxD77F1bVtWOf4FnhMfXETIfO4kAFBFmpEi2mW/e7X0gMh M8dsZ4ESI6nCWKXcflHLYlxzpNi+icN5AgANbVmwLuo7agji41K3S1HmU2q2/1gH kRJsHJNHkMPgVWf2ecF4TSeoIs8kpEzT1oGZUQ8Y4L3gRoz9UT+4P82NUJdmMd0V /tDY8Z6K+NVaav/gdYBmCF6xbnCBQ== X-ME-Sender: X-ME-Received: X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgeduledrfeeghedguddtfecutefuodetggdotefrod ftvfcurfhrohhfihhlvgemucfhrghsthforghilhdpqfgfvfdpuffrtefokffrpgfnqfgh necuuegrihhlohhuthemuceftddtnecunecujfgurhephffvufffkfgjfhgggfgtsehtuf ertddttddvnecuhfhrohhmpefvhhhomhgrshcuofhonhhjrghlohhnuceothhhohhmrghs sehmohhnjhgrlhhonhdrnhgvtheqnecuggftrfgrthhtvghrnhepudeggfdvfeduffdtfe eglefghfeukefgfffhueejtdetuedtjeeuieeivdffgeehnecuvehluhhsthgvrhfuihii vgeptdenucfrrghrrghmpehmrghilhhfrhhomhepthhhohhmrghssehmohhnjhgrlhhonh drnhgvth X-ME-Proxy: Received: by mail.messagingengine.com (Postfix) with ESMTPA; Thu, 24 Jun 2021 12:29:22 -0400 (EDT) From: Thomas Monjalon To: Tyler Retzlaff Cc: dev@dpdk.org, ferruh.yigit@intel.com, dmitry.kozliuk@gmail.com, david.marchand@redhat.com Date: Thu, 24 Jun 2021 18:29:20 +0200 Message-ID: <2661083.m9YJQ7Gqa3@thomas> In-Reply-To: <20210624160228.GB22718@linuxonhyperv3.guj3yctzbm1etfxqx2vob5hsef.xx.internal.cloudapp.net> References: <20210623182657.GA24634@linuxonhyperv3.guj3yctzbm1etfxqx2vob5hsef.xx.internal.cloudapp.net> <3277479.bKIgzLV6lZ@thomas> <20210624160228.GB22718@linuxonhyperv3.guj3yctzbm1etfxqx2vob5hsef.xx.internal.cloudapp.net> MIME-Version: 1.0 Content-Transfer-Encoding: 7Bit Content-Type: text/plain; charset="us-ascii" Subject: Re: [dpdk-dev] [RFC] toolchain specific macro expansion X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" 24/06/2021 18:02, Tyler Retzlaff: > On Thu, Jun 24, 2021 at 08:54:49AM +0200, Thomas Monjalon wrote: > > 23/06/2021 20:26, Tyler Retzlaff: > > > // lib/eal/gcc/rte_toolchain_common.h > > > #define __rte_noreturn __attribute__((noreturn)) > > > > We should keep a macro in rte_common.h which triggers an explicit error > > i think that's relatively trivial to do. rte_common.h could after > toolchain specific include do a simple test. > > #ifndef __rte_no_return > #error no __rte_no_return defined for toolchain > #endif No I was thinking of: /** Doxygen comment for the attribute below */ #define __rte_no_return RTE_ATTR_NOT_SUPPORTED This way we have a documentation in a single place for the macro, and compilation fails if it is not implemented for the toolchain.