[{"id":37446,"web_url":"https://patchwork.libcamera.org/comment/37446/","msgid":"<20251227103450.GB4094@pendragon.ideasonboard.com>","date":"2025-12-27T10:34:50","subject":"Re: [PATCH] fix clang warnings/errors","submitter":{"id":2,"url":"https://patchwork.libcamera.org/api/people/2/","name":"Laurent Pinchart","email":"laurent.pinchart@ideasonboard.com"},"content":"Hi Johannes,\n\nThank you for the patch.\n\nOn Sat, Dec 27, 2025 at 06:40:40AM +0100, Johannes Schneider wrote:\n> Building libcamera with clang raises some warnings-as-errors.\n\nNone of those issues are present in the master branch. Are you by any\nchance working with out-of-tree changes ?\n\n> Signed-off-by: Johannes Schneider <johannes.schneider@leica-geosystems.com>\n> ---\n> \n> Hoi,\n> \n> you could/should consider compiling with clang too ;-)\n\nWe do :-) Our CI pipeline compiles with different versions of gcc and\nclang. See https://gitlab.freedesktop.org/camera/libcamera/-/jobs/89987029\nfor instance.\n\n> ---\n>  include/libcamera/internal/camera_sensor_helper.h | 2 +-\n>  src/libcamera/converter/converter_v4l2_m2m.cpp    | 2 +-\n>  src/libcamera/pipeline/rkisp1/rkisp1.cpp          | 1 -\n>  3 files changed, 2 insertions(+), 3 deletions(-)\n> \n> diff --git a/include/libcamera/internal/camera_sensor_helper.h b/include/libcamera/internal/camera_sensor_helper.h\n> index 1e1e479..1b3217b 100644\n> --- a/include/libcamera/internal/camera_sensor_helper.h\n> +++ b/include/libcamera/internal/camera_sensor_helper.h\n> @@ -61,7 +61,7 @@ public:\n> \n>  \tstatic std::vector<CameraSensorHelperFactoryBase *> &factories();\n> \n> -\tconst std::string &name() const { return name_; };\n> +\tconst std::string &name() const { return name_; }\n> \n>  private:\n>  \tLIBCAMERA_DISABLE_COPY_AND_MOVE(CameraSensorHelperFactoryBase)\n> diff --git a/src/libcamera/converter/converter_v4l2_m2m.cpp b/src/libcamera/converter/converter_v4l2_m2m.cpp\n> index d6b95fb..368320f 100644\n> --- a/src/libcamera/converter/converter_v4l2_m2m.cpp\n> +++ b/src/libcamera/converter/converter_v4l2_m2m.cpp\n> @@ -258,7 +258,7 @@ int V4L2M2MConverter::V4L2M2MStream::applyControls(ControlList &ctrls,\n>  \t\t\t\t\t\t   const V4L2Request *request)\n>  {\n>  \treturn m2m_->capture()->setControls(&ctrls, request);\n> -};\n> +}\n> \n>  /* -----------------------------------------------------------------------------\n>   * V4L2M2MConverter\n> diff --git a/src/libcamera/pipeline/rkisp1/rkisp1.cpp b/src/libcamera/pipeline/rkisp1/rkisp1.cpp\n> index ca9e850..1437318 100644\n> --- a/src/libcamera/pipeline/rkisp1/rkisp1.cpp\n> +++ b/src/libcamera/pipeline/rkisp1/rkisp1.cpp\n> @@ -377,7 +377,6 @@ int RkISP1CameraData::loadTuningFile(const std::string &path)\n>  \t\t\tconst auto &params = algo[\"Dewarp\"];\n> \n>  \t\t\tcanUseDewarper_ = true;\n> -\t\t\tMatrix<double, 3, 3> m;\n>  \t\t\tDewarpParms dp;\n>  \t\t\tif (params[\"cm\"]) {\n>  \t\t\t\tconst auto &cm = params[\"cm\"].get<Matrix<double, 3, 3>>();","headers":{"Return-Path":"<libcamera-devel-bounces@lists.libcamera.org>","X-Original-To":"parsemail@patchwork.libcamera.org","Delivered-To":"parsemail@patchwork.libcamera.org","Received":["from lancelot.ideasonboard.com (lancelot.ideasonboard.com\n\t[92.243.16.209])\n\tby patchwork.libcamera.org (Postfix) with ESMTPS id 52505C3272\n\tfor <parsemail@patchwork.libcamera.org>;\n\tSat, 27 Dec 2025 10:35:10 +0000 (UTC)","from lancelot.ideasonboard.com (localhost [IPv6:::1])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTP id 57D1961FA6;\n\tSat, 27 Dec 2025 11:35:09 +0100 (CET)","from perceval.ideasonboard.com (perceval.ideasonboard.com\n\t[213.167.242.64])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTPS id 6483E610A6\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tSat, 27 Dec 2025 11:35:07 +0100 (CET)","from pendragon.ideasonboard.com (81-175-209-152.bb.dnainternet.fi\n\t[81.175.209.152])\n\tby perceval.ideasonboard.com (Postfix) with UTF8SMTPSA id 398005B3;\n\tSat, 27 Dec 2025 11:34:53 +0100 (CET)"],"Authentication-Results":"lancelot.ideasonboard.com; dkim=pass (1024-bit key;\n\tunprotected) header.d=ideasonboard.com header.i=@ideasonboard.com\n\theader.b=\"HlXA0oRn\"; dkim-atps=neutral","DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/simple; d=ideasonboard.com;\n\ts=mail; t=1766831693;\n\tbh=kdlF3X/DFzxhWlXEryMfGtxXyNs1/GM00euDhMhFWYs=;\n\th=Date:From:To:Cc:Subject:References:In-Reply-To:From;\n\tb=HlXA0oRnIAD8/aPeRO2UiA2jPW32W9gKWAu3FfmH2Q0AxUw/79EuWBECswWYB0Hqm\n\tLhsb07kkCiJFBYnijj+QjmKZOeq5KiOntBR/coQEHcAcy73pAanpvUXB9IW3M3/kCl\n\t09zXrsYBqpxZTu5FvuH7l5RTcK/+JQjkOb+kHmbw=","Date":"Sat, 27 Dec 2025 12:34:50 +0200","From":"Laurent Pinchart <laurent.pinchart@ideasonboard.com>","To":"Johannes Schneider <johannes.schneider@leica-geosystems.com>","Cc":"libcamera-devel@lists.libcamera.org, stefan.klug@ideasonboard.com,\n\tkieran.bingham@ideasonboard.com","Subject":"Re: [PATCH] fix clang warnings/errors","Message-ID":"<20251227103450.GB4094@pendragon.ideasonboard.com>","References":"<20251227054042.3836430-1-johannes.schneider@leica-geosystems.com>","MIME-Version":"1.0","Content-Type":"text/plain; charset=utf-8","Content-Disposition":"inline","In-Reply-To":"<20251227054042.3836430-1-johannes.schneider@leica-geosystems.com>","X-BeenThere":"libcamera-devel@lists.libcamera.org","X-Mailman-Version":"2.1.29","Precedence":"list","List-Id":"<libcamera-devel.lists.libcamera.org>","List-Unsubscribe":"<https://lists.libcamera.org/options/libcamera-devel>,\n\t<mailto:libcamera-devel-request@lists.libcamera.org?subject=unsubscribe>","List-Archive":"<https://lists.libcamera.org/pipermail/libcamera-devel/>","List-Post":"<mailto:libcamera-devel@lists.libcamera.org>","List-Help":"<mailto:libcamera-devel-request@lists.libcamera.org?subject=help>","List-Subscribe":"<https://lists.libcamera.org/listinfo/libcamera-devel>,\n\t<mailto:libcamera-devel-request@lists.libcamera.org?subject=subscribe>","Errors-To":"libcamera-devel-bounces@lists.libcamera.org","Sender":"\"libcamera-devel\" <libcamera-devel-bounces@lists.libcamera.org>"}},{"id":37447,"web_url":"https://patchwork.libcamera.org/comment/37447/","msgid":"<DB9PR06MB10148FC9526A53734431C1613BCB1A@DB9PR06MB10148.eurprd06.prod.outlook.com>","date":"2025-12-27T10:57:36","subject":"Re: [PATCH] fix clang warnings/errors","submitter":{"id":254,"url":"https://patchwork.libcamera.org/api/people/254/","name":"SCHNEIDER Johannes","email":"johannes.schneider@leica-geosystems.com"},"content":"Hoi,\n\n>\n> Hi Johannes,\n>\n> Thank you for the patch.\n>\n> On Sat, Dec 27, 2025 at 06:40:40AM +0100, Johannes Schneider wrote:\n> > Building libcamera with clang raises some warnings-as-errors.\n>\n> None of those issues are present in the master branch. Are you by any\n> chance working with out-of-tree changes ?\n>\n\nups, that could be, i thought we where at (or even ahead of) master - i should\nhave checked :-$\nwe're using a branch that stefan.klug last updated... so maybe those minor\nthings snuck in there.\n\n>\n> > Signed-off-by: Johannes Schneider <johannes.schneider@leica-geosystems.com>\n> > ---\n> >\n> > Hoi,\n> >\n> > you could/should consider compiling with clang too ;-)\n>\n> We do :-) Our CI pipeline compiles with different versions of gcc and\n> clang. See https://gitlab.freedesktop.org/camera/libcamera/-/jobs/89987029\n> for instance.\n\nnice!\n\nbtw: i stumbled over these complaints while building our meta-layer with\nmeta-clang for an imx8mp = arm64 machine\n\nanyway: all bases are covered then -> sorry for the chatter (-:\n\n>\n> > ---\n> >  include/libcamera/internal/camera_sensor_helper.h | 2 +-\n> >  src/libcamera/converter/converter_v4l2_m2m.cpp    | 2 +-\n> >  src/libcamera/pipeline/rkisp1/rkisp1.cpp          | 1 -\n> >  3 files changed, 2 insertions(+), 3 deletions(-)\n> >\n> > diff --git a/include/libcamera/internal/camera_sensor_helper.h b/include/libcamera/internal/camera_sensor_helper.h\n> > index 1e1e479..1b3217b 100644\n> > --- a/include/libcamera/internal/camera_sensor_helper.h\n> > +++ b/include/libcamera/internal/camera_sensor_helper.h\n> > @@ -61,7 +61,7 @@ public:\n> >\n> >       static std::vector<CameraSensorHelperFactoryBase *> &factories();\n> >\n> > -     const std::string &name() const { return name_; };\n> > +     const std::string &name() const { return name_; }\n> >\n> >  private:\n> >       LIBCAMERA_DISABLE_COPY_AND_MOVE(CameraSensorHelperFactoryBase)\n> > diff --git a/src/libcamera/converter/converter_v4l2_m2m.cpp b/src/libcamera/converter/converter_v4l2_m2m.cpp\n> > index d6b95fb..368320f 100644\n> > --- a/src/libcamera/converter/converter_v4l2_m2m.cpp\n> > +++ b/src/libcamera/converter/converter_v4l2_m2m.cpp\n> > @@ -258,7 +258,7 @@ int V4L2M2MConverter::V4L2M2MStream::applyControls(ControlList &ctrls,\n> >                                                  const V4L2Request *request)\n> >  {\n> >       return m2m_->capture()->setControls(&ctrls, request);\n> > -};\n> > +}\n> >\n> >  /* -----------------------------------------------------------------------------\n> >   * V4L2M2MConverter\n> > diff --git a/src/libcamera/pipeline/rkisp1/rkisp1.cpp b/src/libcamera/pipeline/rkisp1/rkisp1.cpp\n> > index ca9e850..1437318 100644\n> > --- a/src/libcamera/pipeline/rkisp1/rkisp1.cpp\n> > +++ b/src/libcamera/pipeline/rkisp1/rkisp1.cpp\n> > @@ -377,7 +377,6 @@ int RkISP1CameraData::loadTuningFile(const std::string &path)\n> >                       const auto &params = algo[\"Dewarp\"];\n> >\n> >                       canUseDewarper_ = true;\n> > -                     Matrix<double, 3, 3> m;\n> >                       DewarpParms dp;\n> >                       if (params[\"cm\"]) {\n> >                               const auto &cm = params[\"cm\"].get<Matrix<double, 3, 3>>();\n>\n> --\n> Regards,\n>\n> Laurent Pinchart\n>\n\ngruß\nJohannes","headers":{"Return-Path":"<libcamera-devel-bounces@lists.libcamera.org>","X-Original-To":"parsemail@patchwork.libcamera.org","Delivered-To":"parsemail@patchwork.libcamera.org","Received":["from lancelot.ideasonboard.com (lancelot.ideasonboard.com\n\t[92.243.16.209])\n\tby patchwork.libcamera.org (Postfix) with ESMTPS id DBE0BBDCC0\n\tfor <parsemail@patchwork.libcamera.org>;\n\tSat, 27 Dec 2025 10:57:42 +0000 (UTC)","from lancelot.ideasonboard.com (localhost [IPv6:::1])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTP id 0EEAC61FA7;\n\tSat, 27 Dec 2025 11:57:42 +0100 (CET)","from DB3PR0202CU003.outbound.protection.outlook.com\n\t(mail-northeuropeazlp170100001.outbound.protection.outlook.com\n\t[IPv6:2a01:111:f403:c200::1])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTPS id CA330610A6\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tSat, 27 Dec 2025 11:57:39 +0100 (CET)","from DB9PR06MB10148.eurprd06.prod.outlook.com (2603:10a6:10:5e1::9)\n\tby PAXPR06MB7712.eurprd06.prod.outlook.com (2603:10a6:102:153::23)\n\twith Microsoft SMTP Server (version=TLS1_2,\n\tcipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9456.12;\n\tSat, 27 Dec 2025 10:57:37 +0000","from DB9PR06MB10148.eurprd06.prod.outlook.com\n\t([fe80::ab2d:17a7:3c11:b5da]) by\n\tDB9PR06MB10148.eurprd06.prod.outlook.com\n\t([fe80::ab2d:17a7:3c11:b5da%6]) with mapi id 15.20.9456.008;\n\tSat, 27 Dec 2025 10:57:36 +0000"],"Authentication-Results":["lancelot.ideasonboard.com; dkim=pass (1024-bit key;\n\tunprotected) header.d=leica-geosystems.com\n\theader.i=@leica-geosystems.com header.b=\"ZuAarBxR\"; \n\tdkim-atps=neutral","dkim=none (message not signed)\n\theader.d=none; dmarc=none action=none header.from=leica-geosystems.com;"],"ARC-Seal":"i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none;\n\tb=BkdGhLcXwhafjf+IEF1EYd7NVj2jCW3MHbN82scu+zPA6NtqPRsczkVHo4RkAudbwN6y0v7VzGhRe4rI+WTX9pFTOS5fLRZdVoVHoLyI5VhS/n0mJBQfXKxfcAGZAlVq/gtn1OM4iLUMwVlPBITauZQcy9MOFygtMtdkhkWEfDJbLJ2/pQms+t5FHiZr9Lqeqtg9tyZ5Q5oV2Q9Qurx2kJnF1lgyXlhz+dbnFv4iTvoL/H+c46b8yeVbzf7yv5DZPb5EU3hCw4NXrvzMrSqdBETpG3DTYymAfFNrhcDRoYmvcRiJ1mGB6tBor3cbkXXCr7eEtuZ2bwlxI1BBD7nPPA==","ARC-Message-Signature":"i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;\n\ts=arcselector10001;\n\th=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;\n\tbh=EmLWeQanF3wBAlmyykZm2wYZgYhA/3RHSFvHSdIgFW8=;\n\tb=wbIEwHnleAiQ2Hd5alZX2mT90pL72dG4jBQrVPYan5kbEF7jECkWiFVxFjriXKKDgfdI9FDp3tnS2TzaMvtE6kYPKr4z+MGQJt43hIHS8ZAk+Xdy1zJLl3cGp29JIsuBC+cvHEJtMmXCTufPAihB5ZRal3ecVAhLSguUta/v5A4VoopukSfyzlwtoWe12jYo+Om97Fo3M5rmIt+ANdbC0ldSp0kaNav3TAri9ynsK4fKBijpG+EJCgSFyGJ9Qg2DoQ51m2f+IMIg6FUJV8WK2EicZy1fyx59N0pZ2pASAqbQVgzbLfM1VKOlfmKMKw/AJYactmBliCwmH5kzG9OujA==","ARC-Authentication-Results":"i=1; mx.microsoft.com 1; spf=pass\n\tsmtp.mailfrom=leica-geosystems.com; dmarc=pass action=none\n\theader.from=leica-geosystems.com;\n\tdkim=pass header.d=leica-geosystems.com; \n\tarc=none","DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed; d=leica-geosystems.com;\n\ts=selector1;\n\th=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;\n\tbh=EmLWeQanF3wBAlmyykZm2wYZgYhA/3RHSFvHSdIgFW8=;\n\tb=ZuAarBxRn3TurTOQ03tlai3Phz69YzKRCs6y/oddJe4hwQO//9TLlIwMY0Yc0ZaqieF/Jxthv/mfFAm2p9xoMMylZEoVDcuWZAGcCUcLhLIg0xd89BVoTH8M0RzlIUZ+Ux2utEL1ndgM16BtD3ugejLywwi1TtuZhjybu11n1y8=","From":"SCHNEIDER Johannes <johannes.schneider@leica-geosystems.com>","To":"Laurent Pinchart <laurent.pinchart@ideasonboard.com>","CC":"\"libcamera-devel@lists.libcamera.org\"\n\t<libcamera-devel@lists.libcamera.org>, \"stefan.klug@ideasonboard.com\"\n\t<stefan.klug@ideasonboard.com>, \"kieran.bingham@ideasonboard.com\"\n\t<kieran.bingham@ideasonboard.com>","Subject":"Re: [PATCH] fix clang warnings/errors","Thread-Topic":"[PATCH] fix clang warnings/errors","Thread-Index":"AQHcdvNZu/0Ohny2zUa2I2uzPbtv/bU1SvUAgAAE6ls=","Date":"Sat, 27 Dec 2025 10:57:36 +0000","Message-ID":"<DB9PR06MB10148FC9526A53734431C1613BCB1A@DB9PR06MB10148.eurprd06.prod.outlook.com>","References":"<20251227054042.3836430-1-johannes.schneider@leica-geosystems.com>\n\t<20251227103450.GB4094@pendragon.ideasonboard.com>","In-Reply-To":"<20251227103450.GB4094@pendragon.ideasonboard.com>","Accept-Language":"en-US","Content-Language":"en-US","X-MS-Has-Attach":"","X-MS-TNEF-Correlator":"","msip_labels":"","authentication-results":["lancelot.ideasonboard.com; dkim=pass (1024-bit key;\n\tunprotected) header.d=leica-geosystems.com\n\theader.i=@leica-geosystems.com header.b=\"ZuAarBxR\"; \n\tdkim-atps=neutral","dkim=none (message not signed)\n\theader.d=none; dmarc=none action=none header.from=leica-geosystems.com;"],"x-ms-publictraffictype":"Email","x-ms-traffictypediagnostic":"DB9PR06MB10148:EE_|PAXPR06MB7712:EE_","x-ms-office365-filtering-correlation-id":"5958a7c9-1e4e-4047-a039-08de4536befc","x-ms-exchange-senderadcheck":"1","x-ms-exchange-antispam-relay":"0","x-microsoft-antispam":"BCL:0;\n\tARA:13230040|376014|366016|10070799003|1800799024|38070700021; ","x-microsoft-antispam-message-info":"=?iso-8859-1?q?evmU7JrdEpsx87ESq/0B+KK?=\n\t=?iso-8859-1?q?rnI1zRYF2o0oXoAiomXTlf35zmVgyTuzixiPmFgjvNhlKLm+wGW?=\n\t=?iso-8859-1?q?2JsuI/GantAIJr7VA7hJTv71Ag/0YHCEVYrlN83XliOi7EMh3W6?=\n\t=?iso-8859-1?q?hKNsb08xcq5C2qvpaxQpkfHGGk3vIhylYDw/VXMVYoTVB321IAW?=\n\t=?iso-8859-1?q?c5+UxKVh9Yx4rVPAfgJZAjvuzFAuf3ic8ffcjPkfqLTdKYeU2e/?=\n\t=?iso-8859-1?q?yEeNwWJV6kkHeSJGer43X8Sn5WwfVl1J4DvvWalnWeowMBqDD4k?=\n\t=?iso-8859-1?q?avQGA6M8LdSIPsnQ5DFZehWSwfVgUW8zltIrXu43U8y7sf4Q0Pi?=\n\t=?iso-8859-1?q?NdDqbRsath/E3KscxoV0CvtUS/BjoyJq4ykt9Fjjv8m+mz9N9TG?=\n\t=?iso-8859-1?q?7wMiNx4SpEt+jIOfa9NuVP4TRP/VMtu5UFlcsDu2NopcFSvXpZd?=\n\t=?iso-8859-1?q?Ae9sWO5m6utQZP/Mv/5rt7DUub8hq4wu/g8yY8PtryW0jhynRpw?=\n\t=?iso-8859-1?q?oOPi3QfPaIT+tX2hToNk9TR4x/Ve+WFF/bEgx371UWAKwen1ro4?=\n\t=?iso-8859-1?q?av9KdsWEG2AAgraaOIpaU1kwbHGN6xe5lSo26bf9yd+VcH4Q/4L?=\n\t=?iso-8859-1?q?H9f8yaV/s3iVoRcnWkDQ+NwPbn/tjvWNlzho33e4YwQ+2yiT375?=\n\t=?iso-8859-1?q?03DA/3W4B8peo7nFYmyETLR2vwPbk4baFQDe+b6XUUtKR/sgkA2?=\n\t=?iso-8859-1?q?KT4ptsBSET010JzSwctV8eyvQeQNuJbXqnagW2+6TR+jILsy/ix?=\n\t=?iso-8859-1?q?kTqA+upFPoRApnate5aX0u4oIKvYUSSczpvr1DyG+TtCA1nPjDr?=\n\t=?iso-8859-1?q?EQY2LM+Eph2HzccPNhJ1YI9SBEml7PpPm+E1QiBMziRWtN85Tcl?=\n\t=?iso-8859-1?q?6j5MSeyzh+OJvIEqU/DAIU0QIQhhGAH/pGGa3sF/GjhYTpQeLEk?=\n\t=?iso-8859-1?q?TrT0bDf8S1wVHjEZKx+ZVGxZZPOpjt/hkfEGYYKpqKNkzcsyxsy?=\n\t=?iso-8859-1?q?z0X4096IwQX7otIgnw3sZ4FbcmsXdyLKas065lNuNTLKhmCUZ8P?=\n\t=?iso-8859-1?q?mYdCDlP0K1kTjzZ/1l5rBshKTWBW6N342YiGLNEQzCnMdL+LGhu?=\n\t=?iso-8859-1?q?W5Bl2IDTxehsMbwPXrsHPnSXQRsfoKSQ4yMyjWAhUNA2Wx/37xY?=\n\t=?iso-8859-1?q?vXb2BDKfX1ISs6+YUAFpuIxQJ3ePhhRCFJiAQWcqJy93j7sPfQ4?=\n\t=?iso-8859-1?q?8uWoHx+Fo9bWYJ28sW04XknCpOJ4VKnDw+RwAeZoPNFXQSuEPXc?=\n\t=?iso-8859-1?q?YWXRGjlfaNyrbOEBw8YJwFSLD5ixpt/M8t2MRCFcSPn83BgnfDK?=\n\t=?iso-8859-1?q?NpBEX6WbOcGX1RP5+9mrnjW6XL0zd5r+A/4yK/jzoZut/7APU10?=\n\t=?iso-8859-1?q?T0YVlJqJISVpNJa8gRvVwpDJw8QbivZZPblKvk6AKZMOXEYwmTz?=\n\t=?iso-8859-1?q?O/eUxBS4ysGhOVDFShngkmI6q7wsgKJRmQulzqofgxWelXzoZf6?=\n\t=?iso-8859-1?q?gXQabNqLqeKzgKCj+Lf3ImD6Jt4mCnUeQMG008fWVUh2ted91vR?=\n\t=?iso-8859-1?q?zeKrfn9su0ttPpM2YScidiAkTt/Eg8IjT4IsVcmopVG7VySaW4t?=\n\t=?iso-8859-1?q?cl2GBF6snMRQqOgKt5fJpp3pYetznMeofr?=","x-forefront-antispam-report":"CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:;\n\tIPV:NLI; SFV:NSPM; H:DB9PR06MB10148.eurprd06.prod.outlook.com; PTR:;\n\tCAT:NONE; \n\tSFS:(13230040)(376014)(366016)(10070799003)(1800799024)(38070700021);\n\tDIR:OUT; SFP:1101; ","x-ms-exchange-antispam-messagedata-chunkcount":"2","x-ms-exchange-antispam-messagedata-0":"=?iso-8859-1?q?SdQTZ4NwiPP/502jpHhN?=\n\t=?iso-8859-1?q?/XlB+K5AJ8TKF803BjRqtWBtt9iPGq9WJ+oFCnTuJ/oVtiwsy1B?=\n\t=?iso-8859-1?q?WJKX40dAM+PlOZ+i8KecGjMMYg3BJFv+pWJkMyxahb/ZnBp2AFn?=\n\t=?iso-8859-1?q?a5AwGqYhREFyXinFG41aPZuRDIGYAfzFF4NuV7XNCV8TSXKs0Nl?=\n\t=?iso-8859-1?q?QJhR5F3NFJcJqe2dYBCfh1DPYOKAQUv9Z6plq28+Q95C8oPqanB?=\n\t=?iso-8859-1?q?0ETpuIk2nS3MNW9WIO9CwSgsrFOnl+pKspHXaNKntWKWAwgUG7b?=\n\t=?iso-8859-1?q?dMHZm9VNOdzPt4rfjnE4gZA4k7Q9xzHkvAv9PDp5ixkMsrt7D5p?=\n\t=?iso-8859-1?q?LBcxBxWdscS3sDUpMOEqZBd49mFi7vCA3/uAJMtdUPEQWgHXwFZ?=\n\t=?iso-8859-1?q?jiUAQA32ZGWnt7zYpaLCqpOvmukbhWhqqs5gTvvtwmOcbyJ3AN/?=\n\t=?iso-8859-1?q?C/WbE8xucK91dCb6BeqKw95puUkJvZQJj4hYXiorG+ASbpCYMDV?=\n\t=?iso-8859-1?q?1bqLkRqdiS1/lUSkOeDGhvmCsE4+ZTYl7EMieFrKBNcsvqZU28S?=\n\t=?iso-8859-1?q?45b5EFQLapuT5x4IWR77PVL/OIVotMhveSsuN/bpXNIiFBI7/pe?=\n\t=?iso-8859-1?q?gRMnqvn9ubyJGNJ/F6223d/m148cw2aijwrUUJL17fqTfiE7He8?=\n\t=?iso-8859-1?q?bVsFd3apiCm54n5GS2jbCryY8WfRt2SgaZiE/v8tihaacCfd/xq?=\n\t=?iso-8859-1?q?Mz88I5ISiLmfRUI5hgWZ1eHcZY8nfMzcQDp4CW0bylF8FkwyEC+?=\n\t=?iso-8859-1?q?by3OmQVlrUyqvJmQLiIJG1HMzaIUYkv+wrgBB307QK7zJoS0RMM?=\n\t=?iso-8859-1?q?+wT9EyN8Y2DpKRGZYSsA+eAsGCQEt9WQadTdCUGH56vkEYVPYD2?=\n\t=?iso-8859-1?q?+EALKFe+Yn6LKm4ZSVD0emRJMGO7uqTXq/txdPQbIuonHRnzkiZ?=\n\t=?iso-8859-1?q?ZAxTfJj4ttZGbAmTxQBla5ZaLS9zDMwxUYCquMl3Gomlcjt7ku4?=\n\t=?iso-8859-1?q?bQcLUbDKGeRqrv5ND+vv3MscM6HA/kyh8cEJlaTgN01B5p3s23T?=\n\t=?iso-8859-1?q?AF2ATQJ0vwx+jyCDJQnukkvjUaXiuEmykmHY9vt9wKUn1VrvNhX?=\n\t=?iso-8859-1?q?qYF9A4p05RQu/YpFvPcnNO7hj/Oqhvr8ECGw9hdDS97J5TXTO5z?=\n\t=?iso-8859-1?q?aUJsrZZu+Nr9xSFOzRUck05QO8ROxEWOGO687xVcnnEg17gwoEk?=\n\t=?iso-8859-1?q?KGo8qI35LQ3iyEQgteYAXzn6qL/ltn/zGZvxdNUlWZ2kDlvdseu?=\n\t=?iso-8859-1?q?dQSalaOAqjyKKB57HfNzSbHHai3r2jJSL6t3Lljt0UvDQU4H961?=\n\t=?iso-8859-1?q?okluHj1UPYGRww72H27cdKY3z7WNqUh25KKOTI8w0NjyLC1lu78?=\n\t=?iso-8859-1?q?bzItJQvfwBZ+XhJLYk+MrDlGGVGFRevuZum+7PTCRSuAFi9sofj?=\n\t=?iso-8859-1?q?mvc95wqxGDgurWyt5gOMXvNrxkchtz7JQaK43qIETT08+fHDAJT?=\n\t=?iso-8859-1?q?uvt9nYY9m73wccx0ZAD/18mW1wx1cqF7Doj3iazJTa6L9tD5PQO?=\n\t=?iso-8859-1?q?mq35U2Xgn2OrtYTOoZPs6OaVw4u3JCdMPfUuxyoGZtQ7Rz4Lk5g?=\n\t=?iso-8859-1?q?KpoCF8aBBq7o/JBNKoU6Ds6ygVJKzQvia5twqEPvb/M0aI5HiQy?=\n\t=?iso-8859-1?q?IOY1k3Q3xUBaFIvdsy1h2L70iR1SRLJQN21yXgqi8APXx8prve+?=\n\t=?iso-8859-1?q?VOv/xy03e/rdlE/1CUMpiLbfQ9INGKeg/zAkvAtCnkq3ziHToRG?=\n\t=?iso-8859-1?q?KNoXV3gK45olfwIwjPqarcOmlVw9UMNyHfN3Ufk6zlirDxaMBl3?=\n\t=?iso-8859-1?q?Y37d644elb8qavFB+vYEjNtmhoYUj51Zp4LvYb5DYVQ7RsamwHP?=\n\t=?iso-8859-1?q?QckU7GsfBV0hs5rfSWVN2MeKK4LWWhcQE8+WVpxCFJNlXI?=","x-ms-exchange-antispam-messagedata-1":"Zpqn9N3s7c59EvDgshm0JLZFf8oElT8ipMczULqSMNYNG6MB1DjwsGbM","Content-Type":"text/plain; charset=\"iso-8859-1\"","Content-Transfer-Encoding":"quoted-printable","MIME-Version":"1.0","X-OriginatorOrg":"leica-geosystems.com","X-MS-Exchange-CrossTenant-AuthAs":"Internal","X-MS-Exchange-CrossTenant-AuthSource":"DB9PR06MB10148.eurprd06.prod.outlook.com","X-MS-Exchange-CrossTenant-Network-Message-Id":"5958a7c9-1e4e-4047-a039-08de4536befc","X-MS-Exchange-CrossTenant-originalarrivaltime":"27 Dec 2025 10:57:36.7653\n\t(UTC)","X-MS-Exchange-CrossTenant-fromentityheader":"Hosted","X-MS-Exchange-CrossTenant-id":"1b16ab3e-b8f6-4fe3-9f3e-2db7fe549f6a","X-MS-Exchange-CrossTenant-mailboxtype":"HOSTED","X-MS-Exchange-CrossTenant-userprincipalname":"YG3WrOoEzb6GoBErbKHWBEfws9ObuAzjUH3dOucaSB8EhQ3bDtbNn338UpdnnxfgX/vPeLWG/UH8N4HoL7mn3FfAwAlflborZyIft1bj3YDQ8Ks9dwwFPkTe37s7w63z","X-MS-Exchange-Transport-CrossTenantHeadersStamped":"PAXPR06MB7712","X-BeenThere":"libcamera-devel@lists.libcamera.org","X-Mailman-Version":"2.1.29","Precedence":"list","List-Id":"<libcamera-devel.lists.libcamera.org>","List-Unsubscribe":"<https://lists.libcamera.org/options/libcamera-devel>,\n\t<mailto:libcamera-devel-request@lists.libcamera.org?subject=unsubscribe>","List-Archive":"<https://lists.libcamera.org/pipermail/libcamera-devel/>","List-Post":"<mailto:libcamera-devel@lists.libcamera.org>","List-Help":"<mailto:libcamera-devel-request@lists.libcamera.org?subject=help>","List-Subscribe":"<https://lists.libcamera.org/listinfo/libcamera-devel>,\n\t<mailto:libcamera-devel-request@lists.libcamera.org?subject=subscribe>","Errors-To":"libcamera-devel-bounces@lists.libcamera.org","Sender":"\"libcamera-devel\" <libcamera-devel-bounces@lists.libcamera.org>"}},{"id":37448,"web_url":"https://patchwork.libcamera.org/comment/37448/","msgid":"<20251227105929.GE4094@pendragon.ideasonboard.com>","date":"2025-12-27T10:59:29","subject":"Re: [PATCH] fix clang warnings/errors","submitter":{"id":2,"url":"https://patchwork.libcamera.org/api/people/2/","name":"Laurent Pinchart","email":"laurent.pinchart@ideasonboard.com"},"content":"On Sat, Dec 27, 2025 at 10:57:36AM +0000, SCHNEIDER Johannes wrote:\n> > On Sat, Dec 27, 2025 at 06:40:40AM +0100, Johannes Schneider wrote:\n> > > Building libcamera with clang raises some warnings-as-errors.\n> >\n> > None of those issues are present in the master branch. Are you by any\n> > chance working with out-of-tree changes ?\n> \n> ups, that could be, i thought we where at (or even ahead of) master - i should\n> have checked :-$\n> we're using a branch that stefan.klug last updated... so maybe those minor\n> things snuck in there.\n\nI'm sure Stefan will fix this before upstreaming the changes. Or he will\nbe told off by CI :-)\n\n> > > Signed-off-by: Johannes Schneider <johannes.schneider@leica-geosystems.com>\n> > > ---\n> > >\n> > > Hoi,\n> > >\n> > > you could/should consider compiling with clang too ;-)\n> >\n> > We do :-) Our CI pipeline compiles with different versions of gcc and\n> > clang. See https://gitlab.freedesktop.org/camera/libcamera/-/jobs/89987029\n> > for instance.\n> \n> nice!\n> \n> btw: i stumbled over these complaints while building our meta-layer with\n> meta-clang for an imx8mp = arm64 machine\n> \n> anyway: all bases are covered then -> sorry for the chatter (-:\n\nNo worries.\n\n> > > ---\n> > >  include/libcamera/internal/camera_sensor_helper.h | 2 +-\n> > >  src/libcamera/converter/converter_v4l2_m2m.cpp    | 2 +-\n> > >  src/libcamera/pipeline/rkisp1/rkisp1.cpp          | 1 -\n> > >  3 files changed, 2 insertions(+), 3 deletions(-)\n> > >\n> > > diff --git a/include/libcamera/internal/camera_sensor_helper.h b/include/libcamera/internal/camera_sensor_helper.h\n> > > index 1e1e479..1b3217b 100644\n> > > --- a/include/libcamera/internal/camera_sensor_helper.h\n> > > +++ b/include/libcamera/internal/camera_sensor_helper.h\n> > > @@ -61,7 +61,7 @@ public:\n> > >\n> > >       static std::vector<CameraSensorHelperFactoryBase *> &factories();\n> > >\n> > > -     const std::string &name() const { return name_; };\n> > > +     const std::string &name() const { return name_; }\n> > >\n> > >  private:\n> > >       LIBCAMERA_DISABLE_COPY_AND_MOVE(CameraSensorHelperFactoryBase)\n> > > diff --git a/src/libcamera/converter/converter_v4l2_m2m.cpp b/src/libcamera/converter/converter_v4l2_m2m.cpp\n> > > index d6b95fb..368320f 100644\n> > > --- a/src/libcamera/converter/converter_v4l2_m2m.cpp\n> > > +++ b/src/libcamera/converter/converter_v4l2_m2m.cpp\n> > > @@ -258,7 +258,7 @@ int V4L2M2MConverter::V4L2M2MStream::applyControls(ControlList &ctrls,\n> > >                                                  const V4L2Request *request)\n> > >  {\n> > >       return m2m_->capture()->setControls(&ctrls, request);\n> > > -};\n> > > +}\n> > >\n> > >  /* -----------------------------------------------------------------------------\n> > >   * V4L2M2MConverter\n> > > diff --git a/src/libcamera/pipeline/rkisp1/rkisp1.cpp b/src/libcamera/pipeline/rkisp1/rkisp1.cpp\n> > > index ca9e850..1437318 100644\n> > > --- a/src/libcamera/pipeline/rkisp1/rkisp1.cpp\n> > > +++ b/src/libcamera/pipeline/rkisp1/rkisp1.cpp\n> > > @@ -377,7 +377,6 @@ int RkISP1CameraData::loadTuningFile(const std::string &path)\n> > >                       const auto &params = algo[\"Dewarp\"];\n> > >\n> > >                       canUseDewarper_ = true;\n> > > -                     Matrix<double, 3, 3> m;\n> > >                       DewarpParms dp;\n> > >                       if (params[\"cm\"]) {\n> > >                               const auto &cm = params[\"cm\"].get<Matrix<double, 3, 3>>();","headers":{"Return-Path":"<libcamera-devel-bounces@lists.libcamera.org>","X-Original-To":"parsemail@patchwork.libcamera.org","Delivered-To":"parsemail@patchwork.libcamera.org","Received":["from lancelot.ideasonboard.com (lancelot.ideasonboard.com\n\t[92.243.16.209])\n\tby patchwork.libcamera.org (Postfix) with ESMTPS id 9EE0BBDCC0\n\tfor <parsemail@patchwork.libcamera.org>;\n\tSat, 27 Dec 2025 10:59:47 +0000 (UTC)","from lancelot.ideasonboard.com (localhost [IPv6:::1])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTP id D1B9061FA2;\n\tSat, 27 Dec 2025 11:59:46 +0100 (CET)","from perceval.ideasonboard.com (perceval.ideasonboard.com\n\t[IPv6:2001:4b98:dc2:55:216:3eff:fef7:d647])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTPS id 35186610A6\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tSat, 27 Dec 2025 11:59:45 +0100 (CET)","from pendragon.ideasonboard.com (81-175-209-152.bb.dnainternet.fi\n\t[81.175.209.152])\n\tby perceval.ideasonboard.com (Postfix) with UTF8SMTPSA id 6896924A;\n\tSat, 27 Dec 2025 11:59:31 +0100 (CET)"],"Authentication-Results":"lancelot.ideasonboard.com; dkim=pass (1024-bit key;\n\tunprotected) header.d=ideasonboard.com header.i=@ideasonboard.com\n\theader.b=\"oelMvRkp\"; dkim-atps=neutral","DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/simple; d=ideasonboard.com;\n\ts=mail; t=1766833171;\n\tbh=8ak5JM7hrn8fxYJuAXfd5dUCt6oED5z/cpdKB3yBEq0=;\n\th=Date:From:To:Cc:Subject:References:In-Reply-To:From;\n\tb=oelMvRkpjg+uzkW5v9dNAqOj4zvaE8YQ9JC5CKqtpJiyaw2U8qxPKIE1WgsLySY6h\n\trvQcELLEmu4jyCxQPWuCcAeLRo9lfm0lamtupV3MIRbtUaVSHhawCL+ZblDjKW+82e\n\tpEhf88D+xPKYpi9GTq18R8iHjXKt6ITEq+xeVG4w=","Date":"Sat, 27 Dec 2025 12:59:29 +0200","From":"Laurent Pinchart <laurent.pinchart@ideasonboard.com>","To":"SCHNEIDER Johannes <johannes.schneider@leica-geosystems.com>","Cc":"\"libcamera-devel@lists.libcamera.org\"\n\t<libcamera-devel@lists.libcamera.org>, \n\t\"stefan.klug@ideasonboard.com\" <stefan.klug@ideasonboard.com>,\n\t\"kieran.bingham@ideasonboard.com\" <kieran.bingham@ideasonboard.com>","Subject":"Re: [PATCH] fix clang warnings/errors","Message-ID":"<20251227105929.GE4094@pendragon.ideasonboard.com>","References":"<20251227054042.3836430-1-johannes.schneider@leica-geosystems.com>\n\t<20251227103450.GB4094@pendragon.ideasonboard.com>\n\t<DB9PR06MB10148FC9526A53734431C1613BCB1A@DB9PR06MB10148.eurprd06.prod.outlook.com>","MIME-Version":"1.0","Content-Type":"text/plain; charset=utf-8","Content-Disposition":"inline","In-Reply-To":"<DB9PR06MB10148FC9526A53734431C1613BCB1A@DB9PR06MB10148.eurprd06.prod.outlook.com>","X-BeenThere":"libcamera-devel@lists.libcamera.org","X-Mailman-Version":"2.1.29","Precedence":"list","List-Id":"<libcamera-devel.lists.libcamera.org>","List-Unsubscribe":"<https://lists.libcamera.org/options/libcamera-devel>,\n\t<mailto:libcamera-devel-request@lists.libcamera.org?subject=unsubscribe>","List-Archive":"<https://lists.libcamera.org/pipermail/libcamera-devel/>","List-Post":"<mailto:libcamera-devel@lists.libcamera.org>","List-Help":"<mailto:libcamera-devel-request@lists.libcamera.org?subject=help>","List-Subscribe":"<https://lists.libcamera.org/listinfo/libcamera-devel>,\n\t<mailto:libcamera-devel-request@lists.libcamera.org?subject=subscribe>","Errors-To":"libcamera-devel-bounces@lists.libcamera.org","Sender":"\"libcamera-devel\" <libcamera-devel-bounces@lists.libcamera.org>"}},{"id":37449,"web_url":"https://patchwork.libcamera.org/comment/37449/","msgid":"<1fa44e66-d144-4587-aa93-cfa2f95a3922@protonmail.com>","date":"2025-12-27T13:17:11","subject":"Re: [PATCH] fix clang warnings/errors","submitter":{"id":133,"url":"https://patchwork.libcamera.org/api/people/133/","name":"Pőcze Barnabás","email":"pobrn@protonmail.com"},"content":"Hi\n\n2025. 12. 27. 11:34 keltezéssel, Laurent Pinchart írta:\n> Hi Johannes,\n> \n> Thank you for the patch.\n> \n> On Sat, Dec 27, 2025 at 06:40:40AM +0100, Johannes Schneider wrote:\n>> Building libcamera with clang raises some warnings-as-errors.\n> \n> None of those issues are present in the master branch. Are you by any\n> chance working with out-of-tree changes ?\n> \n>> Signed-off-by: Johannes Schneider <johannes.schneider@leica-geosystems.com>\n>> ---\n>>\n>> Hoi,\n>>\n>> you could/should consider compiling with clang too ;-)\n> \n> We do :-) Our CI pipeline compiles with different versions of gcc and\n> clang. See https://gitlab.freedesktop.org/camera/libcamera/-/jobs/89987029\n> for instance.\n\nThere should probably be newer clang there. libcamera hasn't been compile-able\nwith newer clang for a while now (I have clang 21.1.6) and I get:\n\n   -Werror,-Winconsistent-missing-override\n\nin multiple places.\n\n> \n>> ---\n>>   include/libcamera/internal/camera_sensor_helper.h | 2 +-\n>>   src/libcamera/converter/converter_v4l2_m2m.cpp    | 2 +-\n>>   src/libcamera/pipeline/rkisp1/rkisp1.cpp          | 1 -\n>>   3 files changed, 2 insertions(+), 3 deletions(-)\n>>\n>> diff --git a/include/libcamera/internal/camera_sensor_helper.h b/include/libcamera/internal/camera_sensor_helper.h\n>> index 1e1e479..1b3217b 100644\n>> --- a/include/libcamera/internal/camera_sensor_helper.h\n>> +++ b/include/libcamera/internal/camera_sensor_helper.h\n>> @@ -61,7 +61,7 @@ public:\n>>\n>>   \tstatic std::vector<CameraSensorHelperFactoryBase *> &factories();\n>>\n>> -\tconst std::string &name() const { return name_; };\n>> +\tconst std::string &name() const { return name_; }\n>>\n>>   private:\n>>   \tLIBCAMERA_DISABLE_COPY_AND_MOVE(CameraSensorHelperFactoryBase)\n>> diff --git a/src/libcamera/converter/converter_v4l2_m2m.cpp b/src/libcamera/converter/converter_v4l2_m2m.cpp\n>> index d6b95fb..368320f 100644\n>> --- a/src/libcamera/converter/converter_v4l2_m2m.cpp\n>> +++ b/src/libcamera/converter/converter_v4l2_m2m.cpp\n>> @@ -258,7 +258,7 @@ int V4L2M2MConverter::V4L2M2MStream::applyControls(ControlList &ctrls,\n>>   \t\t\t\t\t\t   const V4L2Request *request)\n>>   {\n>>   \treturn m2m_->capture()->setControls(&ctrls, request);\n>> -};\n>> +}\n>>\n>>   /* -----------------------------------------------------------------------------\n>>    * V4L2M2MConverter\n>> diff --git a/src/libcamera/pipeline/rkisp1/rkisp1.cpp b/src/libcamera/pipeline/rkisp1/rkisp1.cpp\n>> index ca9e850..1437318 100644\n>> --- a/src/libcamera/pipeline/rkisp1/rkisp1.cpp\n>> +++ b/src/libcamera/pipeline/rkisp1/rkisp1.cpp\n>> @@ -377,7 +377,6 @@ int RkISP1CameraData::loadTuningFile(const std::string &path)\n>>   \t\t\tconst auto &params = algo[\"Dewarp\"];\n>>\n>>   \t\t\tcanUseDewarper_ = true;\n>> -\t\t\tMatrix<double, 3, 3> m;\n>>   \t\t\tDewarpParms dp;\n>>   \t\t\tif (params[\"cm\"]) {\n>>   \t\t\t\tconst auto &cm = params[\"cm\"].get<Matrix<double, 3, 3>>();\n> \n> --\n> Regards,\n> \n> Laurent Pinchart","headers":{"Return-Path":"<libcamera-devel-bounces@lists.libcamera.org>","X-Original-To":"parsemail@patchwork.libcamera.org","Delivered-To":"parsemail@patchwork.libcamera.org","Received":["from lancelot.ideasonboard.com (lancelot.ideasonboard.com\n\t[92.243.16.209])\n\tby patchwork.libcamera.org (Postfix) with ESMTPS id 47ACCC323E\n\tfor <parsemail@patchwork.libcamera.org>;\n\tSat, 27 Dec 2025 13:17:20 +0000 (UTC)","from lancelot.ideasonboard.com (localhost [IPv6:::1])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTP id 2A6F661FAE;\n\tSat, 27 Dec 2025 14:17:19 +0100 (CET)","from mail-244122.protonmail.ch (mail-244122.protonmail.ch\n\t[109.224.244.122])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTPS id 8BEC961A35\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tSat, 27 Dec 2025 14:17:17 +0100 (CET)"],"Authentication-Results":"lancelot.ideasonboard.com; dkim=pass (2048-bit key;\n\tunprotected) header.d=protonmail.com header.i=@protonmail.com\n\theader.b=\"XQebevqa\"; dkim-atps=neutral","DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed; d=protonmail.com;\n\ts=protonmail3; t=1766841435; x=1767100635;\n\tbh=W7nu9C7KYsAzDlUNW41/pWAaBun0h3XlQ62FHef+mXc=;\n\th=Date:To:From:Cc:Subject:Message-ID:In-Reply-To:References:\n\tFeedback-ID:From:To:Cc:Date:Subject:Reply-To:Feedback-ID:\n\tMessage-ID:BIMI-Selector;\n\tb=XQebevqaCyxxLplKtk1WJuxF9l2Zs36/h0CyuPnD7Ur4SK0U/ywJykPOT+8Npfytu\n\tgfyW2/8QqWX1fysGAKqD1PY6tpzbE2uQubQHBnaaijvl47lfYgmGXaTVuwj/2dvc+u\n\tCg4723Mhg2rILT1GnVH+OD3stzvGlKldXjfEJqvwpzqyBOgFrsEwxH+3WKZKerrGbp\n\tlaudiYLF0gzvOhAVpus0QNq9rpJowlKLVTN618yHWIbdEKW5/Ra/OW7WR0UqKcPgON\n\tQVUU6uFyOp+mmYdiGpG6aS1kFSqgY4rOLfYn6zwq00XCRFuW8uHI1k1pKL6NgYtcNh\n\tpvm52rmpXeFDg==","Date":"Sat, 27 Dec 2025 13:17:11 +0000","To":"Laurent Pinchart <laurent.pinchart@ideasonboard.com>,\n\tJohannes Schneider <johannes.schneider@leica-geosystems.com>","From":"=?utf-8?q?P=C5=91cze_Barnab=C3=A1s?= <pobrn@protonmail.com>","Cc":"libcamera-devel@lists.libcamera.org, stefan.klug@ideasonboard.com,\n\tkieran.bingham@ideasonboard.com","Subject":"Re: [PATCH] fix clang warnings/errors","Message-ID":"<1fa44e66-d144-4587-aa93-cfa2f95a3922@protonmail.com>","In-Reply-To":"<20251227103450.GB4094@pendragon.ideasonboard.com>","References":"<20251227054042.3836430-1-johannes.schneider@leica-geosystems.com>\n\t<20251227103450.GB4094@pendragon.ideasonboard.com>","Feedback-ID":"20568564:user:proton","X-Pm-Message-ID":"676b04912942b895a0811feecb7b7dae46440431","MIME-Version":"1.0","Content-Type":"text/plain; charset=utf-8","Content-Transfer-Encoding":"quoted-printable","X-BeenThere":"libcamera-devel@lists.libcamera.org","X-Mailman-Version":"2.1.29","Precedence":"list","List-Id":"<libcamera-devel.lists.libcamera.org>","List-Unsubscribe":"<https://lists.libcamera.org/options/libcamera-devel>,\n\t<mailto:libcamera-devel-request@lists.libcamera.org?subject=unsubscribe>","List-Archive":"<https://lists.libcamera.org/pipermail/libcamera-devel/>","List-Post":"<mailto:libcamera-devel@lists.libcamera.org>","List-Help":"<mailto:libcamera-devel-request@lists.libcamera.org?subject=help>","List-Subscribe":"<https://lists.libcamera.org/listinfo/libcamera-devel>,\n\t<mailto:libcamera-devel-request@lists.libcamera.org?subject=subscribe>","Errors-To":"libcamera-devel-bounces@lists.libcamera.org","Sender":"\"libcamera-devel\" <libcamera-devel-bounces@lists.libcamera.org>"}},{"id":37450,"web_url":"https://patchwork.libcamera.org/comment/37450/","msgid":"<20251227134716.GB21104@pendragon.ideasonboard.com>","date":"2025-12-27T13:47:16","subject":"Re: [PATCH] fix clang warnings/errors","submitter":{"id":2,"url":"https://patchwork.libcamera.org/api/people/2/","name":"Laurent Pinchart","email":"laurent.pinchart@ideasonboard.com"},"content":"On Sat, Dec 27, 2025 at 01:17:11PM +0000, Barnabás Pőcze wrote:\n> 2025. 12. 27. 11:34 keltezéssel, Laurent Pinchart írta:\n> > On Sat, Dec 27, 2025 at 06:40:40AM +0100, Johannes Schneider wrote:\n> >> Building libcamera with clang raises some warnings-as-errors.\n> > \n> > None of those issues are present in the master branch. Are you by any\n> > chance working with out-of-tree changes ?\n> > \n> >> Signed-off-by: Johannes Schneider <johannes.schneider@leica-geosystems.com>\n> >> ---\n> >>\n> >> Hoi,\n> >>\n> >> you could/should consider compiling with clang too ;-)\n> > \n> > We do :-) Our CI pipeline compiles with different versions of gcc and\n> > clang. See https://gitlab.freedesktop.org/camera/libcamera/-/jobs/89987029\n> > for instance.\n> \n> There should probably be newer clang there. libcamera hasn't been compile-able\n> with newer clang for a while now (I have clang 21.1.6) and I get:\n> \n>    -Werror,-Winconsistent-missing-override\n> \n> in multiple places.\n\nWe could try to add a Debian Forky container, it ships clang 21.\n\n> >> ---\n> >>   include/libcamera/internal/camera_sensor_helper.h | 2 +-\n> >>   src/libcamera/converter/converter_v4l2_m2m.cpp    | 2 +-\n> >>   src/libcamera/pipeline/rkisp1/rkisp1.cpp          | 1 -\n> >>   3 files changed, 2 insertions(+), 3 deletions(-)\n> >>\n> >> diff --git a/include/libcamera/internal/camera_sensor_helper.h b/include/libcamera/internal/camera_sensor_helper.h\n> >> index 1e1e479..1b3217b 100644\n> >> --- a/include/libcamera/internal/camera_sensor_helper.h\n> >> +++ b/include/libcamera/internal/camera_sensor_helper.h\n> >> @@ -61,7 +61,7 @@ public:\n> >>\n> >>   \tstatic std::vector<CameraSensorHelperFactoryBase *> &factories();\n> >>\n> >> -\tconst std::string &name() const { return name_; };\n> >> +\tconst std::string &name() const { return name_; }\n> >>\n> >>   private:\n> >>   \tLIBCAMERA_DISABLE_COPY_AND_MOVE(CameraSensorHelperFactoryBase)\n> >> diff --git a/src/libcamera/converter/converter_v4l2_m2m.cpp b/src/libcamera/converter/converter_v4l2_m2m.cpp\n> >> index d6b95fb..368320f 100644\n> >> --- a/src/libcamera/converter/converter_v4l2_m2m.cpp\n> >> +++ b/src/libcamera/converter/converter_v4l2_m2m.cpp\n> >> @@ -258,7 +258,7 @@ int V4L2M2MConverter::V4L2M2MStream::applyControls(ControlList &ctrls,\n> >>   \t\t\t\t\t\t   const V4L2Request *request)\n> >>   {\n> >>   \treturn m2m_->capture()->setControls(&ctrls, request);\n> >> -};\n> >> +}\n> >>\n> >>   /* -----------------------------------------------------------------------------\n> >>    * V4L2M2MConverter\n> >> diff --git a/src/libcamera/pipeline/rkisp1/rkisp1.cpp b/src/libcamera/pipeline/rkisp1/rkisp1.cpp\n> >> index ca9e850..1437318 100644\n> >> --- a/src/libcamera/pipeline/rkisp1/rkisp1.cpp\n> >> +++ b/src/libcamera/pipeline/rkisp1/rkisp1.cpp\n> >> @@ -377,7 +377,6 @@ int RkISP1CameraData::loadTuningFile(const std::string &path)\n> >>   \t\t\tconst auto &params = algo[\"Dewarp\"];\n> >>\n> >>   \t\t\tcanUseDewarper_ = true;\n> >> -\t\t\tMatrix<double, 3, 3> m;\n> >>   \t\t\tDewarpParms dp;\n> >>   \t\t\tif (params[\"cm\"]) {\n> >>   \t\t\t\tconst auto &cm = params[\"cm\"].get<Matrix<double, 3, 3>>();","headers":{"Return-Path":"<libcamera-devel-bounces@lists.libcamera.org>","X-Original-To":"parsemail@patchwork.libcamera.org","Delivered-To":"parsemail@patchwork.libcamera.org","Received":["from lancelot.ideasonboard.com (lancelot.ideasonboard.com\n\t[92.243.16.209])\n\tby patchwork.libcamera.org (Postfix) with ESMTPS id 3C56CBDCC0\n\tfor <parsemail@patchwork.libcamera.org>;\n\tSat, 27 Dec 2025 13:47:35 +0000 (UTC)","from lancelot.ideasonboard.com (localhost [IPv6:::1])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTP id 7766B61FAF;\n\tSat, 27 Dec 2025 14:47:34 +0100 (CET)","from perceval.ideasonboard.com (perceval.ideasonboard.com\n\t[213.167.242.64])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTPS id F30D961A35\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tSat, 27 Dec 2025 14:47:32 +0100 (CET)","from pendragon.ideasonboard.com (81-175-209-152.bb.dnainternet.fi\n\t[81.175.209.152])\n\tby perceval.ideasonboard.com (Postfix) with UTF8SMTPSA id EDA45BB;\n\tSat, 27 Dec 2025 14:47:18 +0100 (CET)"],"Authentication-Results":"lancelot.ideasonboard.com; dkim=pass (1024-bit key;\n\tunprotected) header.d=ideasonboard.com header.i=@ideasonboard.com\n\theader.b=\"CybbY97I\"; dkim-atps=neutral","DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/simple; d=ideasonboard.com;\n\ts=mail; t=1766843239;\n\tbh=5/407yLkjzVGw+NYNyYGGx1p6cs44X0e7EsWQyrYOtg=;\n\th=Date:From:To:Cc:Subject:References:In-Reply-To:From;\n\tb=CybbY97IJJ2wuMl0k/Kxlf7uUbQm0bOW3QSlbWqDtCeX2OIii6CUmfm6AkcfAjbZ6\n\tpATcw6hjegL1p+9I5f5fTvLMw4H3Z3vuMPpKC8eqDfpOFkQ8IQ/HxdZ7abelwndgUb\n\tVzeQxqoiqFOujPKXwD6woRV7U8/jbslmAOmgAcK8=","Date":"Sat, 27 Dec 2025 15:47:16 +0200","From":"Laurent Pinchart <laurent.pinchart@ideasonboard.com>","To":"=?utf-8?q?P=C5=91cze_Barnab=C3=A1s?= <pobrn@protonmail.com>","Cc":"Johannes Schneider <johannes.schneider@leica-geosystems.com>,\n\tlibcamera-devel@lists.libcamera.org, stefan.klug@ideasonboard.com,\n\tkieran.bingham@ideasonboard.com","Subject":"Re: [PATCH] fix clang warnings/errors","Message-ID":"<20251227134716.GB21104@pendragon.ideasonboard.com>","References":"<20251227054042.3836430-1-johannes.schneider@leica-geosystems.com>\n\t<20251227103450.GB4094@pendragon.ideasonboard.com>\n\t<1fa44e66-d144-4587-aa93-cfa2f95a3922@protonmail.com>","MIME-Version":"1.0","Content-Type":"text/plain; charset=utf-8","Content-Disposition":"inline","Content-Transfer-Encoding":"8bit","In-Reply-To":"<1fa44e66-d144-4587-aa93-cfa2f95a3922@protonmail.com>","X-BeenThere":"libcamera-devel@lists.libcamera.org","X-Mailman-Version":"2.1.29","Precedence":"list","List-Id":"<libcamera-devel.lists.libcamera.org>","List-Unsubscribe":"<https://lists.libcamera.org/options/libcamera-devel>,\n\t<mailto:libcamera-devel-request@lists.libcamera.org?subject=unsubscribe>","List-Archive":"<https://lists.libcamera.org/pipermail/libcamera-devel/>","List-Post":"<mailto:libcamera-devel@lists.libcamera.org>","List-Help":"<mailto:libcamera-devel-request@lists.libcamera.org?subject=help>","List-Subscribe":"<https://lists.libcamera.org/listinfo/libcamera-devel>,\n\t<mailto:libcamera-devel-request@lists.libcamera.org?subject=subscribe>","Errors-To":"libcamera-devel-bounces@lists.libcamera.org","Sender":"\"libcamera-devel\" <libcamera-devel-bounces@lists.libcamera.org>"}},{"id":37451,"web_url":"https://patchwork.libcamera.org/comment/37451/","msgid":"<09c36848-622f-4524-b22a-6b90301f8527@protonmail.com>","date":"2025-12-27T23:43:08","subject":"Re: [PATCH] fix clang warnings/errors","submitter":{"id":133,"url":"https://patchwork.libcamera.org/api/people/133/","name":"Pőcze Barnabás","email":"pobrn@protonmail.com"},"content":"2025. 12. 27. 14:47 keltezéssel, Laurent Pinchart írta:\n> On Sat, Dec 27, 2025 at 01:17:11PM +0000, Barnabás Pőcze wrote:\n>> 2025. 12. 27. 11:34 keltezéssel, Laurent Pinchart írta:\n>>> On Sat, Dec 27, 2025 at 06:40:40AM +0100, Johannes Schneider wrote:\n>>>> Building libcamera with clang raises some warnings-as-errors.\n>>>\n>>> None of those issues are present in the master branch. Are you by any\n>>> chance working with out-of-tree changes ?\n>>>\n>>>> Signed-off-by: Johannes Schneider <johannes.schneider@leica-geosystems.com>\n>>>> ---\n>>>>\n>>>> Hoi,\n>>>>\n>>>> you could/should consider compiling with clang too ;-)\n>>>\n>>> We do :-) Our CI pipeline compiles with different versions of gcc and\n>>> clang. See https://gitlab.freedesktop.org/camera/libcamera/-/jobs/89987029\n>>> for instance.\n>>\n>> There should probably be newer clang there. libcamera hasn't been compile-able\n>> with newer clang for a while now (I have clang 21.1.6) and I get:\n>>\n>>     -Werror,-Winconsistent-missing-override\n>>\n>> in multiple places.\n> \n> We could try to add a Debian Forky container, it ships clang 21.\n\nAhh, never mind, false alarm. I had some local changes and ran into\na somewhat peculiar behaviour of clang: if there are multiple overridden\nfunctions, and at least one of them is marked `override`, then it will\nwarn about the ones without `override`, but if none of them are marked,\nthen no warning will appear.\n\n\n> \n>>>> ---\n>>>>    include/libcamera/internal/camera_sensor_helper.h | 2 +-\n>>>>    src/libcamera/converter/converter_v4l2_m2m.cpp    | 2 +-\n>>>>    src/libcamera/pipeline/rkisp1/rkisp1.cpp          | 1 -\n>>>>    3 files changed, 2 insertions(+), 3 deletions(-)\n>>>>\n>>>> diff --git a/include/libcamera/internal/camera_sensor_helper.h b/include/libcamera/internal/camera_sensor_helper.h\n>>>> index 1e1e479..1b3217b 100644\n>>>> --- a/include/libcamera/internal/camera_sensor_helper.h\n>>>> +++ b/include/libcamera/internal/camera_sensor_helper.h\n>>>> @@ -61,7 +61,7 @@ public:\n>>>>\n>>>>    \tstatic std::vector<CameraSensorHelperFactoryBase *> &factories();\n>>>>\n>>>> -\tconst std::string &name() const { return name_; };\n>>>> +\tconst std::string &name() const { return name_; }\n>>>>\n>>>>    private:\n>>>>    \tLIBCAMERA_DISABLE_COPY_AND_MOVE(CameraSensorHelperFactoryBase)\n>>>> diff --git a/src/libcamera/converter/converter_v4l2_m2m.cpp b/src/libcamera/converter/converter_v4l2_m2m.cpp\n>>>> index d6b95fb..368320f 100644\n>>>> --- a/src/libcamera/converter/converter_v4l2_m2m.cpp\n>>>> +++ b/src/libcamera/converter/converter_v4l2_m2m.cpp\n>>>> @@ -258,7 +258,7 @@ int V4L2M2MConverter::V4L2M2MStream::applyControls(ControlList &ctrls,\n>>>>    \t\t\t\t\t\t   const V4L2Request *request)\n>>>>    {\n>>>>    \treturn m2m_->capture()->setControls(&ctrls, request);\n>>>> -};\n>>>> +}\n>>>>\n>>>>    /* -----------------------------------------------------------------------------\n>>>>     * V4L2M2MConverter\n>>>> diff --git a/src/libcamera/pipeline/rkisp1/rkisp1.cpp b/src/libcamera/pipeline/rkisp1/rkisp1.cpp\n>>>> index ca9e850..1437318 100644\n>>>> --- a/src/libcamera/pipeline/rkisp1/rkisp1.cpp\n>>>> +++ b/src/libcamera/pipeline/rkisp1/rkisp1.cpp\n>>>> @@ -377,7 +377,6 @@ int RkISP1CameraData::loadTuningFile(const std::string &path)\n>>>>    \t\t\tconst auto &params = algo[\"Dewarp\"];\n>>>>\n>>>>    \t\t\tcanUseDewarper_ = true;\n>>>> -\t\t\tMatrix<double, 3, 3> m;\n>>>>    \t\t\tDewarpParms dp;\n>>>>    \t\t\tif (params[\"cm\"]) {\n>>>>    \t\t\t\tconst auto &cm = params[\"cm\"].get<Matrix<double, 3, 3>>();\n> \n> --\n> Regards,\n> \n> Laurent Pinchart","headers":{"Return-Path":"<libcamera-devel-bounces@lists.libcamera.org>","X-Original-To":"parsemail@patchwork.libcamera.org","Delivered-To":"parsemail@patchwork.libcamera.org","Received":["from lancelot.ideasonboard.com (lancelot.ideasonboard.com\n\t[92.243.16.209])\n\tby patchwork.libcamera.org (Postfix) with ESMTPS id 68B36C323E\n\tfor <parsemail@patchwork.libcamera.org>;\n\tSat, 27 Dec 2025 23:43:19 +0000 (UTC)","from lancelot.ideasonboard.com (localhost [IPv6:::1])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTP id 2A41A61FB3;\n\tSun, 28 Dec 2025 00:43:18 +0100 (CET)","from mail-4316.protonmail.ch (mail-4316.protonmail.ch\n\t[185.70.43.16])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTPS id EB78A61F61\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tSun, 28 Dec 2025 00:43:15 +0100 (CET)"],"Authentication-Results":"lancelot.ideasonboard.com; dkim=pass (2048-bit key;\n\tunprotected) header.d=protonmail.com header.i=@protonmail.com\n\theader.b=\"mp2UdS1C\"; dkim-atps=neutral","DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed; d=protonmail.com;\n\ts=protonmail3; t=1766878995; x=1767138195;\n\tbh=iSBgymsMWQofczBCCBOWxQ8TZ0etxLn6QA/rAd23Ut8=;\n\th=Date:To:From:Cc:Subject:Message-ID:In-Reply-To:References:\n\tFeedback-ID:From:To:Cc:Date:Subject:Reply-To:Feedback-ID:\n\tMessage-ID:BIMI-Selector;\n\tb=mp2UdS1CCepFFYSgG+2LmpxMAL4bQpgmPl+XFsIc4AJ2BRKjzFqEP4fttm660uHju\n\tlTeXjvK/2GFmVtjzZ/wmDPK/xW1KYGWRXQKN6Qtv2Jw+SHKc+Mw26A7intMo/eevw0\n\t6onX9g9kKZvbMogyG+MSMuzj1I8vklruUctDgk/yMR5xC+rnrkDOj4UT8Lo+WBlr7X\n\tgyjpAR+t3GvCxmmVB8qhE7DODJmx7v5reruAnTX7bVU5SjSnq87G3tHCdA7pDcci52\n\tvByBUA5AdjTQa8NrDM4BY5cO23SdeRBkIZv2PfPMcHXQjI4sSiqMMsugCyHo/2Rvm9\n\t99h9o8gbg1SHQ==","Date":"Sat, 27 Dec 2025 23:43:08 +0000","To":"Laurent Pinchart <laurent.pinchart@ideasonboard.com>","From":"=?utf-8?q?P=C5=91cze_Barnab=C3=A1s?= <pobrn@protonmail.com>","Cc":"Johannes Schneider <johannes.schneider@leica-geosystems.com>,\n\tlibcamera-devel@lists.libcamera.org, stefan.klug@ideasonboard.com,\n\tkieran.bingham@ideasonboard.com","Subject":"Re: [PATCH] fix clang warnings/errors","Message-ID":"<09c36848-622f-4524-b22a-6b90301f8527@protonmail.com>","In-Reply-To":"<20251227134716.GB21104@pendragon.ideasonboard.com>","References":"<20251227054042.3836430-1-johannes.schneider@leica-geosystems.com>\n\t<20251227103450.GB4094@pendragon.ideasonboard.com>\n\t<1fa44e66-d144-4587-aa93-cfa2f95a3922@protonmail.com>\n\t<20251227134716.GB21104@pendragon.ideasonboard.com>","Feedback-ID":"20568564:user:proton","X-Pm-Message-ID":"9af531e2e68a63727d7b917bac64d8cd980db6e0","MIME-Version":"1.0","Content-Type":"text/plain; charset=utf-8","Content-Transfer-Encoding":"quoted-printable","X-BeenThere":"libcamera-devel@lists.libcamera.org","X-Mailman-Version":"2.1.29","Precedence":"list","List-Id":"<libcamera-devel.lists.libcamera.org>","List-Unsubscribe":"<https://lists.libcamera.org/options/libcamera-devel>,\n\t<mailto:libcamera-devel-request@lists.libcamera.org?subject=unsubscribe>","List-Archive":"<https://lists.libcamera.org/pipermail/libcamera-devel/>","List-Post":"<mailto:libcamera-devel@lists.libcamera.org>","List-Help":"<mailto:libcamera-devel-request@lists.libcamera.org?subject=help>","List-Subscribe":"<https://lists.libcamera.org/listinfo/libcamera-devel>,\n\t<mailto:libcamera-devel-request@lists.libcamera.org?subject=subscribe>","Errors-To":"libcamera-devel-bounces@lists.libcamera.org","Sender":"\"libcamera-devel\" <libcamera-devel-bounces@lists.libcamera.org>"}}]