Boost logo

Boost :

From: David Abrahams (dave_at_[hidden])
Date: 2002-10-11 15:36:08


The current CVS was showing the following:

    In file included from boost/regex.hpp:1576,
                     from libs/regex/src/instances.cpp:34:
    boost/regex/detail/regex_match.hpp: In constructor
       `boost::re_detail::_priv_match_data<iterator,
       Allocator>::_priv_match_data(const
       boost::re_detail::match_results_base<iterator, Allocator>&, iterator,
       iterator, unsigned int)':
    boost/regex/detail/regex_match.hpp:239: warning: `typename
       boost::re_detail::regex_iterator_traits<T>::iterator_category' is implicitly
       a typename
    boost/regex/detail/regex_match.hpp:239: warning: implicit typename is
       deprecated, please see the documentation for details
    gcc.compile libs\regex\build\bin\gcc\debug\main-target-boost_regex\winstances.o

I just checked in this patch to fix it:

---
Index: boost/regex/detail/regex_match.hpp
===================================================================
RCS file: /cvsroot/boost/boost/boost/regex/detail/regex_match.hpp,v
retrieving revision 1.27
diff -w -u -r1.27 regex_match.hpp
--- boost/regex/detail/regex_match.hpp	17 Sep 2002 10:57:26 -0000	1.27
+++ boost/regex/detail/regex_match.hpp	11 Oct 2002 20:43:05 -0000
@@ -236,7 +236,7 @@
   caccumulators = 0;
   loop_starts = 0;
   state_count = 0;
-  estimate_max_state_count(a, b, states, static_cast<regex_iterator_traits<iterator>::iterator_category*>(0));
+  estimate_max_state_count(a, b, states, static_cast<typename regex_iterator_traits<iterator>::iterator_category*>(0));
 }
 
 template <class iterator, class Allocator>
---
I'd go as far as to suggest that given the number of compilers which are
overly permissive about typename, people writing and maintaining boost
code should test everything out with something more-conforming. It
seems like we see "missing typename" bugs in Boost code every few
weeks and it's so easily avoided... with freely-available tools, even!
-- 
           David Abrahams * Boost Consulting
dave_at_[hidden] * http://www.boost-consulting.com

Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk