Re: [PATCH v2 1/6] midx: add MIDX_PROGRESS flag <snip>
- From
SZEDER Gábor <szeder.dev@gmail.com>
- Date
- Oct 9, 2019, 00:16 UTC
- Message-ID
- <20191008232439.GA7212@szeder.dev>
- In-Reply-To
- <202ed2c5-9729-120f-fa0e-cee9ecec3b77@gmail.com>
On Tue, Oct 08, 2019 at 09:24:56AM -0700, William Baker wrote:
Show 12 quoted lines
> On 10/7/19 9:30 PM, Junio C Hamano wrote: > > SZEDER Gábor <szeder.dev@gmail.com> writes: > > > >>> func(PROGRESS | REGRESS); > >>> func(PROGRESS + REGRESS); > >>> func(PROGRESS * 3); > >>> } > >>> > >>> how caller came about to give 3? > >> > >> No, they tend to show (PROGRESS | REGRESS), at least both gdb and lldb > >> do.
Show 31 quoted lines
> I tried to see how lldb would handle the "PROGRESS * 3" scenario
> but I was unable to get lldb to display the "PROGRESS | REGRESS" format
> even when ORing the flags:
>
> (lldb) l 399
> 399 enum test_flags {
> 400 TEST_FLAG_1 = 1 << 0,
> 401 TEST_FLAG_2 = 1 << 1,
> 402 };
> 403
> 404 enum test_flags flags_1 = TEST_FLAG_1;
> 405 enum test_flags flags_2 = TEST_FLAG_2;
> 406 enum test_flags flags_both = TEST_FLAG_1 | TEST_FLAG_2;
> 407
> 408 if (flags_1 || flags_2 || flags_both)
> (lldb) p flags_1
> (test_flags) $0 = TEST_FLAG_1
> (lldb) p flags_2
> (test_flags) $1 = TEST_FLAG_2
> (lldb) p flags_both
> (test_flags) $2 = 3
> (lldb) fr v flags_both
> (test_flags) flags_both = 3
> (lldb) fr v --format enum flags_both
> (test_flags) flags_both = 3
> (lldb) version
> lldb-902.0.79.7
> Swift-4.1
>
> Is there something that needs to be adjusted in the config or with
> --format to display "TEST_FLAG_1 | TEST_FLAG_2" in this example?I'm afraid you are right and lldb doesn't do this, at least not by default, what a pity. I tried different versions of gdb and lldb, distro-shipped older ones and some more recent in containers a couple of days ago; now I tried it again and see the same behavior as you, so I must have misremembered. Sorry for the confusion.
gdb still does the user-friendly thing, though.