diff --git a/.clang-format b/.clang-format
index ed03b21c..d3db51cc 100644
--- a/.clang-format
+++ b/.clang-format
@@ -86,7 +86,7 @@ EmptyLineBeforeAccessModifier: Leave
# IfMacros:
# - KJ_IF_MAYBE
IncludeBlocks: Merge
-IncludeCategories:
+IncludeCategories:
- Regex: '^".*'
Priority: 1
- Regex: '^".+/.*'
diff --git a/.gitignore b/.gitignore
index 319166d5..751b2745 100644
--- a/.gitignore
+++ b/.gitignore
@@ -42,4 +42,4 @@ _build/
# Conan
*.pyc
-/test_package/build/
\ No newline at end of file
+/test_package/build/
diff --git a/cmake/FindSphinx.cmake b/cmake/FindSphinx.cmake
index cb4868aa..7b1504ab 100644
--- a/cmake/FindSphinx.cmake
+++ b/cmake/FindSphinx.cmake
@@ -2,9 +2,9 @@
find_program(SPHINX_EXECUTABLE
NAMES sphinx-build
DOC "Path to sphinx-build executable")
-
+
include(FindPackageHandleStandardArgs)
-
+
# Handle standard arguments to find_package like REQUIRED and QUIET
find_package_handle_standard_args(Sphinx
"Failed to find sphinx-build executable"
diff --git a/cmake/ccache.cmake b/cmake/ccache.cmake
index c2b5c96c..396b52df 100644
--- a/cmake/ccache.cmake
+++ b/cmake/ccache.cmake
@@ -39,27 +39,27 @@ endmacro()
# [ACCOUNT_FOR_MODULES]
# [PREFIXES prefixes...]
# )
-#
+#
# BASE_DIR
# Set this option to ${CMAKE_BINARY_DIR} if you use FetchContent a lot for many projects with the same build options.
# Otherwise, if most of the sources come from the project itself then the default ${CMAKE_SOURCE_DIR} may be
# a better choice.
-#
+#
# ACCOUNT_FOR_COMPILE_TIME_HEADER_CHANGES
# Use it if some header files are being generated by the compilation process.
-#
+#
# ACCOUNT_FOR_PCH
# Use it if precompiled headers are enabled in your project. Automatically includes uses
# ACCOUNT_FOR_COMPILE_TIME_HEADER_CHANGES as well.
# See here for details: https://ccache.dev/manual/4.2.1.html#_precompiled_headers
-#
+#
# ACCOUNT_FOR_MODULES
# Use it for projects with C++20 modules. Requires DIRECT_DEPEND mode.
#
# PREFIXES
# A list of other tools that should be used together with ccache as a compiler launcher
# (i.e. distcc, icecc, sccache-dist, ...).
-#
+#
function(enable_ccache)
if(NOT CMAKE_CURRENT_SOURCE_DIR STREQUAL CMAKE_SOURCE_DIR)
message(FATAL_ERROR "'enable_ccache' function should be called from the top-level CMakeLists.txt file!")
@@ -86,7 +86,7 @@ function(enable_ccache)
message(FATAL_ERROR "'MODE' should be one of ${_valid_mode_values}")
endif()
endif()
-
+
if(NOT _enable_ccache_QUIET)
message(STATUS "Enabling ccache")
endif()
diff --git a/docs/_static/img/concepts.svg b/docs/_static/img/concepts.svg
index 495f15c5..349f3281 100644
--- a/docs/_static/img/concepts.svg
+++ b/docs/_static/img/concepts.svg
@@ -113,4 +113,4 @@ JVM: Java HotSpot(TM) 64-Bit Server VM
Default Encoding: UTF-8
Language: en
Country: US
--->
\ No newline at end of file
+-->
diff --git a/docs/_static/img/dimensions.svg b/docs/_static/img/dimensions.svg
index 5d6c4660..e9ecf42e 100644
--- a/docs/_static/img/dimensions.svg
+++ b/docs/_static/img/dimensions.svg
@@ -18,7 +18,7 @@ package Dimension <> {
abstract base_dimension [[../../framework/units.html]]
abstract exponent [[../../framework/dimensions.html#derived-dimensions]]
abstract derived_dimension [[../../framework/dimensions.html#derived-dimensions]]
-
+
base_dimension <.. exponent
exponent <.. "0..n" derived_dimension
exponent ..> derived_dimension
@@ -32,4 +32,4 @@ JVM: Java HotSpot(TM) 64-Bit Server VM
Default Encoding: UTF-8
Language: en
Country: US
--->
\ No newline at end of file
+-->
diff --git a/docs/_static/img/units.svg b/docs/_static/img/units.svg
index 04639033..59002174 100644
--- a/docs/_static/img/units.svg
+++ b/docs/_static/img/units.svg
@@ -58,7 +58,7 @@ package Unit <> [[../../framework/units.html]] {
abstract named_scaled_unit [[../../framework/units.html#named-scaled-units]]
abstract named_unit [[../../framework/units.html#base-units]]
abstract unit [[../../framework/units.html#derived-unnamed-units]]
-
+
scaled_unit <|- - unit
scaled_unit <|- - named_unit
scaled_unit <|- - named_scaled_unit
@@ -100,7 +100,7 @@ package Unit <> [[../../framework/units.html]] {
abstract named_scaled_unit [[../../framework/units.html#named-scaled-units]]
abstract named_unit [[../../framework/units.html#base-units]]
abstract unit [[../../framework/units.html#derived-unnamed-units]]
-
+
scaled_unit <|- - unit
scaled_unit <|- - named_unit
scaled_unit <|- - named_scaled_unit
@@ -119,4 +119,4 @@ JVM: Java HotSpot(TM) 64-Bit Server VM
Default Encoding: UTF-8
Language: en
Country: US
--->
\ No newline at end of file
+-->
diff --git a/docs/conf.py b/docs/conf.py
index 36168772..382ae080 100644
--- a/docs/conf.py
+++ b/docs/conf.py
@@ -345,7 +345,7 @@ html_static_path = ['_static']
# configuration directory) that is the logo of the docs. It is placed at the
# top of the sidebar; its width should therefore not exceed 200 pixels.
# Default: None.
-# html_logo =
+# html_logo =
# These paths are either relative to html_static_path or fully qualified
# paths (eg. https://...)
@@ -359,10 +359,10 @@ html_css_files = [
def configureDoxyfile(input_dir, output_dir):
with open('Doxyfile.in', 'r') as file:
filedata = file.read()
-
+
filedata = filedata.replace('@DOXYGEN_INPUT_DIR@', input_dir)
filedata = filedata.replace('@DOXYGEN_OUTPUT_DIR@', output_dir)
-
+
with open('Doxyfile', 'w') as file:
file.write(filedata)
diff --git a/docs/design/downcasting.rst b/docs/design/downcasting.rst
index c804c5c5..ebce55ba 100644
--- a/docs/design/downcasting.rst
+++ b/docs/design/downcasting.rst
@@ -45,7 +45,7 @@ to use inheritance:
.. image:: /_static/img/downcast_1.png
:align: center
-..
+..
http://www.nomnoml.com
[derived_dimension_base>]<:-[dim_area]
@@ -76,7 +76,7 @@ The downcasting facility is provided by injecting two classes into our hierarchy
.. image:: /_static/img/downcast_2.png
:align: center
-..
+..
http://www.nomnoml.com
[downcast_base>>]<:-[detail::derived_dimension_base>]
@@ -93,7 +93,7 @@ In the above example:
idiom, stores the base of a downcasting operation in a ``downcast_base_type`` member type,
and provides only a Hidden Friend non-member function declaration of ``downcast_guide`` which is an
:abbr:`ADL (Argument Dependent Lookup)` entry point for the downcasting operation::
-
+
template
struct downcast_base {
using downcast_base_type = BaseType;
diff --git a/docs/framework/basic_concepts.rst b/docs/framework/basic_concepts.rst
index 8fbb6665..93139bd8 100644
--- a/docs/framework/basic_concepts.rst
+++ b/docs/framework/basic_concepts.rst
@@ -13,7 +13,7 @@ The most important concepts in the library are `Unit`, `Dimension`,
..
https://www.planttext.com
-
+
@startuml
skinparam monochrome true
diff --git a/docs/framework/dimensions.rst b/docs/framework/dimensions.rst
index 6e9fb553..534db6b2 100644
--- a/docs/framework/dimensions.rst
+++ b/docs/framework/dimensions.rst
@@ -12,7 +12,7 @@ dimensions.
-..
+..
https://www.planttext.com
diff --git a/docs/framework/quantities.rst b/docs/framework/quantities.rst
index 71bd8858..661485ac 100644
--- a/docs/framework/quantities.rst
+++ b/docs/framework/quantities.rst
@@ -38,7 +38,7 @@ Quantity Construction Helpers
quantities of different dimensions and units. Users are encourages to try them
out, vote, and share feedback in this
`discussion on GitHub `_.
-
+
Most probably only one of the options will be included in the final product so
please do not hesitate to vote on the one that suits you the best.
@@ -83,7 +83,7 @@ each and every :term:`unit` in the library::
template using m_per_s = units::isq::si::speed;
template using km_per_h = units::isq::si::speed;
-
+
}
#endif // UNITS_NO_ALIASES
@@ -159,7 +159,7 @@ It is also possible to easily define custom quantity references from existing on
User Defined Literals (Experimental)
++++++++++++++++++++++++++++++++++++
-
+
Alternatively, to construct quantities with compile-time known values the library provides
:abbr:`UDL (User Defined Literal)` s for each :term:`unit` of every :term:`dimension`::
@@ -191,7 +191,7 @@ Thanks to them the same code can be as simple as::
language (i.e. ``F`` (farad), ``J`` (joule), ``W`` (watt), ``K`` (kelvin),
``d`` (day), ``l`` or ``L`` (litre), ``erg``, ``ergps``). This is why the
``_q_`` prefix was consistently applied to all the UDLs.
-
+
UDLs vs Quantity References
+++++++++++++++++++++++++++
@@ -258,12 +258,12 @@ UDLs are helpful but they also have some disadvantages compared to Quantity Refe
4. UDLs are verbose to define and standardize
- UDLs:
-
+
- for each unit an integral and a floating-point UDL have to be defined
- have to be provided for unnamed derived units (i.e. ``_q_km_per_h``)
-
+
- Quantity References:
-
+
- one reference per unit
- unnamed derived units are constructed from base references so no explicit
definition is required (i.e. ``km / h``)
@@ -276,9 +276,9 @@ UDLs are helpful but they also have some disadvantages compared to Quantity Refe
by the user so there is no chance for a truncating conversion on a quantity construction.
6. UDLs take long to compile
-
+
- UDLs:
-
+
Every unit requires two UDLs to be defined which in turns requires two instantiations
of "heavy" `quantity` class template. Those are then not often used by non-UDL construction
as most users instantiate `quantity` class template with `int` or `double` which
@@ -298,7 +298,7 @@ Quantity References vs Unit-specific Aliases
++++++++++++++++++++++++++++++++++++++++++++
1. Shadowing issues
-
+
- Quantity References
References occupy a pool of many short identifiers which sometimes shadow the variables,
@@ -357,11 +357,11 @@ Quantity References vs Unit-specific Aliases
using namespace units::isq::si::time_references;
return d * m / (t * s);
}
-
+
Notice that if ``using namespace units::isq::si::references;`` was used instead above it could
cause a clash of ``t`` function parameter with ``si::tonne`` unit symbol if ``si/mass.h`` was
included.
-
+
- Unit-specific Aliases
The same using aliases can look as follows::
@@ -392,7 +392,7 @@ Quantity References vs Unit-specific Aliases
static_assert(2 * km / (2 * (km / h)) == 1 * h);
- Unit-specific Aliases
-
+
Aliases do not use operator syntax thus they are not affected by the precedence issue.
5. Composition for unnamed derived units
@@ -425,7 +425,7 @@ Quantity References vs Unit-specific Aliases
constexpr auto meter = 1 * m;
std::cout << " = " << quantity_cast(meter) << '\n';
-
+
The above code for references may look as follows::
constexpr auto meter = m(1);
diff --git a/docs/framework/units.rst b/docs/framework/units.rst
index 4e21b1c2..86dd0e1b 100644
--- a/docs/framework/units.rst
+++ b/docs/framework/units.rst
@@ -25,7 +25,7 @@ of a `scaled_unit` class template:
-..
+..
https://www.planttext.com
@startuml
@@ -65,7 +65,7 @@ of a `scaled_unit` class template:
abstract named_scaled_unit [[../../framework/units.html#named-scaled-units]]
abstract named_unit [[../../framework/units.html#base-units]]
abstract unit [[../../framework/units.html#derived-unnamed-units]]
-
+
scaled_unit <|-- unit
scaled_unit <|-- named_unit
scaled_unit <|-- named_scaled_unit
@@ -209,7 +209,7 @@ and define units like::
struct electronvolt : named_scaled_unit {};
-..
+..
TODO Submit a bug for above lexing problem
Finally, the last of the `named_scaled_unit` class template parameters
@@ -256,16 +256,16 @@ Alternative hierarchy of prefixes is the one used in data information
domain::
namespace iec80000 {
-
+
struct binary_prefix : prefix_family {};
-
+
struct kibi : units::prefix {};
struct mebi : units::prefix {};
struct gibi : units::prefix {};
struct tebi : units::prefix {};
struct pebi : units::prefix {};
struct exbi : units::prefix {};
-
+
}
With the definitions like above we can easily define prefixed unit. For
diff --git a/docs/quick_start.rst b/docs/quick_start.rst
index 857ddb01..31962876 100644
--- a/docs/quick_start.rst
+++ b/docs/quick_start.rst
@@ -48,20 +48,20 @@ of basic library features::
#include
#include
#include
-
+
using namespace units::isq;
-
+
constexpr Speed auto avg_speed(Length auto d, Time auto t)
{
return d / t;
}
-
+
int main()
{
using namespace units::isq::si::literals;
using namespace units::isq::si::references;
using namespace units::aliases::isq::si::international;
-
+
constexpr Speed auto v1 = 110 * (km / h);
constexpr Speed auto v2 = mi_per_h(70.);
constexpr Speed auto v3 = avg_speed(220_q_km, 2_q_h);
@@ -69,7 +69,7 @@ of basic library features::
constexpr Speed auto v5 = quantity_cast>(v3);
constexpr Speed auto v6 = quantity_cast(v4);
constexpr Speed auto v7 = quantity_cast(v6);
-
+
std::cout << v1 << '\n'; // 110 km/h
std::cout << v2 << '\n'; // 70 mi/h
std::cout << std::format("{}", v3) << '\n'; // 110 km/h
diff --git a/docs/reference/core/concepts.rst b/docs/reference/core/concepts.rst
index f2383e3f..ecc79b8a 100644
--- a/docs/reference/core/concepts.rst
+++ b/docs/reference/core/concepts.rst
@@ -144,11 +144,11 @@ Concepts
.. concept:: template QuantityKindEquivalentTo
A concept matching two equivalent quantity kinds. Satisfied by quantity kinds having equivalent kinds.
-
+
.. concept:: template QuantityPointKindOf
-
+
A concept matching only quantity point kinds of a specific point kind.
-
+
:tparam QPK: Quantity point kind to verify.
:tparam PK: Point kind type to use for verification.
diff --git a/docs/reference/systems/isq.rst b/docs/reference/systems/isq.rst
index 81ae45d0..aba644e5 100644
--- a/docs/reference/systems/isq.rst
+++ b/docs/reference/systems/isq.rst
@@ -12,7 +12,7 @@ International System of Quantities (ISQ)
Systems of Units based on the SI
--------------------------------
-
+
.. toctree::
:maxdepth: 2
diff --git a/example/aliases/foot_pound_second.cpp b/example/aliases/foot_pound_second.cpp
index 2655014f..3b2dcab5 100644
--- a/example/aliases/foot_pound_second.cpp
+++ b/example/aliases/foot_pound_second.cpp
@@ -36,7 +36,7 @@
using namespace units::aliases::isq;
-// Some basic specs for the warship
+// Some basic specs for the warship
struct Ship {
si::fps::length::ft<> length;
si::fps::length::ft<> draft;
@@ -45,7 +45,7 @@ struct Ship {
si::fps::speed::ft_per_s<> speed;
si::fps::mass::lb<> mass;
- si::fps::length::in<> mainGuns;
+ si::fps::length::in<> mainGuns;
si::fps::mass::lb<> shellMass;
si::fps::speed::ft_per_s<> shellSpeed;
si::fps::power::ft_pdl_per_s<> power;
@@ -80,7 +80,7 @@ int main()
using namespace units::aliases::isq::si;
using namespace units::aliases::isq::si::fps;
using units::aliases::isq::si::fps::length::ft; // to disambiguate from si::femptotonne
-
+
// KMS Bismark, using the units the Germans would use, taken from Wiki
auto bismark = Ship{.length{m<>(251.)}, .draft{m<>(9.3)}, .beam{m<>(36)}, .speed{km_per_h<>(56)}, .mass{t<>(50'300)}, .mainGuns{mm<>(380)}, .shellMass{kg<>(800)}, .shellSpeed{m_per_s<>(820.)}, .power{kW<>(110.45)}};
diff --git a/example/aliases/linear_algebra.cpp b/example/aliases/linear_algebra.cpp
index 493d6cfd..79ef9f52 100644
--- a/example/aliases/linear_algebra.cpp
+++ b/example/aliases/linear_algebra.cpp
@@ -157,7 +157,7 @@ void matrix_of_quantity_add()
void matrix_of_quantity_multiply_same()
{
std::cout << "\nmatrix_of_quantity_multiply_same:\n";
-
+
matrix> v = {{ m<>(1), m<>(2), m<>(3) }, { m<>(4), m<>(5), m<>(6) }, { m<>(7), m<>(8), m<>(9) }};
vector> u = { m<>(3), m<>(2), m<>(1) };
@@ -304,7 +304,7 @@ void quantity_of_matrix_add()
void quantity_of_matrix_multiply_same()
{
std::cout << "\nquantity_of_matrix_multiply_same:\n";
-
+
length_m<> v(matrix<>{{ 1, 2, 3 }, { 4, 5, 6 }, { 7, 8, 9 }});
length_v<> u(vector<>{ 3, 2, 1 });
diff --git a/example/kalman_filter/kalman_filter-example_6.cpp b/example/kalman_filter/kalman_filter-example_6.cpp
index b30a5cbd..e17045da 100644
--- a/example/kalman_filter/kalman_filter-example_6.cpp
+++ b/example/kalman_filter/kalman_filter-example_6.cpp
@@ -73,7 +73,7 @@ int main()
const auto process_noise_variance = 0.0001 * (deg_C * deg_C);
const estimation initial = { state{ quantity_point(10. * deg_C) }, pow<2>(100. * deg_C) };
- const std::array measurements = {
+ const std::array measurements = {
quantity_point(49.95 * deg_C),
quantity_point(49.967 * deg_C),
quantity_point(50.1 * deg_C),
diff --git a/example/kalman_filter/kalman_filter-example_7.cpp b/example/kalman_filter/kalman_filter-example_7.cpp
index 6a48c3a5..743a0916 100644
--- a/example/kalman_filter/kalman_filter-example_7.cpp
+++ b/example/kalman_filter/kalman_filter-example_7.cpp
@@ -73,7 +73,7 @@ int main()
const auto process_noise_variance = 0.0001 * (deg_C * deg_C);
const estimation initial = { state{ quantity_point(10. * deg_C) }, pow<2>(100. * deg_C) };
- const std::array measurements = {
+ const std::array measurements = {
quantity_point(50.45 * deg_C),
quantity_point(50.967 * deg_C),
quantity_point(51.6 * deg_C),
diff --git a/example/kalman_filter/kalman_filter-example_8.cpp b/example/kalman_filter/kalman_filter-example_8.cpp
index e3cee52a..13f379f1 100644
--- a/example/kalman_filter/kalman_filter-example_8.cpp
+++ b/example/kalman_filter/kalman_filter-example_8.cpp
@@ -73,7 +73,7 @@ int main()
const auto process_noise_variance = 0.15 * (deg_C * deg_C);
const estimation initial = { state{ quantity_point(10. * deg_C) }, pow<2>(100. * deg_C) };
- const std::array measurements = {
+ const std::array measurements = {
quantity_point(50.45 * deg_C),
quantity_point(50.967 * deg_C),
quantity_point(51.6 * deg_C),
diff --git a/example/literals/foot_pound_second.cpp b/example/literals/foot_pound_second.cpp
index 4f3548ae..317b127c 100644
--- a/example/literals/foot_pound_second.cpp
+++ b/example/literals/foot_pound_second.cpp
@@ -37,7 +37,7 @@
using namespace units::isq;
-// Some basic specs for the warship
+// Some basic specs for the warship
struct Ship {
si::fps::length length;
si::fps::length draft;
@@ -46,7 +46,7 @@ struct Ship {
si::fps::speed speed;
si::fps::mass mass;
- si::fps::length mainGuns;
+ si::fps::length mainGuns;
si::fps::mass shellMass;
si::fps::speed shellSpeed;
si::fps::power power;
@@ -81,7 +81,7 @@ int main()
{
using namespace units::isq::si::literals;
using namespace units::isq::si::fps::literals;
-
+
// KMS Bismark, using the units the Germans would use, taken from Wiki
auto bismark = Ship{.length{251._q_m}, .draft{9.3_q_m}, .beam{36_q_m}, .speed{56_q_km_per_h}, .mass{50'300_q_t}, .mainGuns{380_q_mm}, .shellMass{800_q_kg}, .shellSpeed{820._q_m_per_s}, .power{110.45_q_kW}};
diff --git a/example/literals/linear_algebra.cpp b/example/literals/linear_algebra.cpp
index 75812b2b..e10823c8 100644
--- a/example/literals/linear_algebra.cpp
+++ b/example/literals/linear_algebra.cpp
@@ -158,7 +158,7 @@ void matrix_of_quantity_add()
void matrix_of_quantity_multiply_same()
{
std::cout << "\nmatrix_of_quantity_multiply_same:\n";
-
+
matrix> v = {{ 1_q_m, 2_q_m, 3_q_m }, { 4_q_m, 5_q_m, 6_q_m }, { 7_q_m, 8_q_m, 9_q_m }};
vector> u = { 3_q_m, 2_q_m, 1_q_m };
@@ -303,7 +303,7 @@ void quantity_of_matrix_add()
void quantity_of_matrix_multiply_same()
{
std::cout << "\nquantity_of_matrix_multiply_same:\n";
-
+
length_m<> v(matrix<>{{ 1, 2, 3 }, { 4, 5, 6 }, { 7, 8, 9 }});
length_v<> u(vector<>{ 3, 2, 1 });
diff --git a/example/references/foot_pound_second.cpp b/example/references/foot_pound_second.cpp
index a00a096e..b76a2b53 100644
--- a/example/references/foot_pound_second.cpp
+++ b/example/references/foot_pound_second.cpp
@@ -40,7 +40,7 @@
using namespace units::isq;
-// Some basic specs for the warship
+// Some basic specs for the warship
struct Ship {
si::fps::length length;
si::fps::length draft;
@@ -49,7 +49,7 @@ struct Ship {
si::fps::speed speed;
si::fps::mass mass;
- si::fps::length mainGuns;
+ si::fps::length mainGuns;
si::fps::mass shellMass;
si::fps::speed shellSpeed;
si::fps::power power;
@@ -85,7 +85,7 @@ int main()
using namespace units::isq::si::references;
using namespace units::isq::si::fps::references;
using units::isq::si::fps::references::ft; // collides with si::femtotonne (alias unit of mass)
-
+
// KMS Bismark, using the units the Germans would use, taken from Wiki
auto bismark = Ship{.length{251. * m}, .draft{9.3 * m}, .beam{36 * m}, .speed{56 * (km / h)}, .mass{50'300 * t}, .mainGuns{380 * mm}, .shellMass{800 * kg}, .shellSpeed{820. * (m / s)}, .power{110.45 * kW}};
diff --git a/example/references/linear_algebra.cpp b/example/references/linear_algebra.cpp
index 9290f2e5..f3b23a49 100644
--- a/example/references/linear_algebra.cpp
+++ b/example/references/linear_algebra.cpp
@@ -158,7 +158,7 @@ void matrix_of_quantity_add()
void matrix_of_quantity_multiply_same()
{
std::cout << "\nmatrix_of_quantity_multiply_same:\n";
-
+
matrix> v = {{ 1 * m, 2 * m, 3 * m }, { 4 * m, 5 * m, 6 * m }, { 7 * m, 8 * m, 9 * m }};
vector> u = { 3 * m, 2 * m, 1 * m };
@@ -303,7 +303,7 @@ void quantity_of_matrix_add()
void quantity_of_matrix_multiply_same()
{
std::cout << "\nquantity_of_matrix_multiply_same:\n";
-
+
length_m<> v(matrix<>{{ 1, 2, 3 }, { 4, 5, 6 }, { 7, 8, 9 }});
length_v<> u(vector<>{ 3, 2, 1 });
diff --git a/src/core/include/units/generic/dimensionless.h b/src/core/include/units/generic/dimensionless.h
index 269e945e..d1d34c2e 100644
--- a/src/core/include/units/generic/dimensionless.h
+++ b/src/core/include/units/generic/dimensionless.h
@@ -35,7 +35,7 @@ struct percent : named_scaled_unit
/**
* @brief Dimension one
- *
+ *
* Dimension for which all the exponents of the factors corresponding to the base
* dimensions are zero. Also commonly named as "dimensionless".
*/
diff --git a/src/systems/si-fps/include/units/isq/si/fps/force.h b/src/systems/si-fps/include/units/isq/si/fps/force.h
index 43e91a01..ebccdb3a 100644
--- a/src/systems/si-fps/include/units/isq/si/fps/force.h
+++ b/src/systems/si-fps/include/units/isq/si/fps/force.h
@@ -44,7 +44,7 @@ struct pound_force : named_scaled_unit {};
-// https://en.wikipedia.org/wiki/Kip_(unit),
+// https://en.wikipedia.org/wiki/Kip_(unit),
struct kip : alias_unit {};
struct dim_force : isq::dim_force {};
diff --git a/test/unit_test/static/fixed_string_test.cpp b/test/unit_test/static/fixed_string_test.cpp
index e47fe358..8fadd9d7 100644
--- a/test/unit_test/static/fixed_string_test.cpp
+++ b/test/unit_test/static/fixed_string_test.cpp
@@ -29,9 +29,9 @@ namespace {
constexpr basic_fixed_string txt1('a');
static_assert(txt1.size() == 1);
static_assert(txt1[0] == 'a');
-static_assert(txt1 == basic_fixed_string("a"));
-static_assert(txt1 < basic_fixed_string("b"));
-static_assert(txt1 < basic_fixed_string("aa"));
+static_assert(txt1 == basic_fixed_string("a"));
+static_assert(txt1 < basic_fixed_string("b"));
+static_assert(txt1 < basic_fixed_string("aa"));
static_assert(txt1 + basic_fixed_string('b') == basic_fixed_string("ab"));
static_assert(basic_fixed_string('b') + txt1 == basic_fixed_string("ba"));
static_assert(txt1 + basic_fixed_string("bc") == basic_fixed_string("abc"));
@@ -42,9 +42,9 @@ static_assert(txt2.size() == 3);
static_assert(txt2[0] == 'a');
static_assert(txt2[1] == 'b');
static_assert(txt2[2] == 'c');
-static_assert(txt2 == basic_fixed_string("abc"));
-static_assert(txt2 < basic_fixed_string("b"));
-static_assert(txt2 > basic_fixed_string("aa"));
+static_assert(txt2 == basic_fixed_string("abc"));
+static_assert(txt2 < basic_fixed_string("b"));
+static_assert(txt2 > basic_fixed_string("aa"));
static_assert(txt2 + basic_fixed_string('d') == basic_fixed_string("abcd"));
static_assert(basic_fixed_string('d') + txt2 == basic_fixed_string("dabc"));
static_assert(txt2 + basic_fixed_string("def") == basic_fixed_string("abcdef"));
diff --git a/test/unit_test/static/si_fps_test.cpp b/test/unit_test/static/si_fps_test.cpp
index 27fd6dc7..d9e494d1 100644
--- a/test/unit_test/static/si_fps_test.cpp
+++ b/test/unit_test/static/si_fps_test.cpp
@@ -42,11 +42,11 @@ static_assert(si::fps::time(1) == si::time(1));
static_assert(si::fps::speed(1) == si::speed(0.3048));
static_assert(si::fps::area(1) == si::area(0.09290304));
static_assert(si::fps::acceleration(1) == si::acceleration(0.3048));
-static_assert(si::fps::force(1) > si::force(0.138254) &&
+static_assert(si::fps::force(1) > si::force(0.138254) &&
si::fps::force(1) < si::force(0.138256));
-static_assert(si::fps::energy(1) > si::energy(0.042140110093804) &&
+static_assert(si::fps::energy(1) > si::energy(0.042140110093804) &&
si::fps::energy(1) < si::energy(0.042140110093806));
-static_assert(si::fps::power(1) > si::power(0.042140110093804) &&
+static_assert(si::fps::power(1) > si::power(0.042140110093804) &&
si::fps::power(1) < si::power(0.042140110093806));
static_assert(si::fps::pressure(1) > si::pressure(1.4881639435) &&
si::fps::pressure(1) < si::pressure(1.4881639437));
@@ -61,11 +61,11 @@ static_assert(si::fps::time(1) == 1_q_s);
static_assert(si::fps::speed(1) == 0.3048_q_m_per_s);
static_assert(si::fps::area(1) == 0.09290304_q_m2);
static_assert(si::fps::acceleration(1) == 0.3048_q_m_per_s2);
-static_assert(si::fps::force(1) > 0.138254_q_N &&
+static_assert(si::fps::force(1) > 0.138254_q_N &&
si::fps::force(1) < 0.138256_q_N);
-static_assert(si::fps::energy(1) > 0.042140110093804_q_J &&
+static_assert(si::fps::energy(1) > 0.042140110093804_q_J &&
si::fps::energy(1) < 0.042140110093806_q_J);
-static_assert(si::fps::power(1) > 0.042140110093804_q_W &&
+static_assert(si::fps::power(1) > 0.042140110093804_q_W &&
si::fps::power(1) < 0.042140110093806_q_W);
static_assert(si::fps::pressure(1) > 1.4881639435_q_Pa &&
si::fps::pressure(1) < 1.4881639437_q_Pa);
@@ -82,11 +82,11 @@ static_assert(1_q_s == si::time(1));
static_assert(1_q_ft_per_s == si::speed(0.3048));
static_assert(1_q_ft2 == si::area(0.09290304));
static_assert(1_q_ft_per_s2 == si::acceleration(0.3048));
-static_assert(1_q_pdl > si::force(0.138254) &&
+static_assert(1_q_pdl > si::force(0.138254) &&
1_q_pdl < si::force(0.138256));
-static_assert(1_q_ft_pdl > si::energy(0.042140110093804) &&
+static_assert(1_q_ft_pdl > si::energy(0.042140110093804) &&
1_q_ft_pdl < si::energy(0.042140110093806));
-static_assert(1_q_ft_pdl_per_s > si::power(0.042140110093804) &&
+static_assert(1_q_ft_pdl_per_s > si::power(0.042140110093804) &&
1_q_ft_pdl_per_s < si::power(0.042140110093806));
static_assert(1_q_pdl_per_ft2> si::pressure(1.4881639435) &&
1_q_pdl_per_ft2 < si::pressure(1.4881639437));
@@ -106,11 +106,11 @@ static_assert(1_q_s == 1_q_s);
static_assert(1_q_ft_per_s == 0.3048_q_m_per_s);
static_assert(1_q_ft2 == 0.09290304_q_m2);
static_assert(1_q_ft_per_s2 == 0.3048_q_m_per_s2);
-static_assert(1_q_pdl > 0.138254_q_N &&
+static_assert(1_q_pdl > 0.138254_q_N &&
1_q_pdl < 0.138256_q_N);
-static_assert(1_q_ft_pdl > 0.042140110093804_q_J &&
+static_assert(1_q_ft_pdl > 0.042140110093804_q_J &&
1_q_ft_pdl < 0.042140110093806_q_J);
-static_assert(1_q_ft_pdl_per_s > 0.042140110093804_q_W &&
+static_assert(1_q_ft_pdl_per_s > 0.042140110093804_q_W &&
1_q_ft_pdl_per_s < 0.042140110093806_q_W);
static_assert(1_q_pdl_per_ft2> 1.4881639435_q_Pa &&
1_q_pdl_per_ft2 <1.4881639437_q_Pa);
@@ -144,7 +144,7 @@ static_assert(quantity_cast>(si::length(2) == si::area(1.2192)); // TODO Add support for comparing of an unknown_dimension
-static_assert(quantity_cast>(2. * ft) * si::length(2) == si::area(1.2192));
+static_assert(quantity_cast>(2. * ft) * si::length(2) == si::area(1.2192));
static_assert(quantity_cast>(2. * ft) * si::length(0.6096) == si::area(0.371612160)); // 2 ft * 2 ft == 4 sq ft
static_assert(2. * ft * quantity_cast>(si::length(0.6096)) == 4._q_ft2);