The Wayback Machine - https://web.archive.org/web/20150427230715/https://github.com/cplusplus/draft/compare/n4140...n4141
Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP

Comparing changes

Choose two branches to see what's changed or to start a new pull request. If you need to, you can also compare across forks.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also compare across forks.
base fork: cplusplus/draft
Choose a Base Repository
cplusplus/draft
AaronBallman/draft
AlexJiaeHwang/draft
Alouani-s/draft
AndrewTomazos/draft
Cryolite/draft
Eelis/draft
ElAleyo/draft
Enelar/draft
FrankHB/draft
GonLou/draft
GorNishanov/draft
HarrisonDing/draft
HassanBA/draft
Heuristack/draft
ILya-Lev/draft
JackieXie168/draft
JamesWidman/draft
K-ballo/draft
KnowNo/draft
Manuel4131/draft
NICKLAB/draft
Oxyd/draft
Pastor/draft
PeterSommerlad/draft
Quuxplusone/draft
RBEI-VENKAT/draft
RichardRanft/draft
SubmarineX/draft
XiliangSong/draft
adatapost/draft
alexisWTD/draft
allengaller/draft
amhagan/draft
ashumeow/draft
asutton/draft
baatar/draft
bfzhao/draft
bharathyes/draft
bkremnev/draft
boostpro/draft
bowei/draft
burblebee/draft
cartec/draft
cassioneri/cpp-draft
christianparpart/draft
cksharma/draft
cnsuhao/draft
congdanhqx/draft
contoso-a/cxx-std-draft
cppfool/draft
cpplearner/draft
cubbimew/draft
datascientist1976/draft
davidlee80/draft
deanberris/draft
denji/draft-cpp
descent/draft
devlato/draft
dgodfrey95/draft
doctorwho1986/draft
dougmsft/draft
dougservice/draft
dreamsxin/draft
dyp-cpp/cpp-draft
dyudingrigoriy/draft
faithandbrave/draft
fanshuaifei/draft
fpelliccioni/draft
gavransava/draft
getov/draft
gitshaantha/draft
gmalik9/draft
godbyk/draft
google/cxx-std-draft
grimwm/draft
guiquanz/draft
herda/draft
hotwatermorning/draft
huangcheng/cplusplus
iMadeThem/draft
iaanus/draft
iomato/draft
jacobsa/draft
jameslz/draft
jamiepg1/cxx-std-draft
jbenipal/draft
jbulow/draft
je4d/cppdraft
jicama/draft
jkellam/cplusplus
jrose2002/draft
jwakely/draft
jwiegley/draft
jyasskin/draft
k-satoda/cplusplus-draft
kariya-mitsuru/draft
kleopatra999/cxx-std-draft
kmoza/draft
kohepta/draft
lazy-bug/draft
lichray/draft
limit0506/draft
lishixue/draft
logosman/draft
lynnboy/draft
manojpandey/draft
maropu/draft
martinec/draft
massa/draft
michaelbprice/draft
mohnkhan/draft
more-code/cxx-std-draft
mouchtaris/draft
mtle/draft
neplus/draft
njsf/draft
nsolsen/draft
nyilwin/cxx-std-draft
p12tic/draft
panike/draft
phresnel/draft
piguin/draft
psyko0815/draft
radiant-developments/draft
raikrahul/draft
redboltz/draft
rexhsu/draft
rikdev/draft
rkawulak/draft
rmartinho/draft
robdesbois/cplusplus-draft
salehalsarhane/cxx-std-draft
sanyaade-buildtools/draft
sdalton1/draft
senseb/draft
siwuxian/draft
smithpaul/cxx-draft
smunix/draft
sonyomega/draft
stbergmann/draft
stevenio/draft
subailong/draft
tempbottle/draft
tezheng/draft
thanhtam92/draft
thgdfthrplay1993/draft
timsong-cpp/draft
tkoeppe/draft
tomcrick/draft
umeshkrpatel/draft
verbalsaintmars/draft
vermiculus/draft
vityafx/draft
voidException/draft
wangzhimin/draft
wfyaibaib/draft
wnoise/draft
xiangzhy/draft
xni/draft
xushvai/draft
yeqiaojun/draft
yourcaptain/draft
yurdev/draft
zaxbbun/draft
ztianjin/draft
zygoloid/cplusplus
Nothing to show
...
head fork: cplusplus/draft
Choose a Head Repository
cplusplus/draft
AaronBallman/draft
AlexJiaeHwang/draft
Alouani-s/draft
AndrewTomazos/draft
Cryolite/draft
Eelis/draft
ElAleyo/draft
Enelar/draft
FrankHB/draft
GonLou/draft
GorNishanov/draft
HarrisonDing/draft
HassanBA/draft
Heuristack/draft
ILya-Lev/draft
JackieXie168/draft
JamesWidman/draft
K-ballo/draft
KnowNo/draft
Manuel4131/draft
NICKLAB/draft
Oxyd/draft
Pastor/draft
PeterSommerlad/draft
Quuxplusone/draft
RBEI-VENKAT/draft
RichardRanft/draft
SubmarineX/draft
XiliangSong/draft
adatapost/draft
alexisWTD/draft
allengaller/draft
amhagan/draft
ashumeow/draft
asutton/draft
baatar/draft
bfzhao/draft
bharathyes/draft
bkremnev/draft
boostpro/draft
bowei/draft
burblebee/draft
cartec/draft
cassioneri/cpp-draft
christianparpart/draft
cksharma/draft
cnsuhao/draft
congdanhqx/draft
contoso-a/cxx-std-draft
cppfool/draft
cpplearner/draft
cubbimew/draft
datascientist1976/draft
davidlee80/draft
deanberris/draft
denji/draft-cpp
descent/draft
devlato/draft
dgodfrey95/draft
doctorwho1986/draft
dougmsft/draft
dougservice/draft
dreamsxin/draft
dyp-cpp/cpp-draft
dyudingrigoriy/draft
faithandbrave/draft
fanshuaifei/draft
fpelliccioni/draft
gavransava/draft
getov/draft
gitshaantha/draft
gmalik9/draft
godbyk/draft
google/cxx-std-draft
grimwm/draft
guiquanz/draft
herda/draft
hotwatermorning/draft
huangcheng/cplusplus
iMadeThem/draft
iaanus/draft
iomato/draft
jacobsa/draft
jameslz/draft
jamiepg1/cxx-std-draft
jbenipal/draft
jbulow/draft
je4d/cppdraft
jicama/draft
jkellam/cplusplus
jrose2002/draft
jwakely/draft
jwiegley/draft
jyasskin/draft
k-satoda/cplusplus-draft
kariya-mitsuru/draft
kleopatra999/cxx-std-draft
kmoza/draft
kohepta/draft
lazy-bug/draft
lichray/draft
limit0506/draft
lishixue/draft
logosman/draft
lynnboy/draft
manojpandey/draft
maropu/draft
martinec/draft
massa/draft
michaelbprice/draft
mohnkhan/draft
more-code/cxx-std-draft
mouchtaris/draft
mtle/draft
neplus/draft
njsf/draft
nsolsen/draft
nyilwin/cxx-std-draft
p12tic/draft
panike/draft
phresnel/draft
piguin/draft
psyko0815/draft
radiant-developments/draft
raikrahul/draft
redboltz/draft
rexhsu/draft
rikdev/draft
rkawulak/draft
rmartinho/draft
robdesbois/cplusplus-draft
salehalsarhane/cxx-std-draft
sanyaade-buildtools/draft
sdalton1/draft
senseb/draft
siwuxian/draft
smithpaul/cxx-draft
smunix/draft
sonyomega/draft
stbergmann/draft
stevenio/draft
subailong/draft
tempbottle/draft
tezheng/draft
thanhtam92/draft
thgdfthrplay1993/draft
timsong-cpp/draft
tkoeppe/draft
tomcrick/draft
umeshkrpatel/draft
verbalsaintmars/draft
vermiculus/draft
vityafx/draft
voidException/draft
wangzhimin/draft
wfyaibaib/draft
wnoise/draft
xiangzhy/draft
xni/draft
xushvai/draft
yeqiaojun/draft
yourcaptain/draft
yurdev/draft
zaxbbun/draft
ztianjin/draft
zygoloid/cplusplus
Nothing to show
Checking mergeability… Don't worry, you can still create the pull request.
  • 11 commits
  • 9 files changed
  • 0 commit comments
  • 2 contributors
Commits on Aug 26, 2014
@zygoloid zygoloid Fix to 2013-09 LWG Motion 7:
[comparisons] Fix incorrect application of N3789 to the working paper:
  - Add 'constexpr' to
      std::equal_to<>::operator()
      std::not_equal_to<>::operator()
      std::greater<>::operator()
      std::less<>::operator()
      std::greater_equal<>::operator()
      std::less_equal<>::operator()
  - Reorder 'bool constexpr' to 'constexpr bool' in
      std::logical_or<T>::operator()
      std::logical_and<T>::operator()
      std::logical_not<T>::operator()

Also fixes 14882:2014 DIS JP 08, fixes 14882:2014 DIS JP 09, fixes #291.
62734eb
@zygoloid zygoloid JP 06: [dcl.constexpr] Remove incorrect example.
Also fixes #370.
4321702
@zygoloid zygoloid [multiset.cons] Add missing parameter type.
Fixes #189.
c20b92c
@zygoloid zygoloid JP 11: [thread.mutex.requirements.general] Remove outdated sentence.
This sentence directly contradicts several other portions of the
standard, and does not reflect the intended meaning.
5208210
@zygoloid zygoloid Update config for building D4141. f696706
@jwakely jwakely [atomics.syn] Fix typo by replacing ')' with '_'
Fixes #359
6512d97
@jwakely jwakely [atomics.syn] Replace comma with period
Reported by Stephan T. Lavavej.  Fixes #340
013e01f
@jwakely jwakely [func.bind.bind] Fix "template parameter back" typo.
Fixes #316
ebde185
@jwakely jwakely [futures.overview] Add ArgTypes... to swap declaration.
Fixes #336
d79ad59
Commits on Sep 02, 2014
@zygoloid zygoloid Update document stage. c0599d3
@zygoloid zygoloid Update document stage code too. 0d8d6b0
View
4 source/atomics.tex
@@ -81,9 +81,9 @@
bool atomic_compare_exchange_strong(@\textit{atomic-type}@*, T*, T) noexcept;
bool atomic_compare_exchange_weak_explicit(volatile @\textit{atomic-type}@*, T*, T,
memory_order, memory_order) noexcept;
- bool atomic_compare_exchange_weak_explicit(@\textit{atomic-type}@*, T*, T.
+ bool atomic_compare_exchange_weak_explicit(@\textit{atomic-type}@*, T*, T,
memory_order, memory_order) noexcept;
- bool atomic_compare)exchange_strong_explicit(volatile @\textit{atomic-type}@*, T*, T,
+ bool atomic_compare_exchange_strong_explicit(volatile @\textit{atomic-type}@*, T*, T,
memory_order, memory_order) noexcept;
bool atomic_compare_exchange_strong_explicit(@\textit{atomic-type}@*, T*, T,
memory_order, memory_order) noexcept;
View
6 source/config.tex
@@ -1,8 +1,8 @@
%!TEX root = std.tex
%%--------------------------------------------------
%% Version numbers
-\newcommand{\docno}{N3936}
-\newcommand{\prevdocno}{N3797}
+\newcommand{\docno}{N4141}
+\newcommand{\prevdocno}{N3936}
\newcommand{\cppver}{201402L}
%% Release date
@@ -10,4 +10,4 @@
%% Library chapters
\newcommand{\firstlibchapter}{language.support}
-\newcommand{\lastlibchapter}{thread}
+\newcommand{\lastlibchapter}{thread}
View
2  source/containers.tex
@@ -6570,7 +6570,7 @@
\indexlibrary{\idxcode{multiset}!\idxcode{multiset}}%
\begin{itemdecl}
template <class InputIterator>
- multiset(InputIterator first, last,
+ multiset(InputIterator first, InputIterator last,
const Compare& comp = Compare(), const Allocator& = Allocator());
\end{itemdecl}
View
4 source/cover-reg.tex
@@ -8,7 +8,7 @@
\vspace{2ex}
\begin{flushright}
-\textbf{ISO/IEC JTC1 SC22 WG21 N\,\LARGE3290}
+\textbf{ISO/IEC JTC1 SC22 WG21 N\,\LARGE4141}
Date: \reldate
@@ -49,7 +49,7 @@
\vfill
\noindent
Document type: Draft International Standard\\
-Document stage: (40) Enquiry\\
+Document stage: (60) Publication\\
Document Language: E
\pagebreak
View
8 source/declarations.tex
@@ -954,14 +954,6 @@
The \tcode{constexpr} specifier has no
effect on the type of a \tcode{constexpr} function or a \tcode{constexpr} constructor. \enterexample
\begin{codeblock}
-class debug_flag {
-public:
- explicit debug_flag(bool);
- constexpr bool is_on() const; // error: \tcode{debug_flag} not
- // literal type
-private:
- bool flag;
-};
constexpr int bar(int x, int y) // OK
{ return x + y + x*y; }
// ...
View
4 source/front.tex
@@ -1,6 +1,6 @@
%!TEX root = std.tex
-\input{cover-wd}
-% \input{cover-reg}
+% \input{cover-wd}
+\input{cover-reg}
%%--------------------------------------------------
%% The table of contents, list of tables, and list of figures
View
6 source/std.tex
@@ -3,8 +3,8 @@
%%--------------------------------------------------
%% basics
-% \documentclass[letterpaper,oneside,openany]{memoir}
-\documentclass[ebook,10pt,oneside,openany,final]{memoir}
+\documentclass[letterpaper,oneside,openany,final]{memoir}
+% \documentclass[ebook,10pt,oneside,openany,final]{memoir}
% \includeonly{declarations}
\usepackage[american]
@@ -33,7 +33,7 @@
\usepackage[pdftex,
pdftitle={C++ International Standard},
pdfsubject={C++ International Standard},
- pdfcreator={Stefanus Du Toit},
+ pdfcreator={Richard Smith},
bookmarks=true,
bookmarksnumbered=true,
pdfpagelabels=true,
View
5 source/threads.tex
@@ -890,8 +890,7 @@
data between execution agents~(\ref{thread.req.lockable}).
An execution agent \term{owns} a mutex from the time it successfully calls one of the
lock functions until it calls unlock. Mutexes can be either recursive or non-recursive, and can
-grant simultaneous ownership to one or many execution agents. The mutex types supplied by the standard
-library provide exclusive ownership semantics: only one thread may own the mutex at a time. Both
+grant simultaneous ownership to one or many execution agents. Both
recursive and non-recursive mutexes are supplied.
\rSec3[thread.mutex.requirements.mutex]{Mutex types}
@@ -3506,7 +3505,7 @@
template <class R, class... ArgTypes>
class packaged_task<R(ArgTypes...)>;
- template <class R>
+ template <class R, class... ArgTypes>
void swap(packaged_task<R(ArgTypes...)>&, packaged_task<R(ArgTypes...)>&) noexcept;
template <class R, class Alloc>
View
20 source/utilities.tex
@@ -7807,7 +7807,7 @@
\indexlibrary{\idxcode{equal_to<>}}%
\begin{itemdecl}
template <> struct equal_to<void> {
- template <class T, class U> auto operator()(T&& t, U&& u) const
+ template <class T, class U> constexpr auto operator()(T&& t, U&& u) const
-> decltype(std::forward<T>(t) == std::forward<U>(u));
typedef @\unspec@ is_transparent;
@@ -7822,7 +7822,7 @@
\indexlibrary{\idxcode{not_equal_to<>}}%
\begin{itemdecl}
template <> struct not_equal_to<void> {
- template <class T, class U> auto operator()(T&& t, U&& u) const
+ template <class T, class U> constexpr auto operator()(T&& t, U&& u) const
-> decltype(std::forward<T>(t) != std::forward<U>(u));
typedef @\unspec@ is_transparent;
@@ -7837,7 +7837,7 @@
\indexlibrary{\idxcode{greater<>}}%
\begin{itemdecl}
template <> struct greater<void> {
- template <class T, class U> auto operator()(T&& t, U&& u) const
+ template <class T, class U> constexpr auto operator()(T&& t, U&& u) const
-> decltype(std::forward<T>(t) > std::forward<U>(u));
typedef @\unspec@ is_transparent;
@@ -7852,7 +7852,7 @@
\indexlibrary{\idxcode{less<>}}%
\begin{itemdecl}
template <> struct less<void> {
- template <class T, class U> auto operator()(T&& t, U&& u) const
+ template <class T, class U> constexpr auto operator()(T&& t, U&& u) const
-> decltype(std::forward<T>(t) < std::forward<U>(u));
typedef @\unspec@ is_transparent;
@@ -7867,7 +7867,7 @@
\indexlibrary{\idxcode{greater_equal<>}}%
\begin{itemdecl}
template <> struct greater_equal<void> {
- template <class T, class U> auto operator()(T&& t, U&& u) const
+ template <class T, class U> constexpr auto operator()(T&& t, U&& u) const
-> decltype(std::forward<T>(t) >= std::forward<U>(u));
typedef @\unspec@ is_transparent;
@@ -7882,7 +7882,7 @@
\indexlibrary{\idxcode{less_equal<>}}%
\begin{itemdecl}
template <> struct less_equal<void> {
- template <class T, class U> auto operator()(T&& t, U&& u) const
+ template <class T, class U> constexpr auto operator()(T&& t, U&& u) const
-> decltype(std::forward<T>(t) <= std::forward<U>(u));
typedef @\unspec@ is_transparent;
@@ -7909,7 +7909,7 @@
\indexlibrary{\idxcode{logical_and}}%
\begin{itemdecl}
template <class T = void> struct logical_and {
- bool constexpr operator()(const T& x, const T& y) const;
+ constexpr bool operator()(const T& x, const T& y) const;
typedef T first_argument_type;
typedef T second_argument_type;
typedef bool result_type;
@@ -7924,7 +7924,7 @@
\indexlibrary{\idxcode{logical_or}}%
\begin{itemdecl}
template <class T = void> struct logical_or {
- bool constexpr operator()(const T& x, const T& y) const;
+ constexpr bool operator()(const T& x, const T& y) const;
typedef T first_argument_type;
typedef T second_argument_type;
typedef bool result_type;
@@ -7939,7 +7939,7 @@
\indexlibrary{\idxcode{logical_not}}%
\begin{itemdecl}
template <class T = void> struct logical_not {
- bool constexpr operator()(const T& x) const;
+ constexpr bool operator()(const T& x) const;
typedef T argument_type;
typedef bool result_type;
};
@@ -8259,7 +8259,7 @@
\begin{itemize}
\item \tcode{FD} is the type \tcode{decay_t<F>},
\item \tcode{fd} is an lvalue of type \tcode{FD} constructed from \tcode{std::forward<F>(f)},
-\item \tcode{Ti} is the $i^{th}$ type in the template parameter back \tcode{BoundArgs},
+\item \tcode{Ti} is the $i^{th}$ type in the template parameter pack \tcode{BoundArgs},
\item \tcode{TiD} is the type \tcode{decay_t<Ti>},
\item \tcode{ti} is the $i^{th}$ argument in the function parameter pack \tcode{bound_args},
\item \tcode{tid} is an lvalue of type \tcode{TiD} constructed from \tcode{std::forward<Ti>(ti)},

No commit comments for this range

Something went wrong with that request. Please try again.
Morty Proxy This is a proxified and sanitized view of the page, visit original site.