[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <f97141f2-952c-305d-3b32-dad77fa7ae10@infradead.org>
Date: Wed, 6 Dec 2017 12:24:36 -0800
From: Randy Dunlap <rdunlap@...radead.org>
To: Nicolas Pitre <nicolas.pitre@...aro.org>,
Masahiro Yamada <yamada.masahiro@...ionext.com>,
Michal Marek <michal.lkml@...kovi.net>,
Jan Beulich <JBeulich@...e.com>
Cc: Arnd Bergmann <arnd@...db.de>, linux-kbuild@...r.kernel.org,
linux-kernel@...r.kernel.org
Subject: Re: [PATCH] kconfig: fix relational operators for bool and tristate
symbols
On 12/06/2017 07:40 AM, Nicolas Pitre wrote:
>
> Ping.
>
> On Thu, 16 Nov 2017, Nicolas Pitre wrote:
>
>> Since commit 31847b67bec0 ("kconfig: allow use of relations other than
>> (in)equality") it is possible to use relational operators in Kconfig
>> statements. However, those operators give unexpected results when
>> applied to bool/tristate values:
>>
>> (n < y) = y (correct)
>> (m < y) = y (correct)
>> (n < m) = n (wrong)
>>
>> This happens because relational operators process bool and tristate
>> symbols as strings and m sorts before n. It makes little sense to do a
>> lexicographical compare on bool and tristate values though.
>>
>> Documentation/kbuild/kconfig-language.txt states that expression can have
>> a value of 'n', 'm' or 'y' (or 0, 1, 2 respectively for calculations).
>> Let's make it so for relational comparisons with bool/tristate
>> expressions as well and document them. If at least one symbol is an
>> actual string then the lexicographical compare works just as before.
>>
>> Signed-off-by: Nicolas Pitre <nico@...aro.org>
Acked-by: Randy Dunlap <rdunlap@...radead.org>
Tested-by: Randy Dunlap <rdunlap@...radead.org>
--
~Randy
Powered by blists - more mailing lists