-
Notifications
You must be signed in to change notification settings - Fork 3
/
Copy pathts.tex
147 lines (126 loc) · 4.52 KB
/
ts.tex
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
%% main file for the C++ standard.
%% Derived from Modules TS.
%%--------------------------------------------------
%% basics
\documentclass[a4paper,10pt,oneside,openany,final]{memoir}
\usepackage[american]
{babel} % needed for iso dates
\usepackage[iso,american]
{isodate} % use iso format for dates
\usepackage[final]
{./external/listings/listings} % code listings
\usepackage{longtable} % auto-breaking tables
\usepackage{ltcaption} % fix captions for long tables
\usepackage{relsize} % provide relative font size changes
\usepackage{underscore} % remove special status of '_' in ordinary text
\usepackage{parskip} % handle non-indented paragraphs "properly"
\usepackage{array} % new column definitions for tables
\usepackage[normalem]{ulem}
\usepackage{enumitem}
\usepackage{color} % define colors for strikeouts and underlines
\usepackage{amsmath} % additional math symbols
\usepackage{mathrsfs} % mathscr font
\usepackage[final]{microtype}
\usepackage{multicol}
\usepackage{lmodern}
\usepackage{xcolor}
\usepackage[T1]{fontenc}
\usepackage[pdftex, final]{graphicx}
\usepackage[pdftex,
pdftitle={Programming Languages — Technical specification for /Cpp extensions for concurrency 2},
pdfsubject={C++ Concurrency Technical Specification 2},
pdfcreator={Michael Wong, Maged Michael, and Paul E.~McKenney},
bookmarks=true,
bookmarksnumbered=true,
pdfpagelabels=true,
pdfpagemode=UseOutlines,
pdfstartview=FitH,
linktocpage=true,
colorlinks=true,
linkcolor=blue,
plainpages=false
]{hyperref}
\usepackage{memhfixc} % fix interactions between hyperref and memoir
\usepackage{xparse}
\usepackage{xstring}
\input{layout}
\input{styles}
\input{macros}
\input{tables}
\makeindex[generalindex]
\makeindex[libraryindex]
\makeindex[impldefindex]
%%--------------------------------------------------
%% macros specific to the Concurrency TS 2
\newcommand{\completionsig}{\Fundesc{Completion signature}}
\newcommand{\DEDUCED}{\textit{\texttt{DEDUCED}}}
\newcommand{\nativeref}{see~\ref{socket.reqmts.native}}
\newcommand{\CppXref}[1]{\texorpdfstring{C\kern-0.05em\protect\raisebox{.35ex}{\textsmaller[2]{+\kern-0.05em+}}20}{C++20} \S#1}
\newcommand{\CppXrefInAccord}[1]{in accordance with ISO/IEC 14882:2020, #1}
% Alternative formatting of cross-references, resolving stable name to number.
% Needs include{cxx} and CppXIV from cplusplus/draft/source/macros.tex.
% \input{cxx}
% \newcommand{\CppXref}[1]{\CppXIV \S\cxxref{#1}}
% Add two names to the library index as both #1!#2 and #2!#1
\newcommand{\indexlibrarytwo}[2]{%
\indexlibrary{\idxcode{#1}!\idxcode{#2}}%
\indexlibrary{\idxcode{#2}!\idxcode{#1}}%
}
% Add an extensible implementation entry to the main and library name indices
\newcommand{\indexextensible}[1]{%
\indextext{extensible implementation!\idxcode{#1}}%
\indexlibrary{\idxcode{#1}!extensible implementation}%
}
%%--------------------------------------------------
%% fix interaction between hyperref and other
%% commands
\pdfstringdefDisableCommands{\def\smaller#1{#1}}
\pdfstringdefDisableCommands{\def\textbf#1{#1}}
\pdfstringdefDisableCommands{\def\raisebox#1{}}
\pdfstringdefDisableCommands{\def\hspace#1{}}
%%--------------------------------------------------
%% add special hyphenation rules
\hyphenation{tem-plate ex-am-ple name-space name-spaces}
%%--------------------------------------------------
%% turn off all ligatures inside \texttt
\DisableLigatures{encoding = T1, family = tt*}
% \errorcontextlines 10000
\begin{document}
\chapterstyle{cppstd}
\pagestyle{cpppage}
%%--------------------------------------------------
%% configuration
\input{config}
%%--------------------------------------------------
%% front matter
\frontmatter
\include{front}
\include{foreword}
%%--------------------------------------------------
%% main body of the document
\mainmatter
\setglobalstyles
\include{general}
%%\include{modifications}
\include{syncvalue}
\include{srgeneral}
\include{srHP}
\include{srrcu}
\include{bytewiseatomic}
\include{asymmetric}
\include{order}
% \include{classes}
% \include{overloading}
% \include{templates}
%%--------------------------------------------------
%% appendices
%\appendix
%\include{compatibility}
%%--------------------------------------------------
%% back matter
%\backmatter
%\include{back}
%%--------------------------------------------------
%% End of document
\input{backcover}
\end{document}