foo.cc: In function ‘float128 log128(float128)’:
foo.cc:12:52: error: ‘logq’ was not declared in this scope; did you mean ‘logl’?
12 | static inline float128 log128(float128 x) { return logq(x); }
| ^~~~
| logl
foo.cc: In function ‘float128 exp128(float128)’:
foo.cc:13:52: error: ‘expq’ was not declared in this scope; did you mean ‘expl’?
13 | static inline float128 exp128(float128 x) { return expq(x); }
| ^~~~
| expl
foo.cc: At global scope:
foo.cc:15:29: error: unable to find numeric literal operator ‘operator""Q’
15 | const float128 LN2 = log128(2.0Q);
| ^~~~
foo.cc:15:29: note: use ‘-fext-numeric-literals’ to enable more built-in suffixes
foo.cc:16:27: error: unable to find numeric literal operator ‘operator""Q’
16 | const float128 INF_LOG = -1e30Q;
| ^~~~~
foo.cc:16:27: note: use ‘-fext-numeric-literals’ to enable more built-in suffixes
foo.cc: In function ‘bool lessThan(const Value&, const Value&)’:
foo.cc:28:18: error: unable to find numeric literal operator ‘operator""Q’
28 | if (a.logv + 1e-15Q < b.logv) return true;
| ^~~~~~
foo.cc:28:18: note: use ‘-fext-numeric-literals’ to enable more built-in suffixes
foo.cc:29:18: error: unable to find numeric literal operator ‘operator""Q’
29 | if (b.logv + 1e-15Q < a.logv) return false;
| ^~~~~~
foo.cc:29:18: note: use ‘-fext-numeric-literals’ to enable more built-in suffixes
foo.cc: In function ‘Value add(const Value&, const Value&)’:
foo.cc:37:40: error: unable to find numeric literal operator ‘operator""Q’
37 | float128 log_sum = a.logv + log128(1.0Q + exp128(diff));
| ^~~~
foo.cc:37:40: note: use ‘-fext-numeric-literals’ to enable more built-in suffixes
foo.cc: In function ‘int main()’:
foo.cc:80:24: error: unable to find numeric literal operator ‘operator""Q’
80 | dp_prev[0] = Value(0.0Q, 0);
| ^~~~
foo.cc:80:24: note: use ‘-fext-numeric-literals’ to enable more built-in suffixes
foo.cc:81:24: error: unable to find numeric literal operator ‘operator""Q’
81 | float128 log_pow = 0.0Q;
| ^~~~
foo.cc:81:24: note: use ‘-fext-numeric-literals’ to enable more built-in suffixes
foo.cc:99:27: error: unable to find numeric literal operator ‘operator""Q’
99 | dp_cur[0] = Value(0.0Q, 0);
| ^~~~
foo.cc:99:27: note: use ‘-fext-numeric-literals’ to enable more built-in suffixes
foo.cc:105:39: error: unable to find numeric literal operator ‘operator""Q’
105 | dp_cur[cur_m] = Value(0.0Q, 1);
| ^~~~
foo.cc:105:39: note: use ‘-fext-numeric-literals’ to enable more built-in suffixes
foo.cc:132:49: error: unable to find numeric literal operator ‘operator""Q’
132 | if (now.modv == last.modv && now.logv + 1e-12Q > last.logv && now.logv - 1e-12Q < last.logv) {
| ^~~~~~
foo.cc:132:49: note: use ‘-fext-numeric-literals’ to enable more built-in suffixes
foo.cc:132:82: error: unable to find numeric literal operator ‘operator""Q’
132 | if (now.modv == last.modv && now.logv + 1e-12Q > last.logv && now.logv - 1e-12Q < last.logv) {
| ^~~~~~
foo.cc:132:82: note: use ‘-fext-numeric-literals’ to enable more built-in suffixes