John McFarlane

Results 88 issues of John McFarlane

As per [p1841r1](http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2020/p1841r1.pdf) * remove support for numeric_limits and replace with individually-specialisable traits from P1841R1, * move definitions from _num_traits.h_ into numbers. * more set_tag, set_rep etc. to _impl/wrapper/ *...

2.0

https://quuxplusone.github.io/blog/2021/10/27/dont-reopen-namespace-std/

request

Hypothesis: CMake toolchain files are not the right place to customise the build; they are for configuring toolchains only. There are other, more appropriate ways to vary builds in the...

request
exploratory

Consider: ```c++ static_assert(identical( elastic_fixed_point{1.5}

enhancement
wg21
2.0

**What would you like to see in CNL?** As per [feedback in Cologne](https://github.com/johnmcfarlane/papers/issues/41), replace `elastic_integer` with two types: 1. A `promotion_integer` type which auto-widens, taking a family as its only...

request
2.0

**Describe the bug:** Generally, elastic_integer should not support modulo behavior and this attribute should always be false -- even for `Rep` types for which it is true.

bug
2.0

**Describe the bug:** Occurs when printing the number, not during multiplication. **To Reproduce:** https://godbolt.org/z/ojK9vY3Wf

bug
2.0

Surprisingly, I don't think this is supported. E.g. ```c++ using modulo_integer = cnl::overflow_integer; using numeric_limits = cnl::numeric_limits; static_assert(identical(numeric_limits::lowest(), numeric_limits::max() + 1)); ``` Add this tag!

request

[Example](https://godbolt.org/z/5Mfzfv) resulting in opaque error: ```c++ auto negative(cnl::scaled_integer s) { return s < 0; } ``` Worse, `elastic_integer` [doesn't seem to help](https://godbolt.org/z/bMhe1a): ```c++ #include auto negative(cnl::scaled_integer s) { return s...

enhancement

`2e2_cnl` should be equivalent to `200_cnl`. This shouldn't be too difficult to implement. (Famous last words.) https://godbolt.org/z/YhxW6a53o

request
2.1