Skip to content

Commit 5af03b5

Browse files
authored
Merge 2023-06 LWG Motion 26
P2734R0 Adding the new 2022 SI prefixes
2 parents 77cd5e1 + 86d15b6 commit 5af03b5

File tree

2 files changed

+35
-22
lines changed

2 files changed

+35
-22
lines changed

source/meta.tex

Lines changed: 34 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -2541,26 +2541,30 @@
25412541
constexpr bool @\libglobal{ratio_greater_equal_v}@ = ratio_greater_equal<R1, R2>::value;
25422542

25432543
// \ref{ratio.si}, convenience SI typedefs
2544-
using @\libglobal{yocto}@ = ratio<1, 1'000'000'000'000'000'000'000'000>; // see below
2545-
using @\libglobal{zepto}@ = ratio<1, 1'000'000'000'000'000'000'000>; // see below
2546-
using @\libglobal{atto}@ = ratio<1, 1'000'000'000'000'000'000>;
2547-
using @\libglobal{femto}@ = ratio<1, 1'000'000'000'000'000>;
2548-
using @\libglobal{pico}@ = ratio<1, 1'000'000'000'000>;
2549-
using @\libglobal{nano}@ = ratio<1, 1'000'000'000>;
2550-
using @\libglobal{micro}@ = ratio<1, 1'000'000>;
2551-
using @\libglobal{milli}@ = ratio<1, 1'000>;
2552-
using @\libglobal{centi}@ = ratio<1, 100>;
2553-
using @\libglobal{deci}@ = ratio<1, 10>;
2554-
using @\libglobal{deca}@ = ratio< 10, 1>;
2555-
using @\libglobal{hecto}@ = ratio< 100, 1>;
2556-
using @\libglobal{kilo}@ = ratio< 1'000, 1>;
2557-
using @\libglobal{mega}@ = ratio< 1'000'000, 1>;
2558-
using @\libglobal{giga}@ = ratio< 1'000'000'000, 1>;
2559-
using @\libglobal{tera}@ = ratio< 1'000'000'000'000, 1>;
2560-
using @\libglobal{peta}@ = ratio< 1'000'000'000'000'000, 1>;
2561-
using @\libglobal{exa}@ = ratio< 1'000'000'000'000'000'000, 1>;
2562-
using @\libglobal{zetta}@ = ratio< 1'000'000'000'000'000'000'000, 1>; // see below
2563-
using @\libglobal{yotta}@ = ratio<1'000'000'000'000'000'000'000'000, 1>; // see below
2544+
using @\libglobal{quecto}@ = ratio<1, 1'000'000'000'000'000'000'000'000'000'000>; // \seebelow
2545+
using @\libglobal{ronto}@ = ratio<1, 1'000'000'000'000'000'000'000'000'000>; // \seebelow
2546+
using @\libglobal{yocto}@ = ratio<1, 1'000'000'000'000'000'000'000'000>; // \seebelow
2547+
using @\libglobal{zepto}@ = ratio<1, 1'000'000'000'000'000'000'000>; // \seebelow
2548+
using @\libglobal{atto}@ = ratio<1, 1'000'000'000'000'000'000>;
2549+
using @\libglobal{femto}@ = ratio<1, 1'000'000'000'000'000>;
2550+
using @\libglobal{pico}@ = ratio<1, 1'000'000'000'000>;
2551+
using @\libglobal{nano}@ = ratio<1, 1'000'000'000>;
2552+
using @\libglobal{micro}@ = ratio<1, 1'000'000>;
2553+
using @\libglobal{milli}@ = ratio<1, 1'000>;
2554+
using @\libglobal{centi}@ = ratio<1, 100>;
2555+
using @\libglobal{deci}@ = ratio<1, 10>;
2556+
using @\libglobal{deca}@ = ratio< 10, 1>;
2557+
using @\libglobal{hecto}@ = ratio< 100, 1>;
2558+
using @\libglobal{kilo}@ = ratio< 1'000, 1>;
2559+
using @\libglobal{mega}@ = ratio< 1'000'000, 1>;
2560+
using @\libglobal{giga}@ = ratio< 1'000'000'000, 1>;
2561+
using @\libglobal{tera}@ = ratio< 1'000'000'000'000, 1>;
2562+
using @\libglobal{peta}@ = ratio< 1'000'000'000'000'000, 1>;
2563+
using @\libglobal{exa}@ = ratio< 1'000'000'000'000'000'000, 1>;
2564+
using @\libglobal{zetta}@ = ratio< 1'000'000'000'000'000'000'000, 1>; // \seebelow
2565+
using @\libglobal{yotta}@ = ratio< 1'000'000'000'000'000'000'000'000, 1>; // \seebelow
2566+
using @\libglobal{ronna}@ = ratio< 1'000'000'000'000'000'000'000'000'000, 1>; // \seebelow
2567+
using @\libglobal{quetta}@ = ratio<1'000'000'000'000'000'000'000'000'000'000, 1>; // \seebelow
25642568
}
25652569
\end{codeblockdigitsep}
25662570

@@ -2722,12 +2726,20 @@
27222726
\rSec2[ratio.si]{SI types for \tcode{ratio}}
27232727

27242728
\pnum
2729+
\indexlibraryglobal{quecto}%
2730+
\indexlibraryglobal{ronto}%
27252731
\indexlibraryglobal{yocto}%
27262732
\indexlibraryglobal{zepto}%
27272733
\indexlibraryglobal{zetta}%
27282734
\indexlibraryglobal{yotta}%
2729-
For each of the \grammarterm{typedef-name}{s} \tcode{yocto}, \tcode{zepto},
2730-
\tcode{zetta}, and \tcode{yotta}, if both of the constants used in its
2735+
\indexlibraryglobal{ronna}%
2736+
\indexlibraryglobal{quetta}%
2737+
For each of the \grammarterm{typedef-name}{s}
2738+
\tcode{quecto}, \tcode{ronto},
2739+
\tcode{yocto}, \tcode{zepto},
2740+
\tcode{zetta}, \tcode{yotta},
2741+
\tcode{ronna}, and \tcode{quetta},
2742+
if both of the constants used in its
27312743
specification are representable by \tcode{intmax_t}, the typedef is
27322744
defined; if either of the constants is not representable by \tcode{intmax_t},
27332745
the typedef is not defined.

source/support.tex

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -731,6 +731,7 @@
731731
#define @\defnlibxname{cpp_lib_ranges_to_container}@ 202202L // freestanding, also in \libheader{ranges}
732732
#define @\defnlibxname{cpp_lib_ranges_zip}@ 202110L
733733
// freestanding, also in \libheader{ranges}, \libheader{tuple}, \libheader{utility}
734+
#define @\defnlibxname{cpp_lib_ratio}@ 202306L // also in \libheader{ratio}
734735
#define @\defnlibxname{cpp_lib_raw_memory_algorithms}@ 201606L // also in \libheader{memory}
735736
#define @\defnlibxname{cpp_lib_rcu}@ 202306L // also in \libheader{rcu}
736737
#define @\defnlibxname{cpp_lib_reference_from_temporary}@ 202202L // freestanding, also in \libheader{type_traits}

0 commit comments

Comments
 (0)