|
Boost-Commit : |
From: dgregor_at_[hidden]
Date: 2008-08-25 01:01:48
Author: dgregor
Date: 2008-08-25 01:01:46 EDT (Mon, 25 Aug 2008)
New Revision: 48368
URL: http://svn.boost.org/trac/boost/changeset/48368
Log:
Get all of the document cross-references right
Text files modified:
sandbox/committee/concepts/stdlib/Makefile | 2 -
sandbox/committee/concepts/stdlib/local.bib | 10 +++++++
sandbox/committee/concepts/stdlib/macros.tex | 2
sandbox/committee/concepts/wording/wording.tex | 52 ++++++++++++++++++++++++++-------------
4 files changed, 45 insertions(+), 21 deletions(-)
Modified: sandbox/committee/concepts/stdlib/Makefile
==============================================================================
--- sandbox/committee/concepts/stdlib/Makefile (original)
+++ sandbox/committee/concepts/stdlib/Makefile 2008-08-25 01:01:46 EDT (Mon, 25 Aug 2008)
@@ -41,8 +41,6 @@
.tex.pdf:
@$(PDFLATEX) $*
-
-.honk.wibble:
@if ( grep 'LaTeX Warning: Label(s) may' $*.log > /dev/null ); \
then $(PDFLATEX) $* ; else :; fi
@ if ( grep 'Writing index file' $*.log > /dev/null ); \
Modified: sandbox/committee/concepts/stdlib/local.bib
==============================================================================
--- sandbox/committee/concepts/stdlib/local.bib (original)
+++ sandbox/committee/concepts/stdlib/local.bib 2008-08-25 01:01:46 EDT (Mon, 25 Aug 2008)
@@ -376,6 +376,16 @@
month = {June}
}
+@TechReport{GregorStroustrup07:concepts_wording_rev_8,
+ author = {Douglas Gregor and Bjarne Stroustrup and James Widman and Jeremy Siek},
+ title = {Proposed Wording for Concepts (Revision 8)},
+ institution = {ISO/IEC JTC 1, Information Technology, Subcommittee
+ SC 22, Programming Language {C++}},
+ year = 2008,
+ number = {N2741=08-0251},
+ month = {August}
+}
+
@TechReport{SiekWidman07:ScopedConceptMaps,
author = {Jeremy Siek and James Widman},
title = {Proposed Wording for Scoped Concept Maps},
Modified: sandbox/committee/concepts/stdlib/macros.tex
==============================================================================
--- sandbox/committee/concepts/stdlib/macros.tex (original)
+++ sandbox/committee/concepts/stdlib/macros.tex 2008-08-25 01:01:46 EDT (Mon, 25 Aug 2008)
@@ -1117,7 +1117,7 @@
% Text common to all of the library proposals
\newcommand{\libintrotext}[1]{This document proposes changes to #1 of
the \Cpp{} Standard Library in order to make full use of
- concepts~\cite{GregorStroustrup07:concepts_wording_rev_6}. We make
+ concepts~\cite{GregorStroustrup07:concepts_wording_rev_8}. We make
every attempt to provide complete backward compatibility with the
pre-concept Standard Library, and note each place where we have
knowingly changed semantics.
Modified: sandbox/committee/concepts/wording/wording.tex
==============================================================================
--- sandbox/committee/concepts/wording/wording.tex (original)
+++ sandbox/committee/concepts/wording/wording.tex 2008-08-25 01:01:46 EDT (Mon, 25 Aug 2008)
@@ -131,8 +131,7 @@
propagated from the types of function parameters
(\ref{temp.req.impl}). This change brings concepts in sync with
generalized initializer lists (N2672), which permit a function
- parameter to be direct-initialized. Thanks to Daniel Kr\"ugler for
- the reminder!
+ parameter to be initialized without copying or moving.
\item Made an expression that uses a constrained member in the current
instantiation a type-dependent expression
@@ -140,15 +139,19 @@
type-checking of, e.g., unconstrained templates that have
constrained members:
\begin{codeblock}
-template<typename T>
-struct list {
+template<typename T> struct list {
requires C<T> void f(int);
-
void g() { f(17); } // ``f'' is type-dependent, because it might or
// might not exist in the instantiation.
};
\end{codeblock}
+\item Made default function arguments an unconstrained context
+ (again), due to the realization that this change could cause a large
+ increase in the number of constructors need for, e.g.,
+ \tcode{unordered_map}. Please see c++std-core-13280 and
+ c++std-ext-10456 for additional information.
+
\item Clarified the point of declaration of a template requirement
(\ref{basic.scope.pdecl}) and its potential scope
(\ref{basic.scope.req}).
@@ -166,8 +169,11 @@
archetypes are present (\ref{over.built}).
\item Clarified the template requirements of the default
- implementations of associated functions (\ref{concept.fct}). Thanks
- again to Daniel Kr\"ugler.
+ implementations of associated functions (\ref{concept.fct}).
+
+\item Clarified the formation of retain candidate sets
+ (\ref{temp.constrained.inst}) and of candidate sets themselves
+ (\ref{temp.constrained.set}).
\end{itemize}
\section*{Typographical conventions}
@@ -4680,8 +4686,8 @@
determine that the requirement was satisfied.}
\begin{itemize}
\additemConcepts{if the evaluation of \mbox{\tcode{E}} involves overload
- resolution at the top level, the seed is the candidate function
- (\mbox{\ref{over.match.funcs}}) determined by the outermost
+ resolution at the top level, the seed is the function
+ (\mbox{\ref{over.match.funcs}}) selected by the outermost
application of overload resolution (clause~\mbox{\ref{over}}), or}
\additemConcepts{if \mbox{\tcode{E}} is a pseudo destructor call
(\mbox{\ref{expr.pseudo}}), the seed is a
@@ -5211,7 +5217,8 @@
\begin{itemize}
\additemConcepts{a late-checked block (\mbox{\ref{stmt.late}}),}
\additemConcepts{a default argument in a
- \mbox{\techterm{template-parameter}},}
+ \mbox{\techterm{template-parameter}}, and}
+ \additemCC{a default function argument (\mbox{\ref{dcl.fct}}).}
\end{itemize}
\pnum
@@ -6176,7 +6183,10 @@
\rSec2[temp.constrained.set]{Candidate sets}
\pnum
\addedConcepts{A \mbox{\techterm{candidate set}} is a set containing
- functions and function templates that is defined in a constrained
+ functions and function templates}
+\addedCC{that is determined by a \mbox{\techterm{seed}} (defined below).}
+\changedCCC{that}{A candidate set}
+\addedConcepts{is defined in a constrained
context (a \mbox{\techterm{retained}} \mbox{\techterm{candidate
set}},~\mbox{\ref{temp.constrained.inst}}) or as the result of
satisfying an associated function requirement in a concept map (an
@@ -6341,15 +6351,21 @@
\end{itemize}
\pnum
-\addedConcepts{A function template specialization in a constrained
- template instantiates to a reference to that function template
- specialization's retained candidate set. The
+\addedConcepts{A use of a function template}
+\changedCCC{specialization}{instantiation}
+\addedConcepts{in a constrained
+ template instantiates to a reference to that function template}
+ \changedCCC{specialization}{instantiation}\addedConcepts{'s retained
+ candidate set. The
\mbox{\techterm{retained candidate set}} is a candidate set
- (\mbox{\ref{temp.constrained.set}}) whose seed is determined by the
- function template specialization from the definition of the
+ (\mbox{\ref{temp.constrained.set}}) whose seed is}
+\removedCCC{determined by}
+\addedConcepts{the
+ function template} \changedCCC{specialization}{instantiation.}\removedCCC{from the
+ definition of the
constrained template, after substitution of the constrained
template's template arguments for their corresponding template
- parameters. \mbox{\enterexample}}
+ parameters.} \addedConcepts{\mbox{\enterexample}}
\begin{codeblock}
concept InputIterator<typename Iter> {
typename difference_type;
@@ -6371,7 +6387,7 @@
template<RandomAccessIterator Iter> void advance(Iter& i, Iter::difference_type n); // \#3
void g(int* i) {
- f(i); // in the call to advance(), \#1 is the seed of the retained candidate set, the retained candidate set contains \#1, \#2,
+ f(i); // in the call to advance(), \#2 is the seed of the retained candidate set, the retained candidate set contains \#1, \#2,
// and \#3, and partial ordering of function templates selects \#3.
}
\end{codeblock}
Boost-Commit list run by bdawes at acm.org, david.abrahams at rcn.com, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk