52 karma · joined January 21, 2011
However we’re also allowed to do something like this: i=0, a=i, b=i, b=b+1, RHS=b (RHS=1), LHS=a (LHS=0), a=a+1, i=a, i=b.
Probably quite a lot of other things are allowed to happen. Usual disclaimer that a standard-compliant compiler is allowed to vaporise your cat etc as part of UB.
The thing to Google is “sequence points”.
From your Wikipedia page, it says it initially went at 11 km/h but was reduced to 9 km/h because of “frequent falls of passengers and various accidents”.
So she was originally compiling on a newer RPi, but immediately switched to compiling on the same one that couldn’t run it. And I believe the actual system images for RPi are built to support all models (there aren’t separate downloads for different models unless you want 64-bit) so it’s not crazy to think that everything would work building on a newer model.
This is just a packaging defect, Clang/LLVM isn’t being configured correctly by RPiOS (Raspbian).
What Intel processors do is ignore the upper bits of the shift quantity, so it’s effectively (1ULL << (x % 64)) - 1, therefore the function that should have set all ones for x=64 actually set all zeros.
Pour l’instant, je suis content de lire des livres et d’écouter des podcasts.
I got into relearning French during the pandemic. I did learn it at school (age 11-16) but that was well over 20 years ago.