Commit Graph
1778 Commits
Author SHA1 Message Date
Jonas Hoppe f651438f29 [clang-format] 2024-09-10 09:58:05 +02:00
Jonas Hoppe ee4a7066ca [msvc][fix] remove MP_UNITS_IS_CONST_EXPR_WORKAROUND 2024-09-10 08:56:52 +02:00
Jonas Hoppe 3da6db7d04 [msvc][fix] remove all unnecessary MP_UNITS_IS_CONST_EXPR_WORKAROUND 2024-09-09 13:35:55 +02:00
Jonas Hoppe eaed0614ef [msvc][fix][unit.h] move requires before function signature instead of using MP_UNITS_IS_CONST_EXPR_WORKAROUND 2024-09-09 12:29:50 +02:00
Jonas Hoppe 9ce76ede3a [msvc][fix] remvoe MP_UNITS_IS_CONST_EXPR_WORKAROUND in constexpr branches 2024-09-09 12:25:09 +02:00
Jonas Hoppe aebf55c09a Revert "Merge branch 'master-msvc-194-only-lib' into master-msvc-194"
This reverts commit e3034c5554, reversing
changes made to 8be458b0b7.
2024-09-09 12:10:39 +02:00
Jonas Hoppe 1d0dbf48b1 Merge remote-tracking branch 'mpusz/master' into master-msvc-194 2024-09-09 12:05:19 +02:00
Mateusz Pusz 40dc07a42c refactor: quantity_point default-constructibility removed from the quantity_from constraints 2024-09-06 18:31:51 +02:00
Mateusz Pusz c06a533f50 refactor: Representation concepts now requires WeaklyRegular instead of std::regular 2024-09-06 18:30:58 +02:00
Mateusz Pusz 664d52c0c0 refactor: perfect forwarding interfaces improved 2024-09-06 16:02:51 +02:00
Mateusz Pusz cbe37cdadf fix: compiler crashes workaround 2024-09-06 15:57:11 +02:00
Mateusz Pusz a9bcec46c8 fix: static removed from a constexpr variable in a constexpr function as this is supported in C++23 only 2024-09-06 15:56:45 +02:00
Mateusz Pusz 1570bda905 fix: quantity scaling between different prefixes improved
Resolves #608
2024-09-06 12:28:11 +02:00
Mateusz Pusz 7eb9b764bd fix: workarounds for not-working CWG2387 2024-09-05 22:05:35 +02:00
Mateusz Pusz 45013f6752 fix: inline restored for non-template constexpr global variables 2024-09-05 10:06:43 +02:00
Mateusz Pusz 2e840cfdb4 refactor: Repetitive inline constexpr removed as no longer needed
Not needed anymore as stated in cplusplus/draft#4601
2024-09-05 08:43:36 +02:00
Jonas Hoppe 93af5db137 [clang-format] 2024-09-04 10:30:39 +02:00
Jonas Hoppe 8be458b0b7 [msvc] remove MP_UNITS_CONSTRAINED_AUTO_WORKAROUND 2024-09-04 10:19:15 +02:00
Jonas Hoppe b05b3796ce [PR] move is_mp_units_stream to detail and change from concept to constexpr function 2024-09-04 09:49:04 +02:00
Jonas Hoppe 712afc34b7 [PR] rename macros to match naming conventions for workaround 2024-09-04 09:37:41 +02:00
Jonas Hoppe d18bb28a25 [PR] remove MP_UNITS_TYPENAME 2024-09-04 09:32:21 +02:00
Jonas Hoppe d1897b1fe9 [PR] change disable error to macro 2024-09-04 09:28:44 +02:00
Jonas Hoppe 0b0d3345e5 [clang-format] 2024-09-03 13:17:44 +02:00
Jonas Hoppe b5c9dca61f [naming] change some more names 2024-09-03 12:31:19 +02:00
Jonas Hoppe 48c4f297c8 [hacks] add MP_UNITS_IS_CONST_EXPR(from) 2024-09-03 12:27:57 +02:00
Jonas Hoppe a89bfc6c21 [hacks] add MP_UNITS_IS_VALUE 2024-09-03 12:14:42 +02:00
Jonas Hoppe 5ae1304eee [hacks] add MP_UNITS_EXPRESSION 2024-09-03 12:07:08 +02:00
Jonas Hoppe e258009a6a [msvc][fmt] diable warning in smalest scope 2024-09-03 11:27:53 +02:00
Jonas Hoppe 4d715734bf [msvc][fix] update changes for master 2024-09-03 11:27:44 +02:00
Jonas Hoppe 918a8b7e8f [msvc][fix] parse error in refernce.h. resolved with more brackets. 2024-09-03 09:59:18 +02:00
Jonas Hoppe 3a6fc90c7b [msvc][fix] compiler does not get that expression can be evalutated to a const. (caused by read of variable outside its lifetime) 2024-09-03 09:47:11 +02:00
Jonas Hoppe cea5d70dc0 [msvc][fix] disable C4702 unreachable code 2024-09-03 09:45:41 +02:00
Jonas Hoppe 924782f557 [mscv][fix] weird problem with PO in quantity_point.h. replace with point_origin where needed 2024-09-03 09:45:35 +02:00
Jonas Hoppe 3d32d5d833 [msvc][fix] internal compiler error for requires expression. "simplify" with extra concept 2024-09-03 09:43:38 +02:00
Jonas Hoppe 5e657bac70 [msvc][fix] msvc complains about requires expression (no common type found) replace with concept has_common_type 2024-09-03 09:43:37 +02:00
Jonas Hoppe 464c55538f [msvc][fix] resolve ambigious call to find_first_of 2024-09-03 09:43:37 +02:00
Jonas Hoppe 19e358e56d [mscv][fix] string_view iterator is not castalbe to char 2024-09-03 09:43:37 +02:00
Jonas Hoppe 30ac2882bd [msvc][fix] a lot of brackets where msvc prefers
the type and not the value. (Issue reported)
2024-09-03 09:43:34 +02:00
Jonas Hoppe 5d3ed201b6 [msvc][fix] some short names hide global identifier 2024-09-03 09:42:57 +02:00
Jonas Hoppe aa26488b60 [msvc][fix] msvc compiler has different behaviour for *= and * at compile time (issue reported) 2024-09-03 09:42:57 +02:00
Jonas Hoppe 33837c5042 [msvc][fix] some short names hide global identifier 2024-09-03 09:42:48 +02:00
Mateusz Pusz f0e19d004c fix: the remaining pascal macro conflicts fixed
Resolves #605
2024-08-25 17:31:58 +02:00
Mateusz Pusz 77625d63cb feat: 💥 unit_can_be_prefixed removed - from now on all named units can be prefixed
Resolves #604
2024-08-22 08:06:00 +02:00
Mateusz Pusz f983c31eb2 fix: workaround for linking issues on the older clang compilers 2024-07-30 16:07:45 +02:00
Chip Hogg f088d544b3 Fix known errors 2024-07-29 20:43:06 -04:00
Chip Hogg e2829de1c8 Merge branch 'master' into chiphogg/sqrt-mag#474 2024-07-29 20:36:40 -04:00
Mateusz Pusz d04d546b17 fix: target_compile_definitions scope fixed for import std; 2024-07-29 10:04:07 +02:00
Chip Hogg f6696e8f68 Fix formatting 2024-07-24 19:48:05 -04:00
Chip Hogg 7e894788d7 Compute values for rational magnitude powers
Since this will only ever be done at compile time (as guaranteed by
using `consteval`), we can afford to prioritize precision over speed.
To compute an Nth root, we simply do a binary search over representable
floating point numbers, looking for the number whose Nth power most
closely matches the original number.

Fixes #494.  We have included a test case reproducing the original
problem exactly.  All tests use "within 4 ULPs" as the criterion, which
is (I believe) equivalent to the googletest `EXPECT_DOUBLE_EQ`
criterion.
2024-07-24 10:31:44 -04:00
Mateusz Pusz f9ae701b4e fix: MP_UNITS_BUILD_IMPORT_STD verification fixed 2024-07-17 21:31:28 +02:00