diff mbox

Add comments for future regex work

Message ID CAPrifDkvz3n=BRXcJAmrOmdp=NSgqo4oUd2B9RSBHKw+DjB7_w@mail.gmail.com
State New
Headers show

Commit Message

Tim Shen Dec. 2, 2013, 9:15 p.m. UTC
...for optimization purpose. Should be done in one month.

Thanks!

Comments

Paolo Carlini Dec. 3, 2013, 9:47 a.m. UTC | #1
On 12/02/2013 10:15 PM, Tim Shen wrote:
> ...for optimization purpose. Should be done in one month.
Great. Consider that we are now in Stage 3, until mid of February. 
Considering that <regex> is a new feature, I think we have some leeway 
in terms of timing, but definitely we can't commit invasive changes not 
fixing regressions while in Stage 4.

Thanks!
Paolo.
Paolo Carlini Dec. 3, 2013, 9:48 a.m. UTC | #2
.. I meant mid of *January* of course.

Paolo.
Tim Shen Dec. 3, 2013, 10:04 a.m. UTC | #3
On Tue, Dec 3, 2013 at 4:47 AM, Paolo Carlini <paolo.carlini@oracle.com> wrote:
> Great. Consider that we are now in Stage 3, until mid of February.
> Considering that <regex> is a new feature, I think we have some leeway in
> terms of timing, but definitely we can't commit invasive changes not fixing
> regressions while in Stage 4.

...committed.
diff mbox

Patch

commit cc7d58128e68455498d0257c4796cb70a9e24990
Author: tim <timshen91@gmail.com>
Date:   Mon Dec 2 15:49:15 2013 -0500

    2013-12-02  Tim Shen  <timshen91@gmail.com>
    
    	* regex_compiler.h: Add todo comment.
    	* regex_executor.tcc: Likewise.

diff --git a/libstdc++-v3/include/bits/regex_compiler.h b/libstdc++-v3/include/bits/regex_compiler.h
index b9f8127..5759d48 100644
--- a/libstdc++-v3/include/bits/regex_compiler.h
+++ b/libstdc++-v3/include/bits/regex_compiler.h
@@ -237,6 +237,10 @@  _GLIBCXX_BEGIN_NAMESPACE_VERSION
     };
 
   /// Matches a character range (bracket expression)
+  // TODO: Convert used _M_flags fields to template parameters, including
+  // collate and icase. Avoid using std::set, could use flat_set
+  // (sorted vector and binary search) instead; use an fixed sized (256)
+  // vector<bool> for char specialization if necessary.
   template<typename _TraitsT>
     struct _BracketMatcher
     {
diff --git a/libstdc++-v3/include/bits/regex_executor.tcc b/libstdc++-v3/include/bits/regex_executor.tcc
index 22fd67c..150adb4 100644
--- a/libstdc++-v3/include/bits/regex_executor.tcc
+++ b/libstdc++-v3/include/bits/regex_executor.tcc
@@ -162,6 +162,7 @@  _GLIBCXX_BEGIN_NAMESPACE_VERSION
       return false;
     }
 
+  // TODO: Use a function vector to dispatch, instead of using switch-case.
   template<typename _BiIter, typename _Alloc, typename _TraitsT,
     bool __dfs_mode>
   template<bool __match_mode>