[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

RE: Bug#1103423: src:kitty: fails to migrate to testing for too long: FTBFS on s390x



Hi,

I had some updates regarding kitty.

While going through one of the errors, there was this one `union` called `CPUCell` defined as

```
> typedef union CPUCell {
>     struct {
>         char_type ch_or_idx: sizeof(char_type) * 8 - 1;
>         char_type ch_is_idx: 1;
>         char_type hyperlink_id: sizeof(hyperlink_id_type) * 8;
>         char_type next_char_was_wrapped : 1;
>         char_type is_multicell : 1;
>         char_type natural_width: 1;
>         char_type scale: SCALE_BITS;
>         char_type subscale_n: SUBSCALE_BITS;
>         char_type subscale_d: SUBSCALE_BITS;
>         char_type x : WIDTH_BITS + SCALE_BITS;
>         char_type y : SCALE_BITS;
>         char_type width: WIDTH_BITS;
>         char_type valign: VALIGN_BITS;
>         char_type halign: HALIGN_BITS;
>         char_type temp_flag: 1;
>         char_type : 15;
>     };
>     struct {
>         char_type ch_and_idx: sizeof(char_type) * 8;
>         char_type : 32;
>         char_type : 32;
>     };
> } CPUCell;
```

where `char_type` is `typedef` for `uint32_t` and `hyperlink_id_type` is `typedef` for `uint16_t`.
Here, in the test, `ch_and_idx` was set to `1` and the tuple `(ch_is_idx, ch_or_idx, ch_and_idx)` is returned.
That means `1` is set to the first 32 bits and value is read from 32nd bit, first 31 bits and from first 32 bits.
In little endian machines this `0`, `1` and `1` which is the expected output, while in big endian machines this will be `1`, `0` and `1`.

For the `test_zsh_integration` failure, the test case is trying to `cd` into a directory whose name has a unicode character in it.
They are using a temporary `.zshrc` file which will receive some of its value from the systems default rc file (`.bashrc` in my case).
`LANG` variable also takes the value likewise. By default, what I saw is that the `LANG` is having the value `C`. Changing it to a format like `en_US.UTF-8` seems to fix the test.

Thanks,
Pranav

Reply to: