Boost logo

Boost-Commit :

From: dgregor_at_[hidden]
Date: 2008-04-17 17:00:22


Author: dgregor
Date: 2008-04-17 17:00:22 EDT (Thu, 17 Apr 2008)
New Revision: 44519
URL: http://svn.boost.org/trac/boost/changeset/44519

Log:
Try to prevent overly wacky, dependent things in constrained function template signatures
Text files modified:
   sandbox/committee/concepts/wording/wording.tex | 18 ++++++++++++++++++
   1 files changed, 18 insertions(+), 0 deletions(-)

Modified: sandbox/committee/concepts/wording/wording.tex
==============================================================================
--- sandbox/committee/concepts/wording/wording.tex (original)
+++ sandbox/committee/concepts/wording/wording.tex 2008-04-17 17:00:22 EDT (Thu, 17 Apr 2008)
@@ -4634,6 +4634,24 @@
 \end{itemize}
 
 \pnum
+\addedCC{If a type or expression within the signature of a constrained
+template, the \mbox{\techterm{template-parameter-list}} of a
+constrained template, or the \mbox{\techterm{requires-clause}} of a
+constrained template (if any) would be ill-formed if the associated
+context were a constrained context, the program is
+ill-formed. \mbox{\enterexample}}
+\begin{codeblock}
+concept C<typename T> {
+ typename type;
+}
+
+template<typename T> requires C<T>
+typename C<T>::type::inner_type f(T const&); // error: typename C<T>::type::inner_type would be ill-formed
+ // in a constrained context
+\end{codeblock}
+\addedCC{\mbox{\exitexample}}
+
+\pnum
 \addedCC{Within a constrained context, a program shall not refer to an
   unconstrained template.}
 


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