[libcxx-commits] [libcxx] [libc++] LWG2381: Inconsistency in parsing floating point numbers (PR #77948)

A. Jiang via libcxx-commits libcxx-commits at lists.llvm.org
Sun Apr 7 10:40:28 PDT 2024


================
@@ -176,9 +182,9 @@ int main(int, char**)
             f.get(cpp17_input_iterator<const char*>(str),
                   cpp17_input_iterator<const char*>(str+sizeof(str)),
                   ios, err, v);
-        assert(base(iter) == str+sizeof(str)-1);
-        assert(err == ios.goodbit);
-        assert(std::isnan(v));
+        assert(base(iter) == str);
+        assert(err == ios.failbit);
+        assert(v == 0.0);
     }
----------------
frederick-vs-ja wrote:

Oh, these stuffs are now completely accumulated, which seems to be pre-existing. Presumably the leading 'p' or 'e' shouldn't be accumulated ([[facet.num.get.virtuals]/3](https://eel.is/c++draft/facet.num.get.virtuals#3.2.sentence-5)).

https://github.com/llvm/llvm-project/pull/77948


More information about the libcxx-commits mailing list