From 4615ed5ea003516c8235728ac3f5f0ee2ccea8a7 Mon Sep 17 00:00:00 2001 From: Andrew Kelley Date: Fri, 22 Mar 2019 14:56:03 -0400 Subject: float literals now parse using musl's 128 bit float code fixes float literals not having 128 bit precision --- src/tokenizer.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'src/tokenizer.cpp') diff --git a/src/tokenizer.cpp b/src/tokenizer.cpp index fb30f3c12c..b050944884 100644 --- a/src/tokenizer.cpp +++ b/src/tokenizer.cpp @@ -293,10 +293,10 @@ static void cancel_token(Tokenize *t) { } static void end_float_token(Tokenize *t) { - if (t->radix == 10) { + if (t->radix == 10 || t->radix == 16) { uint8_t *ptr_buf = (uint8_t*)buf_ptr(t->buf) + t->cur_tok->start_pos; size_t buf_len = t->cur_tok->end_pos - t->cur_tok->start_pos; - if (bigfloat_init_buf_base10(&t->cur_tok->data.float_lit.bigfloat, ptr_buf, buf_len)) { + if (bigfloat_init_buf(&t->cur_tok->data.float_lit.bigfloat, ptr_buf, buf_len)) { t->cur_tok->data.float_lit.overflow = true; } return; -- cgit v1.2.3