From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org [79.124.17.100]) by master.gitmailbox.com (Postfix) with ESMTP id E5E794A115 for ; Thu, 21 Mar 2024 17:45:17 +0000 (UTC) Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 3DAE968D569; Thu, 21 Mar 2024 19:45:15 +0200 (EET) Received: from EUR04-HE1-obe.outbound.protection.outlook.com (mail-he1eur04olkn2087.outbound.protection.outlook.com [40.92.73.87]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 0A5D468D496 for ; Thu, 21 Mar 2024 19:45:08 +0200 (EET) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=hGe543TEuGsNC3e09W1hhB92RoRK+Zaf6HgSh8Gf5JzFpwPygzqRvdMQlYgTEFlJQV0lFHK02p0AADVX9K/O3+WoIEnLzEnmZ5cpeK1Gp/th4jO+cvfM5+xbefqubpq3KTI3n/45UoLey4fM6qm+4/tuhS1LNkuOAfQEVsk6+N+zeuQHJ7XQbJrf0OfAvtGLOS8jXxS4OeZenWKxP9U9K+y68oPuLsb5nYqxywHwoEikn+M2iSAnwuUAUGuHnYFIOecWQzb35BcuUbnngh2hQvR2WKKQjLMZAkOjINmAV/H8xBiLY0k/BzWqfucZv2PwJkCw2Qx0dGKgqCrSKzp0DQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=dEf+Myxq2ghNrXmi4UwTupg/y8PrGtu8xIA+GBSreUI=; b=l1/0dfXAjvkjI+xS/59kW19UOD9iWDd+1B6nXgC8rVduQdseE32aa44BmtvcE/02KGb1OpzYEl7F0K96Ml/nMMEA7z6jSESmv6agHpkjUHSQ2foC0iCf4H6EU1gMQyac5Y7ExHN5afuqi4XlM7Zr2OmV5H2PROEPAbXnyp+l6OUJqyawm2Xxv2sEGTT0Rm3YQ8cdIBEeRtm6RzZ5m7Mya+xfN1eIvhc8GdhRpqROWQBZq6coZe0mYeMvRFsslZsrAZzQyEtN9BYJ7LmIAkQo/rc+zlwaFdEsZNI8XAWfS10YhNZj3RIKpMZ28hmbbVvCu42l5D0p1HS82RsKdO9hOw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=none; dmarc=none; dkim=none; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=outlook.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=dEf+Myxq2ghNrXmi4UwTupg/y8PrGtu8xIA+GBSreUI=; b=V4Q0Bke10SDL3jIkI5RaYkMFAWVBNutmtbMcZS0VRXZOJlfm1uOChjHpP7rtmt0mZcOkE/JfwWHSv9ngeKLko7uhcmbdVp0cc5Tnh+KGn+uUcWsZuEVYcDwUEsSyu4RPc214WvZwjO9nyk8JL+Ap8BiNfVMGE55btWkd2/O0zPhwm4D+nmmdpqDd2METMqlBr76orRUMWSK4cAFsmqMwf1SLYfXqfvRMsZmsmh8dg4BOWO44kdvmZWHgckzH6mTdq4fVzNtoVzSWmhYJ34KMl1Bm+q08eFNcqQoo/AbxvvNMYg7lhpfQZqgMqk7oTdfogPpyWOt48ftsquGsThdDdg== Received: from GV1P250MB0737.EURP250.PROD.OUTLOOK.COM (2603:10a6:150:8e::17) by GVXP250MB1058.EURP250.PROD.OUTLOOK.COM (2603:10a6:150:1b2::7) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7386.27; Thu, 21 Mar 2024 17:45:07 +0000 Received: from GV1P250MB0737.EURP250.PROD.OUTLOOK.COM ([fe80::4a3b:cf76:cddc:c68d]) by GV1P250MB0737.EURP250.PROD.OUTLOOK.COM ([fe80::4a3b:cf76:cddc:c68d%4]) with mapi id 15.20.7386.025; Thu, 21 Mar 2024 17:45:07 +0000 From: Andreas Rheinhardt To: ffmpeg-devel@ffmpeg.org Date: Thu, 21 Mar 2024 18:44:58 +0100 Message-ID: X-Mailer: git-send-email 2.40.1 X-TMN: [uRGk9K9RcRkO/CcOOffbjfkRzRUPMmIBp9KBM7VvDZI=] X-ClientProxiedBy: ZRAP278CA0013.CHEP278.PROD.OUTLOOK.COM (2603:10a6:910:10::23) To GV1P250MB0737.EURP250.PROD.OUTLOOK.COM (2603:10a6:150:8e::17) X-Microsoft-Original-Message-ID: <20240321174458.571744-1-andreas.rheinhardt@outlook.com> MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: GV1P250MB0737:EE_|GVXP250MB1058:EE_ X-MS-Office365-Filtering-Correlation-Id: 7f07371f-d026-45ac-b13c-08dc49cea57b X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: 0yrhKDi1xlM02wLnNnZBj/8LAoYgxFASkfOL1ogkJ3auaGWqMtEbNVakcmgfYYsnL5/MsTRpwro0DlMvioJog0OPv1c9HjVEmQLUDcJyobbTFSqADaWDuf0Ezj3VU5T6EOmKgAnBd4QeQX7XK1XoC4bxHjrYHPwD/7dQe0v71VSkVrsZgk0harjJ99ysV2HKiPVQsc6Z+RNLGvW8haECeNRBqwIwF/xB+MP6IYOsjY7gpLn/fRRNmDPrOXNjsUbyiF456obs1o18SnEt2iRWfOt2B+Sld32vDVdPJ73nDDHSV2RZ1Ad4cPzoMkwpIVTjsXYoDfcL91A8Td3O+ORgZ3pmNcHtfydPUnEcF0nOVBR3QxWhmktoobPkFvoMuP43B1w3DGNfUIbS4PP90JL6amv/4bAU6PgeoAs/bIIGWLZSt6vDqCT3zp45/PL9iLgcrZ+xcKJd5kj6Rk2pVk8bAdGXs2I0tX0/pFmp5zvjHKE1USbLACKYjXW4NCtfQQ6flj73kxj8oB99NXE1HrZBMcNCSTX4vSDKNX5c3PV4g2PCxnci5j3uiTga/aPddnN/mr2iWFMYOW8slQjSF3JB8gpB9mIoh6xHH9qhon6UWJFAVzcHk5Gn7WG9vqtPyCPoO68Yi8u60gW1s2/EgQfHH9UVDfno6aghkplLVakwRVGTsbYDEjMJMTDhSxMck4Qe X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?VlL5fO0Ne4828t/15bNaeZDiQ4ftcXOn+ISwueJsOQ68WOEqsEVhb7AwNuAZ?= =?us-ascii?Q?/33ivWn2S6EzcQvDHJ5FmQ27ph4A0devQfmQOoE+CkEI7D/JLoErQj2cVUj3?= =?us-ascii?Q?8v/dPym4bLm/asJlKBqW5M78bLMqwX7D2Nb4PrHBClVYME7YuzLmhmyMZLU1?= =?us-ascii?Q?cVbR3orEFGB0sjM6/muJd/hXNT6QV0wY5jlvqmEtFUHGvFWARTgpT5PkHRU1?= =?us-ascii?Q?g2TjOI1+l6fDq6m6/5LgEIKrsBTwBvv3Xj06Gdy4sw5U5ew/nv48rbLZaqRT?= =?us-ascii?Q?aiigLkmF+2PJ9N2tJ6P5X3bK6JexkoEksDLvjBQ7bsZ/enqsei8P0LjQ7Rh4?= =?us-ascii?Q?FSDiJIbd7Om1h9wEMaIhn4rWGY7fBOdzV+0qDHMV1I0OKv1rzaQ8uCtKO7lM?= =?us-ascii?Q?GKPr+4Lx9j7wx8eS4apIe8KOqknAYlr8oGz7dNYAZ/k6/1BhhQrpRVI2xft+?= =?us-ascii?Q?MGoifAlUoXgTg5Oq+UUXaT9j8+ZXaQNpQ1FiyWkhM+Hc957J5kcKdJ6QDzOl?= =?us-ascii?Q?VIePmg/DEbRzc2pe5DAJ22OuCoWknoeGJJwRQzLX9chF7GLtO4xxoF973E1K?= =?us-ascii?Q?ENcS2OnmQZ12XR6IDXN8ywAzEzpNhQArSLBV5RjWNM64Pjt28xc1TdgzBmXc?= =?us-ascii?Q?NGPBq04VtBsu7gzehjYP1rkUsXRNxS3rhFuxQTaYct1vvYQ+uX725UY/cMyz?= =?us-ascii?Q?FM+lg6cIToHhd2PHd7Qkz60rYhvyhAdDQG7aaoaEgz0RBTC4Jk3BWDyqDS4G?= =?us-ascii?Q?tzKThqTPTX7Cgemup7FhIbHy5XaOTjgJG6ijeWIVUXG7NZLQDnTF1MT2FTUI?= =?us-ascii?Q?hD1YAwZWGbU0w3abgZDTZvqP5fCmT7zeTz9ORLE/OBla6couNtbTiVvGaPA2?= =?us-ascii?Q?hN7ZTav8pevQoiIlQ/tYlKQ6KD5zr+S/VrGyNNNTDAMW7K7Jerhg1ZGP8qac?= =?us-ascii?Q?jHnLj26OxejTftYjkrWplHE2sc+E7FIRhW4hFBTnY3dtj+xXGIcoiY6PgNr9?= =?us-ascii?Q?N2oOc7MWyYeUXc/7mdgvOs8HWZn15VhMKtbxuN0X1H/O+B9be1+aI873lK1I?= =?us-ascii?Q?3xeFVcf9Qq+rkmvaixcvLjGwaavAfLHLfrmcCJyQkPCIflDpZ9TYjqXIXtRO?= =?us-ascii?Q?4xUDJEendBSJDdV3ZoCEKzpuPTL3SGSJCkQecDFkQdPOlDfenrUFlqH+EDLm?= =?us-ascii?Q?5t/FCOexKp1vDzKDIzS28iLMT3QtSOj5E9KiVjZCdQC5OVX3SeLKzpdrNenR?= =?us-ascii?Q?05W3Af8S1VnwQ46Z2bfAEW9Fiqxki73gch9a3/kMog=3D=3D?= X-OriginatorOrg: outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 7f07371f-d026-45ac-b13c-08dc49cea57b X-MS-Exchange-CrossTenant-AuthSource: GV1P250MB0737.EURP250.PROD.OUTLOOK.COM X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 21 Mar 2024 17:45:07.0504 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 84df9e7f-e9f6-40af-b435-aaaaaaaaaaaa X-MS-Exchange-CrossTenant-RMS-PersistedConsumerOrg: 00000000-0000-0000-0000-000000000000 X-MS-Exchange-Transport-CrossTenantHeadersStamped: GVXP250MB1058 Subject: [FFmpeg-devel] [PATCH v2] configure: Explicitly check for static_assert X-BeenThere: ffmpeg-devel@ffmpeg.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: FFmpeg development discussions and patches List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Reply-To: FFmpeg development discussions and patches Cc: Andreas Rheinhardt Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" Archived-At: List-Archive: List-Post: C11 provides static assertions via _Static_assert and provides static_assert as a convenience define for this in assert.h. MSVC 19.27 declares support for C11, but does not support _Static_assert, but somehow supports static_assert. That's therefore what we use. But apparently there are some old GCC toolchains where _Static_assert is supported, but assert.h does not provide the fallback define. Some fate boxes are affected by this [1]. This commit therefore checks whether static_assert works with assert.h included; if not, it errors out. Users like the above can still add -Dstatic_assert=_Static_assert to cflags as a workaround. [1]: https://fate.ffmpeg.org/report.cgi?time=20240321123620&slot=sh4-debian-qemu-gcc-4.7 Signed-off-by: Andreas Rheinhardt --- This is what a test without fallback looks like. Posted to gather opinions on what people prefer. configure | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/configure b/configure index 6d7b33b0ff..c2d2c70c20 100755 --- a/configure +++ b/configure @@ -5589,6 +5589,19 @@ check_cxxflags_cc -std=$stdcxx ctype.h "__cplusplus >= 201103L" || check_cflags_cc -std=$stdc ctype.h "__STDC_VERSION__ >= 201112L" || { check_cflags_cc -std=c11 ctype.h "__STDC_VERSION__ >= 201112L" && stdc="c11" || die "Compiler lacks C11 support"; } +test_cc < +#include +struct Foo { + int a; + void *ptr; +} obj; +static_assert(offsetof(struct Foo, a) == 0, + "First element of struct does not have offset 0"); +static_assert(offsetof(struct Foo, ptr) >= offsetof(struct Foo, a) + sizeof(obj.a), + "elements not properly ordered in struct"); +EOF + check_cppflags -D_FILE_OFFSET_BITS=64 check_cppflags -D_LARGEFILE_SOURCE -- 2.40.1 _______________________________________________ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org https://ffmpeg.org/mailman/listinfo/ffmpeg-devel To unsubscribe, visit link above, or email ffmpeg-devel-request@ffmpeg.org with subject "unsubscribe".