mirror of
https://github.com/wpilibsuite/allwpilib
synced 2026-06-21 01:01:43 +00:00
Upgrade to C++20 (#4239)
* Use explicit this capture required by C++20 * Use C++20 span * Replace wpi::numbers with std::numbers * Fix C++20 clang-tidy warning false positive in fmt * Remove ciso646 include since C++20 removed that header * Fix global-buffer-overflow asan warnings in ntcore tests * Add DIOSetProxy constructor to HAL * Upgrade MSVC compiler to 2022 * Bump native-utils to 2023.2.7 (changes to std=c++20) Co-authored-by: Peter Johnson <johnson.peter@gmail.com>
This commit is contained in:
@@ -100,20 +100,20 @@ TEST(MathUtilTest, InputModulus) {
|
||||
|
||||
TEST(MathUtilTest, AngleModulus) {
|
||||
EXPECT_UNITS_NEAR(
|
||||
frc::AngleModulus(units::radian_t{-2000 * wpi::numbers::pi / 180}),
|
||||
units::radian_t{160 * wpi::numbers::pi / 180}, 1e-10);
|
||||
frc::AngleModulus(units::radian_t{-2000 * std::numbers::pi / 180}),
|
||||
units::radian_t{160 * std::numbers::pi / 180}, 1e-10);
|
||||
EXPECT_UNITS_NEAR(
|
||||
frc::AngleModulus(units::radian_t{358 * wpi::numbers::pi / 180}),
|
||||
units::radian_t{-2 * wpi::numbers::pi / 180}, 1e-10);
|
||||
EXPECT_UNITS_NEAR(frc::AngleModulus(units::radian_t{2.0 * wpi::numbers::pi}),
|
||||
frc::AngleModulus(units::radian_t{358 * std::numbers::pi / 180}),
|
||||
units::radian_t{-2 * std::numbers::pi / 180}, 1e-10);
|
||||
EXPECT_UNITS_NEAR(frc::AngleModulus(units::radian_t{2.0 * std::numbers::pi}),
|
||||
0_rad, 1e-10);
|
||||
|
||||
EXPECT_UNITS_EQ(frc::AngleModulus(units::radian_t{5 * wpi::numbers::pi}),
|
||||
units::radian_t{wpi::numbers::pi});
|
||||
EXPECT_UNITS_EQ(frc::AngleModulus(units::radian_t{-5 * wpi::numbers::pi}),
|
||||
units::radian_t{wpi::numbers::pi});
|
||||
EXPECT_UNITS_EQ(frc::AngleModulus(units::radian_t{wpi::numbers::pi / 2}),
|
||||
units::radian_t{wpi::numbers::pi / 2});
|
||||
EXPECT_UNITS_EQ(frc::AngleModulus(units::radian_t{-wpi::numbers::pi / 2}),
|
||||
units::radian_t{-wpi::numbers::pi / 2});
|
||||
EXPECT_UNITS_EQ(frc::AngleModulus(units::radian_t{5 * std::numbers::pi}),
|
||||
units::radian_t{std::numbers::pi});
|
||||
EXPECT_UNITS_EQ(frc::AngleModulus(units::radian_t{-5 * std::numbers::pi}),
|
||||
units::radian_t{std::numbers::pi});
|
||||
EXPECT_UNITS_EQ(frc::AngleModulus(units::radian_t{std::numbers::pi / 2}),
|
||||
units::radian_t{std::numbers::pi / 2});
|
||||
EXPECT_UNITS_EQ(frc::AngleModulus(units::radian_t{-std::numbers::pi / 2}),
|
||||
units::radian_t{-std::numbers::pi / 2});
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user