[{"id":12604,"web_url":"https://patchwork.libcamera.org/comment/12604/","msgid":"<20200921074303.6x7o6aenlbf3fkgf@uno.localdomain>","date":"2020-09-21T07:43:03","subject":"Re: [libcamera-devel] [PATCH] Documentation: Adjust guidelines\n\tregarding math.h header","submitter":{"id":3,"url":"https://patchwork.libcamera.org/api/people/3/","name":"Jacopo Mondi","email":"jacopo@jmondi.org"},"content":"Hi Laurent,\n\nOn Sun, Sep 20, 2020 at 08:34:47PM +0300, Laurent Pinchart wrote:\n> While libcamera prefers usage of the C standard library headers (xxx.h)\n> over the C++ version (cxxx), we make an exception for cmath as the\n> overloaded versions of the math functions are convenient. Document this,\n> and adjust checkstyle.py accordingly.\n>\n> Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>\n> ---\n>  Documentation/coding-style.rst | 14 +++++++++++---\n>  utils/checkstyle.py            |  6 +++---\n>  2 files changed, 14 insertions(+), 6 deletions(-)\n>\n> Jacopo, this originates from a discussion in the review of \"[PATCH]\n> libcamera: ipu3: Fix compilation issues with gcc5\". I haven't assigned\n> the authorship to you as you didn't provide a formal patch with an SoB\n> line. Please let me know if I should (and give me your SoB in that\n> case). Otherwise, a review is always appreciated :-)\n\nDid I send a patch for this ? Or was just a suggestion made during\nreview ? I think a r-b tag is enough, no worries..\n\n>\n> diff --git a/Documentation/coding-style.rst b/Documentation/coding-style.rst\n> index 7c56a1b70014..d467a5a1b1ad 100644\n> --- a/Documentation/coding-style.rst\n> +++ b/Documentation/coding-style.rst\n> @@ -195,9 +195,17 @@ them, defines C compatibility headers. The former have a name of the form\n>  <cxxx> while the later are named <xxx.h>. The C++ headers declare names in the\n>  std namespace, and may declare the same names in the global namespace. The C\n>  compatibility headers declare names in the global namespace, and may declare\n> -the same names in the std namespace. Usage of the C compatibility headers is\n> -strongly preferred. Code shall not rely on the optional declaration of names in\n> -the global or std namespace.\n> +the same names in the std namespace. Code shall not rely on the optional\n> +declaration of names in the global or std namespace.\n> +\n> +Usage of the C compatibility headers is preferred, except for the math.h header.\n> +Where math.h defines separate functions for different argument types (e.g.\n> +abs(int), labs(long int), fabs(double) and fabsf(float)) and requires the\n> +developer to pick the right function, cmath defines overloaded functions\n> +(std::abs(int), std::abs(long int), std::abs(double) and std::abs(float) and let\n\n\"and let\" seems to refer to \"cmath\" as a suject, so it's either \"lets\"\nor \"to let\" ?\n\n> +the compiler select the right function. This avoids potential errors such as\n> +calling abs(int) with a float argument, performing an unwanted implicit integer\n> +conversion. For this reason, cmath is preferred over math.h.\n\nLooks good, sorry I forgot about this.\n\nReviewed-by: Jacopo Mondi <jacopo@jmondi.org>\n\nThanks\n  j\n\n>\n>\n>  Documentation\n> diff --git a/utils/checkstyle.py b/utils/checkstyle.py\n> index b594a19aed5b..d5dc26c0f666 100755\n> --- a/utils/checkstyle.py\n> +++ b/utils/checkstyle.py\n> @@ -244,9 +244,9 @@ class IncludeChecker(StyleChecker):\n>      patterns = ('*.cpp', '*.h')\n>\n>      headers = ('assert', 'ctype', 'errno', 'fenv', 'float', 'inttypes',\n> -               'limits', 'locale', 'math', 'setjmp', 'signal', 'stdarg',\n> -               'stddef', 'stdint', 'stdio', 'stdlib', 'string', 'time', 'uchar',\n> -               'wchar', 'wctype')\n> +               'limits', 'locale', 'setjmp', 'signal', 'stdarg', 'stddef',\n> +               'stdint', 'stdio', 'stdlib', 'string', 'time', 'uchar', 'wchar',\n> +               'wctype')\n>      include_regex = re.compile('^#include <c([a-z]*)>')\n>\n>      def __init__(self, content):\n> --\n> Regards,\n>\n> Laurent Pinchart\n>","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 89485BF01C\n\tfor <parsemail@patchwork.libcamera.org>;\n\tMon, 21 Sep 2020 07:39:13 +0000 (UTC)","from lancelot.ideasonboard.com (localhost [IPv6:::1])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTP id E24B862FBF;\n\tMon, 21 Sep 2020 09:39:12 +0200 (CEST)","from relay3-d.mail.gandi.net (relay3-d.mail.gandi.net\n\t[217.70.183.195])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTPS id A488360367\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tMon, 21 Sep 2020 09:39:11 +0200 (CEST)","from uno.localdomain (93-34-118-233.ip49.fastwebnet.it\n\t[93.34.118.233]) (Authenticated sender: jacopo@jmondi.org)\n\tby relay3-d.mail.gandi.net (Postfix) with ESMTPSA id D955660015;\n\tMon, 21 Sep 2020 07:39:10 +0000 (UTC)"],"X-Originating-IP":"93.34.118.233","Date":"Mon, 21 Sep 2020 09:43:03 +0200","From":"Jacopo Mondi <jacopo@jmondi.org>","To":"Laurent Pinchart <laurent.pinchart@ideasonboard.com>","Message-ID":"<20200921074303.6x7o6aenlbf3fkgf@uno.localdomain>","References":"<20200920173447.10064-1-laurent.pinchart@ideasonboard.com>","MIME-Version":"1.0","Content-Disposition":"inline","In-Reply-To":"<20200920173447.10064-1-laurent.pinchart@ideasonboard.com>","Subject":"Re: [libcamera-devel] [PATCH] Documentation: Adjust guidelines\n\tregarding math.h header","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>","Cc":"libcamera-devel@lists.libcamera.org","Content-Type":"text/plain; charset=\"us-ascii\"","Content-Transfer-Encoding":"7bit","Errors-To":"libcamera-devel-bounces@lists.libcamera.org","Sender":"\"libcamera-devel\" <libcamera-devel-bounces@lists.libcamera.org>"}},{"id":12607,"web_url":"https://patchwork.libcamera.org/comment/12607/","msgid":"<20200921083609.GF2692107@oden.dyn.berto.se>","date":"2020-09-21T08:36:09","subject":"Re: [libcamera-devel] [PATCH] Documentation: Adjust guidelines\n\tregarding math.h header","submitter":{"id":5,"url":"https://patchwork.libcamera.org/api/people/5/","name":"Niklas Söderlund","email":"niklas.soderlund@ragnatech.se"},"content":"Hi Laurent,\n\nThanks for your work.\n\nOn 2020-09-20 20:34:47 +0300, Laurent Pinchart wrote:\n> While libcamera prefers usage of the C standard library headers (xxx.h)\n> over the C++ version (cxxx), we make an exception for cmath as the\n> overloaded versions of the math functions are convenient. Document this,\n> and adjust checkstyle.py accordingly.\n> \n> Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>\n\nReviewed-by: Niklas Söderlund <niklas.soderlund@ragnatech.se>\n\n> ---\n>  Documentation/coding-style.rst | 14 +++++++++++---\n>  utils/checkstyle.py            |  6 +++---\n>  2 files changed, 14 insertions(+), 6 deletions(-)\n> \n> Jacopo, this originates from a discussion in the review of \"[PATCH]\n> libcamera: ipu3: Fix compilation issues with gcc5\". I haven't assigned\n> the authorship to you as you didn't provide a formal patch with an SoB\n> line. Please let me know if I should (and give me your SoB in that\n> case). Otherwise, a review is always appreciated :-)\n> \n> diff --git a/Documentation/coding-style.rst b/Documentation/coding-style.rst\n> index 7c56a1b70014..d467a5a1b1ad 100644\n> --- a/Documentation/coding-style.rst\n> +++ b/Documentation/coding-style.rst\n> @@ -195,9 +195,17 @@ them, defines C compatibility headers. The former have a name of the form\n>  <cxxx> while the later are named <xxx.h>. The C++ headers declare names in the\n>  std namespace, and may declare the same names in the global namespace. The C\n>  compatibility headers declare names in the global namespace, and may declare\n> -the same names in the std namespace. Usage of the C compatibility headers is\n> -strongly preferred. Code shall not rely on the optional declaration of names in\n> -the global or std namespace.\n> +the same names in the std namespace. Code shall not rely on the optional\n> +declaration of names in the global or std namespace.\n> +\n> +Usage of the C compatibility headers is preferred, except for the math.h header.\n> +Where math.h defines separate functions for different argument types (e.g.\n> +abs(int), labs(long int), fabs(double) and fabsf(float)) and requires the\n> +developer to pick the right function, cmath defines overloaded functions\n> +(std::abs(int), std::abs(long int), std::abs(double) and std::abs(float) and let\n> +the compiler select the right function. This avoids potential errors such as\n> +calling abs(int) with a float argument, performing an unwanted implicit integer\n> +conversion. For this reason, cmath is preferred over math.h.\n>  \n>  \n>  Documentation\n> diff --git a/utils/checkstyle.py b/utils/checkstyle.py\n> index b594a19aed5b..d5dc26c0f666 100755\n> --- a/utils/checkstyle.py\n> +++ b/utils/checkstyle.py\n> @@ -244,9 +244,9 @@ class IncludeChecker(StyleChecker):\n>      patterns = ('*.cpp', '*.h')\n>  \n>      headers = ('assert', 'ctype', 'errno', 'fenv', 'float', 'inttypes',\n> -               'limits', 'locale', 'math', 'setjmp', 'signal', 'stdarg',\n> -               'stddef', 'stdint', 'stdio', 'stdlib', 'string', 'time', 'uchar',\n> -               'wchar', 'wctype')\n> +               'limits', 'locale', 'setjmp', 'signal', 'stdarg', 'stddef',\n> +               'stdint', 'stdio', 'stdlib', 'string', 'time', 'uchar', 'wchar',\n> +               'wctype')\n>      include_regex = re.compile('^#include <c([a-z]*)>')\n>  \n>      def __init__(self, content):\n> -- \n> Regards,\n> \n> Laurent Pinchart\n> \n> _______________________________________________\n> libcamera-devel mailing list\n> libcamera-devel@lists.libcamera.org\n> https://lists.libcamera.org/listinfo/libcamera-devel","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 719EABF01C\n\tfor <parsemail@patchwork.libcamera.org>;\n\tMon, 21 Sep 2020 08:36:12 +0000 (UTC)","from lancelot.ideasonboard.com (localhost [IPv6:::1])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTP id 3CD9662FAD;\n\tMon, 21 Sep 2020 10:36:12 +0200 (CEST)","from mail-lj1-x243.google.com (mail-lj1-x243.google.com\n\t[IPv6:2a00:1450:4864:20::243])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTPS id B17ED60367\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tMon, 21 Sep 2020 10:36:10 +0200 (CEST)","by mail-lj1-x243.google.com with SMTP id w3so10354466ljo.5\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tMon, 21 Sep 2020 01:36:10 -0700 (PDT)","from localhost (h-209-203.A463.priv.bahnhof.se. [155.4.209.203])\n\tby smtp.gmail.com with ESMTPSA id\n\to18sm2354217lfl.282.2020.09.21.01.36.09\n\t(version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);\n\tMon, 21 Sep 2020 01:36:09 -0700 (PDT)"],"Authentication-Results":"lancelot.ideasonboard.com;\n\tdkim=fail reason=\"signature verification failed\" (2048-bit key;\n\tunprotected) header.d=ragnatech-se.20150623.gappssmtp.com\n\theader.i=@ragnatech-se.20150623.gappssmtp.com\n\theader.b=\"VSbb2Vu4\"; dkim-atps=neutral","DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed;\n\td=ragnatech-se.20150623.gappssmtp.com; s=20150623;\n\th=date:from:to:cc:subject:message-id:references:mime-version\n\t:content-disposition:content-transfer-encoding:in-reply-to;\n\tbh=uZ8h3Q4aNp6Jsbq4sz2J23QlLGeBrGfDFXN9+k6IOUE=;\n\tb=VSbb2Vu41z7fDpSJSDb/vRhknqE5IjcW0P7kuaZZKrSGBF+3N+vbwXK+bOXaY2M8bu\n\tENelnQRTPhieHMf+9wxRJcOIHH2oDsdpdIUQeE6sHh0/JcVT3NrCaBieWJUE01M4OS2A\n\tRe6/uvEf7rgH781A/kDvXBSNRJPOZjfk6fOhBQWZrskyUfURyFyPA5YvqblfnRFHpEPD\n\t/jpv78DnGSOes7uE57G3dyIDly5e9E84ZYeerRD77xU3bvbXB4lvVwBCmaVPsngqDhAi\n\tgqM8f55UfKtRKMF1lfF0PbSJy8tnHvMPhj6dj4hF3UqWJTe8y5r9sG4zlqU2hF2UDE41\n\t2d1g==","X-Google-DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed;\n\td=1e100.net; s=20161025;\n\th=x-gm-message-state:date:from:to:cc:subject:message-id:references\n\t:mime-version:content-disposition:content-transfer-encoding\n\t:in-reply-to;\n\tbh=uZ8h3Q4aNp6Jsbq4sz2J23QlLGeBrGfDFXN9+k6IOUE=;\n\tb=b3Ogm82glcYYY3xGsxCmrLtDzklSESYtoU/YsshuGGkURnodqbV9qd6b+F1JdStkac\n\tTMywFFLi9Dbp5x1Bt//UbWEddkcmb+vkJvrsnflCk5hZ0X5h2Ds6huksBJXZWb/nvHND\n\tXqOB4pUXI3vZPBHK3bnebNonqUiA63UUMpRcB15eDVRvbbRU4xk1o/Nsd1S56yPWQ0qA\n\twimIDMFR0qSFGGNjI1G7yMAFxHuYVpSZqm74mMxtbXrqtV5sAeHpVqtmQAAT26Gkqapv\n\t8zw9c2pM3IcEhZ11QtmcDC6gaivhDtGj7mbKQFzbfLxex5FKjwdWccQCJBR+VgVaBVlK\n\tqUwQ==","X-Gm-Message-State":"AOAM531Tly8+z3NmlD/X8uqjTkAd6ub9DrjVGssK92bvAyRBXRb3xorg\n\t0tzsGQrS0c9ey/XGR3MPAzY+kh+wYTZ+PQ==","X-Google-Smtp-Source":"ABdhPJzL7j6cJycI+72a8XVokgPk4v6B1gm35jM792i5XhzThmduJan/dbJacicg4Rw/wF+hNcpV/A==","X-Received":"by 2002:a2e:b0f8:: with SMTP id\n\th24mr14769123ljl.165.1600677370084; \n\tMon, 21 Sep 2020 01:36:10 -0700 (PDT)","Date":"Mon, 21 Sep 2020 10:36:09 +0200","From":"Niklas =?iso-8859-1?q?S=F6derlund?= <niklas.soderlund@ragnatech.se>","To":"Laurent Pinchart <laurent.pinchart@ideasonboard.com>","Message-ID":"<20200921083609.GF2692107@oden.dyn.berto.se>","References":"<20200920173447.10064-1-laurent.pinchart@ideasonboard.com>","MIME-Version":"1.0","Content-Disposition":"inline","In-Reply-To":"<20200920173447.10064-1-laurent.pinchart@ideasonboard.com>","Subject":"Re: [libcamera-devel] [PATCH] Documentation: Adjust guidelines\n\tregarding math.h header","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>","Cc":"libcamera-devel@lists.libcamera.org","Content-Type":"text/plain; charset=\"iso-8859-1\"","Content-Transfer-Encoding":"quoted-printable","Errors-To":"libcamera-devel-bounces@lists.libcamera.org","Sender":"\"libcamera-devel\" <libcamera-devel-bounces@lists.libcamera.org>"}},{"id":12620,"web_url":"https://patchwork.libcamera.org/comment/12620/","msgid":"<20200921105451.GB8290@pendragon.ideasonboard.com>","date":"2020-09-21T10:54:51","subject":"Re: [libcamera-devel] [PATCH] Documentation: Adjust guidelines\n\tregarding math.h header","submitter":{"id":2,"url":"https://patchwork.libcamera.org/api/people/2/","name":"Laurent Pinchart","email":"laurent.pinchart@ideasonboard.com"},"content":"Hi Jacopo,\n\nOn Mon, Sep 21, 2020 at 09:43:03AM +0200, Jacopo Mondi wrote:\n> On Sun, Sep 20, 2020 at 08:34:47PM +0300, Laurent Pinchart wrote:\n> > While libcamera prefers usage of the C standard library headers (xxx.h)\n> > over the C++ version (cxxx), we make an exception for cmath as the\n> > overloaded versions of the math functions are convenient. Document this,\n> > and adjust checkstyle.py accordingly.\n> >\n> > Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>\n> > ---\n> >  Documentation/coding-style.rst | 14 +++++++++++---\n> >  utils/checkstyle.py            |  6 +++---\n> >  2 files changed, 14 insertions(+), 6 deletions(-)\n> >\n> > Jacopo, this originates from a discussion in the review of \"[PATCH]\n> > libcamera: ipu3: Fix compilation issues with gcc5\". I haven't assigned\n> > the authorship to you as you didn't provide a formal patch with an SoB\n> > line. Please let me know if I should (and give me your SoB in that\n> > case). Otherwise, a review is always appreciated :-)\n> \n> Did I send a patch for this ? Or was just a suggestion made during\n> review ? I think a r-b tag is enough, no worries..\n\nYou've provided an initial diff proposal in a review reply, and we\ndiscussed it a bit.\n\n> > diff --git a/Documentation/coding-style.rst b/Documentation/coding-style.rst\n> > index 7c56a1b70014..d467a5a1b1ad 100644\n> > --- a/Documentation/coding-style.rst\n> > +++ b/Documentation/coding-style.rst\n> > @@ -195,9 +195,17 @@ them, defines C compatibility headers. The former have a name of the form\n> >  <cxxx> while the later are named <xxx.h>. The C++ headers declare names in the\n> >  std namespace, and may declare the same names in the global namespace. The C\n> >  compatibility headers declare names in the global namespace, and may declare\n> > -the same names in the std namespace. Usage of the C compatibility headers is\n> > -strongly preferred. Code shall not rely on the optional declaration of names in\n> > -the global or std namespace.\n> > +the same names in the std namespace. Code shall not rely on the optional\n> > +declaration of names in the global or std namespace.\n> > +\n> > +Usage of the C compatibility headers is preferred, except for the math.h header.\n> > +Where math.h defines separate functions for different argument types (e.g.\n> > +abs(int), labs(long int), fabs(double) and fabsf(float)) and requires the\n> > +developer to pick the right function, cmath defines overloaded functions\n> > +(std::abs(int), std::abs(long int), std::abs(double) and std::abs(float) and let\n> \n> \"and let\" seems to refer to \"cmath\" as a suject, so it's either \"lets\"\n> or \"to let\" ?\n\nGood catch, I'll fix it.\n\n> > +the compiler select the right function. This avoids potential errors such as\n> > +calling abs(int) with a float argument, performing an unwanted implicit integer\n> > +conversion. For this reason, cmath is preferred over math.h.\n> \n> Looks good, sorry I forgot about this.\n\nNo worries :-)\n\n> Reviewed-by: Jacopo Mondi <jacopo@jmondi.org>\n> \n> >  Documentation\n> > diff --git a/utils/checkstyle.py b/utils/checkstyle.py\n> > index b594a19aed5b..d5dc26c0f666 100755\n> > --- a/utils/checkstyle.py\n> > +++ b/utils/checkstyle.py\n> > @@ -244,9 +244,9 @@ class IncludeChecker(StyleChecker):\n> >      patterns = ('*.cpp', '*.h')\n> >\n> >      headers = ('assert', 'ctype', 'errno', 'fenv', 'float', 'inttypes',\n> > -               'limits', 'locale', 'math', 'setjmp', 'signal', 'stdarg',\n> > -               'stddef', 'stdint', 'stdio', 'stdlib', 'string', 'time', 'uchar',\n> > -               'wchar', 'wctype')\n> > +               'limits', 'locale', 'setjmp', 'signal', 'stdarg', 'stddef',\n> > +               'stdint', 'stdio', 'stdlib', 'string', 'time', 'uchar', 'wchar',\n> > +               'wctype')\n> >      include_regex = re.compile('^#include <c([a-z]*)>')\n> >\n> >      def __init__(self, content):","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 8525CBF01C\n\tfor <parsemail@patchwork.libcamera.org>;\n\tMon, 21 Sep 2020 10:55:25 +0000 (UTC)","from lancelot.ideasonboard.com (localhost [IPv6:::1])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTP id 1DA9B62FAD;\n\tMon, 21 Sep 2020 12:55:25 +0200 (CEST)","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 EE84860366\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tMon, 21 Sep 2020 12:55:23 +0200 (CEST)","from pendragon.ideasonboard.com (62-78-145-57.bb.dnainternet.fi\n\t[62.78.145.57])\n\tby perceval.ideasonboard.com (Postfix) with ESMTPSA id 586C227B;\n\tMon, 21 Sep 2020 12:55:23 +0200 (CEST)"],"Authentication-Results":"lancelot.ideasonboard.com;\n\tdkim=fail reason=\"signature verification failed\" (1024-bit key;\n\tunprotected) header.d=ideasonboard.com header.i=@ideasonboard.com\n\theader.b=\"etOPhyMn\"; dkim-atps=neutral","DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/simple; d=ideasonboard.com;\n\ts=mail; t=1600685723;\n\tbh=jxpNPHJ4l3odgLOmcOD24/6c482H1L3g8tAu6B7Y1W4=;\n\th=Date:From:To:Cc:Subject:References:In-Reply-To:From;\n\tb=etOPhyMnWHYLVOEFatIngv3t1zuthtkM6A/PpqSZTWLhkTqkQtpqPSQeEBDMfUkpg\n\t+tIyRC97/gpfM0HQME7fSA8XubJMPxQ4UAIWeNg3EQGKABuVEzDPaZH4mPYNP8l+BK\n\t228IiFIpmNZVjnbK/gDLw9LOo1vsWsu5vuZP5Lv0=","Date":"Mon, 21 Sep 2020 13:54:51 +0300","From":"Laurent Pinchart <laurent.pinchart@ideasonboard.com>","To":"Jacopo Mondi <jacopo@jmondi.org>","Message-ID":"<20200921105451.GB8290@pendragon.ideasonboard.com>","References":"<20200920173447.10064-1-laurent.pinchart@ideasonboard.com>\n\t<20200921074303.6x7o6aenlbf3fkgf@uno.localdomain>","MIME-Version":"1.0","Content-Disposition":"inline","In-Reply-To":"<20200921074303.6x7o6aenlbf3fkgf@uno.localdomain>","Subject":"Re: [libcamera-devel] [PATCH] Documentation: Adjust guidelines\n\tregarding math.h header","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>","Cc":"libcamera-devel@lists.libcamera.org","Content-Type":"text/plain; charset=\"us-ascii\"","Content-Transfer-Encoding":"7bit","Errors-To":"libcamera-devel-bounces@lists.libcamera.org","Sender":"\"libcamera-devel\" <libcamera-devel-bounces@lists.libcamera.org>"}}]