John McFarlane

Results 144 comments of John McFarlane

Consider `cnl::tag_invoke` ([paper](wg21.link/p1895), [possible implementation](https://github.com/atomgalaxy/zit/blob/master/taggie/tag_invoke.hpp)).

Consider [ranges::swap](https://en.cppreference.com/w/cpp/utility/ranges/swap).

Unfortunately, the UDL, `""_c` does not work with fractions. C++17 is only allowed to use integral NTTPs (non-type template parameters) and as 0.22 isn't even representable in binary floating-point, it's...

Another seemingly-missing conversion: https://godbolt.org/z/Er6Mforaa

Hi. Thanks for the suggestion. A similar question has been asked before in #401. That answer may help. Because they are class templates - and not strictly types themselves -...

You're welcome! Thanks for closing the issue. Ppl often don't. However, in this instance, I'm going to keep it open as a reminder to change the FAQ. After all, you're...

@elcojacobs preliminary investigation suggests a 65-bit arithmetic operation. That first failing test [will compile](https://godbolt.org/z/u6cJkf) if you enable 128-bit integer. Presumably that's not an option for RPi builds.

@elcojacobs confirmed this is because default for CNL_INT128 changed. You were previously relying on 128-bit integer. You can re-enable it with `#define CNL_USE_INT128=1`.

(I'm looking into why adding a couple of 32-bit numbers even needs 65 bits BTW. I may be able to address that.)

There's an issue where if `elastic_integer` is wrapped in another type such as `overflow_integer`, it doesn't scale numbers efficiently. In this case, the scaling factor is `1` which should be...