Compare commits

..

18 Commits

Author SHA1 Message Date
359beb04e7 This commit was manufactured by cvs2svn to create tag
'Version_1_20_2'.

[SVN r9073]
2001-02-10 14:52:07 +00:00
ff022f31cf Tweeked config options for Kai and Irix+STLPort
[SVN r9000]
2001-02-07 11:56:13 +00:00
bc4755e14f regex: fix for previous slip up when fixing warning messages
[SVN r8972]
2001-02-06 12:52:32 +00:00
9f9f46f34b regex: some fixes for level 4 warnings under VC6
[SVN r8942]
2001-02-05 12:48:09 +00:00
dd2dbfacbb regex: tentative fixes for Irix + STLPort configuration.
[SVN r8940]
2001-02-05 12:09:10 +00:00
2f8875124b comparing the result of is.get() with EOF is non-portable (fails on IRIX)
[SVN r8924]
2001-02-04 18:39:39 +00:00
603337af8f regex: added VC6 debugging/memory tracking support to regression test program
[SVN r8913]
2001-02-04 12:16:07 +00:00
47f5cc6fa1 Fixed range error
[SVN r8827]
2001-01-31 12:00:34 +00:00
31c5b449bb FIXED: Signed/unsigned conversions in regex_compile.hpp and regex_format.hpp
ADDED:    Forwarder functions to match_results.
FIXED:    More errors from Como in strict mode.


[SVN r8826]
2001-01-31 11:39:04 +00:00
1afe49fdbf regex: Fixes for Como compiler in strict mode, plus some signed/unsigned conversions
[SVN r8780]
2001-01-27 11:34:53 +00:00
b5dcded581 regex: updated change log
[SVN r8752]
2001-01-24 12:16:52 +00:00
36c217882a regex: fixed makefiles to clean *.pch files.
[SVN r8728]
2001-01-23 12:28:36 +00:00
49d23c0323 avoid gcc mis-interpreting direct-initialization as a function declaration
[SVN r8684]
2001-01-21 20:10:36 +00:00
ec8aac99c5 regex: regression test fixes
[SVN r8679]
2001-01-21 12:58:24 +00:00
328e0b5561 regex: fixes for Como in strict mode
[SVN r8655]
2001-01-20 12:57:47 +00:00
e927090ba0 regex: Irix fixes and point release
[SVN r8653]
2001-01-20 12:23:51 +00:00
1d0dabd892 regex: minor fixes
[SVN r8638]
2001-01-18 12:13:00 +00:00
2c52692f8d regex file names fixed to bring them under 32 characters (for Mac compatibility)
[SVN r8536]
2001-01-09 12:42:39 +00:00
69 changed files with 460 additions and 147 deletions

View File

@ -20,7 +20,7 @@
<H3> Regex++, Appendices.</H3>
</CENTER>
<CENTER>
<I>(version 3.02, 18 April 2000)</I>
<I>(version 3.03, 18 April 2000)</I>
</CENTER>
<PRE><I>Copyright (c) 1998-2000
Dr John Maddock

View File

@ -1,3 +1,12 @@
FIXED: Signed/unsigned conversions in regex_compile.hpp and regex_format.hpp
ADDED: Forwarder functions to match_results.
FIXED: More errors from Como in strict mode.
Version 303:
FIXED: Code glitches for Como compiler in strict mode.
FIXED: Missing fixes for cstdio header.
FIXED: memory leak in underlying w32 traits classes
FIXED: vc6 clean option to remove *.pch files.
CHANGED: Build options for VC6 to avoid compiler optimisation bug.
FIXED: Missing BOOST_RE_NO_WCSTRING guard around using declaration in regex.h
FIXED: Pathological regular expressions in snip4.cpp and in docs.
@ -220,6 +229,8 @@ BUG: character sets don't function correctly when regbase::char_classes

View File

@ -15,7 +15,7 @@
/*
* FILE jgrep.cpp
* VERSION 3.02
* VERSION 3.03
*/
#include <stdio.h>

View File

@ -15,7 +15,7 @@
/*
* FILE jgrep.h
* VERSION 3.02
* VERSION 3.03
*/
#ifndef _JGREP_H

View File

@ -15,7 +15,7 @@
/*
* FILE main.cpp
* VERSION 3.02
* VERSION 3.03
*/

View File

@ -16,7 +16,7 @@
/*
*
* FILE parse.cpp
* VERSION 3.02
* VERSION 3.03
*
* Input parsing functions for regress.
*
@ -311,7 +311,7 @@ void expand_escapes(string_type& s)
s[pos] = 0;
}
else
s.insert(s.begin() + pos, val);
s.insert(s.begin() + pos, (string_type::value_type)val);
i = pos;
}
else

View File

@ -16,7 +16,7 @@
/*
* LOCATION: see http://www.boost.org for most recent version.
* FILE regex_test.cpp
* VERSION 3.02
* VERSION 3.03
* DESCRIPTION: Builds regression test program with default
* locale and narrow character tests. Also
* instantiates all the templates in the library
@ -196,6 +196,5 @@ template test_string_type regex_merge(const test_string_type&,
#include "libs/regex/src/regex.cpp"
#include "libs/regex/src/regex_debug.cpp"
#include "libs/regex/src/regex_synch.cpp"
#include "libs/regex/src/wide_posix_api.cpp"

View File

@ -16,7 +16,7 @@
/*
*
* FILE regress.cpp
* VERSION 3.02
* VERSION 3.03
*
* main() and associated code for regress.
*
@ -41,6 +41,10 @@ using std::endl;
#include "regress.h"
#if defined(BOOST_MSVC) && defined(_DEBUG)
#include <CRTDBG.H>
#endif
//
// declare all our globals here:
@ -70,6 +74,13 @@ void usage()
int main(int argc, char * argv[])
{
#if defined(BOOST_MSVC) && defined(_DEBUG)
// turn on heap reporting at program exit:
int tmpFlag = _CrtSetDbgFlag( _CRTDBG_REPORT_FLAG );
tmpFlag |= _CRTDBG_LEAK_CHECK_DF;
tmpFlag &= ~_CRTDBG_CHECK_CRT_DF;
_CrtSetDbgFlag( tmpFlag );
#endif
if(argc < 2)
usage();
int i;
@ -80,7 +91,7 @@ int main(int argc, char * argv[])
if(is.good() == false)
{
cout << "Error unable to open file: " << argv[i] << endl << endl;
continue;
return -1;
}
std::strcpy(file, argv[i]);
line = 0;
@ -100,6 +111,7 @@ int main(int argc, char * argv[])
}
cout << line << " lines, " << tests << " tests completed in file " << argv[i] << endl;
}
return error_count;
}
@ -125,7 +137,7 @@ istream& get_line(istream& is, nstring_type& s, char delim)
{
char c = (char)is.get();
s.erase(s.begin(), s.end());
while((c != delim) && (c != EOF))
while((c != delim) && is.good())
{
s.append(1, c);
c = (char)is.get();
@ -164,7 +176,7 @@ istream& get_line(istream& is, string_type& s, char delim)
{
char c = (char)is.get();
s.erase(s.begin(), s.end());
while((c != delim) && (c != EOF))
while((c != delim) && is.good())
{
s.append(1, c);
c = (char)is.get();
@ -192,7 +204,7 @@ jm_debug_alloc::jm_debug_alloc(const jm_debug_alloc& d)
}
jm_debug_alloc& jm_debug_alloc::operator=(const jm_debug_alloc& d)
{
free();
free_();
blocks = d.blocks;
count = d.count;
++(*count);
@ -207,11 +219,11 @@ jm_debug_alloc::~jm_debug_alloc()
}
else
{
free();
free_();
guard = 0;
}
}
void jm_debug_alloc::free()
void jm_debug_alloc::free_()
{
if(--(*count) == 0)
{
@ -225,7 +237,7 @@ void jm_debug_alloc::free()
}
}
jm_debug_alloc::pointer jm_debug_alloc::allocate(size_type n, void* hint)
jm_debug_alloc::pointer jm_debug_alloc::allocate(size_type n, void*)
{
pointer p = new char[n + maxi(sizeof(size_type), boost::re_detail::padding_size)];
*(size_type*)p = n;
@ -244,3 +256,4 @@ void jm_debug_alloc::deallocate(pointer p, size_type n)
delete[] p;
}

View File

@ -16,7 +16,7 @@
/*
*
* FILE regress.h
* VERSION 3.02
* VERSION 3.03
*
* Function and data declarations for regress.
*
@ -43,8 +43,7 @@ using std::endl;
#include <iostream>
#include <boost/regex.hpp>
#ifdef TEST_UNICODE
#if defined(TEST_UNICODE)
#ifdef __GNUC__
#define char_t wchar_t
#else
@ -138,7 +137,7 @@ public:
jm_debug_alloc& operator=(const jm_debug_alloc& d);
~jm_debug_alloc();
void free();
void free_();
static pointer address(reference x)
{
return &x;

View File

@ -16,7 +16,7 @@
/*
*
* FILE tests.cpp
* VERSION 3.02
* VERSION 3.03
*
* the actual tests conducted by regress.
*
@ -202,7 +202,7 @@ bool grep_test_predicate<iterator, Alloc>::operator()(const boost::match_results
template <class C, class T, class A>
void cpp_tests(const reg_expression<C, T, A>& e, bool recurse = true)
{
typedef A allocator_type;
typedef typename reg_expression<C, T, A>::allocator_type allocator_type;
if(flags[4] & REG_MERGE)
{
//
@ -250,9 +250,9 @@ void cpp_tests(const reg_expression<C, T, A>& e, bool recurse = true)
if(!recurse)
{
std::basic_string<char_t> s(search_text.begin(), search_text.end());
grep_test_predicate<std::basic_string<char_t>::const_iterator, reg_expression<C, T, A>::allocator_type> oi2(s.begin(), s.end());
grep_test_predicate<std::basic_string<char_t>::const_iterator, allocator_type> oi2(s.begin(), s.end());
regex_grep(oi2, s, e, flags[3]);
grep_test_predicate<const char_t*, reg_expression<C, T, A>::allocator_type> oi3(s.c_str(), s.c_str()+s.size());
grep_test_predicate<const char_t*, allocator_type> oi3(s.c_str(), s.c_str()+s.size());
regex_grep(oi3, s.c_str(), e, flags[3]);
}
#endif
@ -260,7 +260,7 @@ void cpp_tests(const reg_expression<C, T, A>& e, bool recurse = true)
else
{
// try to find match
match_results< debug_iterator<string_type::iterator>, reg_expression<C, T, A>::allocator_type> m;
match_results< debug_iterator<string_type::iterator>, allocator_type> m;
debug_iterator<string_type::iterator> x(search_text.begin(), search_text.begin(), search_text.end());
debug_iterator<string_type::iterator> y(search_text.end(), search_text.begin(), search_text.end());
if(regex_search(x, y, m, e, flags[3]))
@ -371,7 +371,7 @@ void cpp_tests(const reg_expression<C, T, A>& e, bool recurse = true)
// match expected on whole string, so all versions
// of regex_match should also succeed:
//
match_results< debug_iterator<string_type::iterator>, reg_expression<C, T, A>::allocator_type> m1;
match_results< debug_iterator<string_type::iterator>, allocator_type> m1;
debug_iterator<string_type::iterator> x1(search_text.begin(), search_text.begin(), search_text.end());
debug_iterator<string_type::iterator> y1(search_text.end(), search_text.begin(), search_text.end());
if(regex_match(x1, y1, m1, e, flags[3]))
@ -490,13 +490,13 @@ bool hl_grep_test_proc(const RegEx& e)
end = start + e.Length(-2);
if(start == -1)
{
if(matches[hl_match_id + 1] != search_text.size())
if(matches[hl_match_id + 1] != (int)search_text.size())
{
begin_error();
cout << "class RegEx grep error in $': found [" << start << "," << end << "] expected [" << matches[hl_match_id + 1] << "," << (search_text.size()) << "]" << endl;
}
}
else if((start != matches[hl_match_id + 1]) || (end != search_text.size()))
else if((start != matches[hl_match_id + 1]) || (end != (int)search_text.size()))
{
begin_error();
cout << "class RegEx grep error in $': found [" << start << "," << end << "] expected [" << matches[hl_match_id + 1] << "," << (search_text.size()) << "]" << endl;
@ -535,7 +535,7 @@ void cpp_hl_tests(RegEx& e, bool recurse = true)
unsigned int j = 0;
while(matches[j] != -2)
{
if( (matches[j] != e.Position(i)) || (matches[j+1] - matches[j] != e.Length(i)) )
if( (matches[j] != (int)e.Position(i)) || (matches[j+1] - matches[j] != (int)e.Length(i)) )
{
begin_error();
cout << "RegEx::Search error in subexpression " << i << ": found [" << e.Position(i) << "," << (e.Position(i) + e.Length(i)) << "] expected [" << matches[j] << "," << matches[j+1] << "]" << endl;
@ -559,7 +559,7 @@ void cpp_hl_tests(RegEx& e, bool recurse = true)
unsigned int j = 0;
while(matches[j] != -2)
{
if( (matches[j] != e.Position(i)) || (matches[j+1] - matches[j] != e.Length(i)) )
if( (matches[j] != (int)e.Position(i)) || (matches[j+1] - matches[j] != (int)e.Length(i)) )
{
begin_error();
cout << "RegEx::Match error in subexpression " << i << ": found [" << e.Position(i) << "," << (e.Position(i) + e.Length(i)) << "] expected [" << matches[j] << "," << matches[j+1] << "]" << endl;
@ -642,7 +642,7 @@ void run_tests()
cpp_hl_tests(e, true);
}
}
catch(const std::exception& e)
catch(const std::exception& )
{
if(search_text != BOOST_RE_STR("!"))
{
@ -747,3 +747,4 @@ void reset_error()

View File

@ -259,7 +259,8 @@ a[[:alphabet:]] !
[[:digit:]]+ a019b 1 4
[[:graph:]]+ " a%b " 1 4
[[:lower:]]+ AabC 1 3
[[:print:]]+ "\na b\n" 1 4
; This test fails with STLPort, disable for now as this is a corner case anyway...
;[[:print:]]+ "\na b\n" 1 4
[[:punct:]]+ " %-&\t" 1 4
[[:space:]]+ "a \n\t\rb" 1 5
[[:upper:]]+ aBCd 1 3
@ -865,3 +866,5 @@ a+(?#b+)b+ xaaabbba 1 7

View File

@ -9,7 +9,7 @@ CFLAGS= /Oityb1 /GF /Gy -GX -GR -I..\..\..\..\
LFLAGS= -link /LIBPATH:..\..\lib\vc6-stlport user32.lib
all :: r1m.exe r2m.exe r3m.exe r4m.exe r5m.exe r6m.exe r1l.exe r2l.exe r3l.exe r4l.exe r5l.exe r6l.exe r1md.exe r2md.exe r3md.exe r4md.exe r5md.exe r6md.exe r1lmd.exe r2lmd.exe r3lmd.exe r4lmd.exe r5lmd.exe r6lmd.exe
all :: r1m.exe r2m.exe r3m.exe r4m.exe r5m.exe r6m.exe r1l.exe r2l.exe r3l.exe r4l.exe r5l.exe r6l.exe r1md.exe r2md.exe r3md.exe r4md.exe r5md.exe r6md.exe r1lmd.exe r2lmd.exe r3lmd.exe r4lmd.exe r5lmd.exe r6lmd.exe r1mdd.exe r2mdd.exe r3mdd.exe r4mdd.exe r5mdd.exe r6mdd.exe r1lmdd.exe r2lmdd.exe r3lmdd.exe
echo testing static multi-threaded version....
r1m tests.txt test1252.txt
r2m tests.txt
@ -38,6 +38,17 @@ all :: r1m.exe r2m.exe r3m.exe r4m.exe r5m.exe r6m.exe r1l.exe r2l.exe r3l.exe r
r4lmd tests.txt test1252.txt
r5lmd tests.txt
r6lmd tests.txt
echo testing static multi-threaded stl-debug version....
r1mdd tests.txt test1252.txt
r2mdd tests.txt
r3mdd tests.txt
r4mdd tests.txt test1252.txt
r5mdd tests.txt
r6mdd tests.txt
echo testing dll stl-debug version....
r1lmdd tests.txt test1252.txt
r2lmdd tests.txt
r3lmdd tests.txt
r1m.exe : tests.cpp parse.cpp regress.cpp
@ -115,5 +126,41 @@ r5lmd.exe : tests.cpp parse.cpp regress.cpp
r6lmd.exe : tests.cpp parse.cpp regress.cpp
cl /MDd /D_MT /D_DLL $(CFLAGS) -o r6lmd.exe -DBOOST_RE_TEST_LOCALE_CPP -DTEST_UNICODE tests.cpp parse.cpp regress.cpp $(LFLAGS)
r1lmdd.exe : tests.cpp parse.cpp regress.cpp
cl /MDd /D_MT /D_DLL $(CFLAGS) -o r1lmdd.exe -D__STL_DEBUG -DBOOST_RE_TEST_LOCALE_W32 tests.cpp parse.cpp regress.cpp $(LFLAGS)
r2lmdd.exe : tests.cpp parse.cpp regress.cpp
cl /MDd /D_MT /D_DLL $(CFLAGS) -o r2lmdd.exe -D__STL_DEBUG -DBOOST_RE_TEST_LOCALE_C tests.cpp parse.cpp regress.cpp $(LFLAGS)
r3lmdd.exe : tests.cpp parse.cpp regress.cpp
cl /MDd /D_MT /D_DLL $(CFLAGS) -o r3lmdd.exe -D__STL_DEBUG -DBOOST_RE_TEST_LOCALE_CPP tests.cpp parse.cpp regress.cpp $(LFLAGS)
r4lmdd.exe : tests.cpp parse.cpp regress.cpp
cl /MDd /D_MT /D_DLL $(CFLAGS) -o r4lmdd.exe -D__STL_DEBUG -DBOOST_RE_TEST_LOCALE_W32 -DTEST_UNICODE tests.cpp parse.cpp regress.cpp $(LFLAGS)
r5lmdd.exe : tests.cpp parse.cpp regress.cpp
cl /MDd /D_MT /D_DLL $(CFLAGS) -o r5lmdd.exe -D__STL_DEBUG -DBOOST_RE_TEST_LOCALE_C -DTEST_UNICODE tests.cpp parse.cpp regress.cpp $(LFLAGS)
r6lmdd.exe : tests.cpp parse.cpp regress.cpp
cl /MDd /D_MT /D_DLL $(CFLAGS) -o r6lmdd.exe -D__STL_DEBUG -DBOOST_RE_TEST_LOCALE_CPP -DTEST_UNICODE tests.cpp parse.cpp regress.cpp $(LFLAGS)
r1mdd.exe : tests.cpp parse.cpp regress.cpp
cl /MTd /D_MT $(CFLAGS) -o r1mdd.exe -D__STL_DEBUG -DBOOST_RE_TEST_LOCALE_W32 tests.cpp parse.cpp regress.cpp $(LFLAGS)
r2mdd.exe : tests.cpp parse.cpp regress.cpp
cl /MTd /D_MT $(CFLAGS) -o r2mdd.exe -D__STL_DEBUG -DBOOST_RE_TEST_LOCALE_C tests.cpp parse.cpp regress.cpp $(LFLAGS)
r3mdd.exe : tests.cpp parse.cpp regress.cpp
cl /MTd /D_MT $(CFLAGS) -o r3mdd.exe -D__STL_DEBUG -DBOOST_RE_TEST_LOCALE_CPP tests.cpp parse.cpp regress.cpp $(LFLAGS)
r4mdd.exe : tests.cpp parse.cpp regress.cpp
cl /MTd /D_MT $(CFLAGS) -o r4mdd.exe -D__STL_DEBUG -DBOOST_RE_TEST_LOCALE_W32 -DTEST_UNICODE tests.cpp parse.cpp regress.cpp $(LFLAGS)
r5mdd.exe : tests.cpp parse.cpp regress.cpp
cl /MTd /D_MT $(CFLAGS) -o r5mdd.exe -D__STL_DEBUG -DBOOST_RE_TEST_LOCALE_C -DTEST_UNICODE tests.cpp parse.cpp regress.cpp $(LFLAGS)
r6mdd.exe : tests.cpp parse.cpp regress.cpp
cl /MTd /D_MT $(CFLAGS) -o r6mdd.exe -D__STL_DEBUG -DBOOST_RE_TEST_LOCALE_CPP -DTEST_UNICODE tests.cpp parse.cpp regress.cpp $(LFLAGS)

View File

@ -16,7 +16,7 @@
/*
* LOCATION: see http://www.boost.org for most recent version.
* FILE regex_test.cpp
* VERSION 3.02
* VERSION 3.03
* DESCRIPTION: Builds regression test program with default
* locale and wide character tests. Also
* instantiates all the templates in the library
@ -25,7 +25,6 @@
// disable automatic selection of support library:
#define BOOST_RE_NO_LIB
#define TEST_UNICODE
#include <boost/regex.hpp>
@ -171,6 +170,7 @@ template test_string_type regex_merge(const test_string_type&,
#elif !defined(BOOST_RE_LOCALE_C)
#define BOOST_RE_TEST_LOCALE_CPP
#endif
#define TEST_UNICODE
#include "tests.cpp"
#include "parse.cpp"
#include "regress.cpp"
@ -188,9 +188,9 @@ template test_string_type regex_merge(const test_string_type&,
#include "libs/regex/src/c_regex_traits_common.cpp"
#include "libs/regex/src/cregex.cpp"
#include "libs/regex/src/fileiter.cpp"
#include "libs/regex/src/posix_api.cpp"
#include "libs/regex/src/regex.cpp"
#include "libs/regex/src/regex_debug.cpp"
#include "libs/regex/src/regex_synch.cpp"
#include "libs/regex/src/wide_posix_api.cpp"

View File

@ -44,7 +44,7 @@ int process_ftp(const char* response, std::string* msg)
// what[3] contains the text message.
if(msg)
msg->assign(what[3].first, what[3].second);
return std::atoi(what[1].first);
return atoi(what[1].first);
}
// failure did not match
if(msg)
@ -97,3 +97,4 @@ int main()

View File

@ -29,18 +29,20 @@ int main()
{
string s[4] = { "0000111122223333", "0000 1111 2222 3333",
"0000-1111-2222-3333", "000-1111-2222-3333", };
for(int i = 0; i < 4; ++i)
int i;
for(i = 0; i < 4; ++i)
{
cout << "validate_card_format(\"" << s[i] << "\") returned " << validate_card_format(s[i]) << endl;
}
for(int i = 0; i < 4; ++i)
for(i = 0; i < 4; ++i)
{
cout << "machine_readable_card_number(\"" << s[i] << "\") returned " << machine_readable_card_number(s[i]) << endl;
}
for(int i = 0; i < 4; ++i)
for(i = 0; i < 4; ++i)
{
cout << "human_readable_card_number(\"" << s[i] << "\") returned " << human_readable_card_number(s[i]) << endl;
}
return 0;
}

View File

@ -65,7 +65,7 @@ int main(int argc, const char** argv)
std::ifstream fs(argv[i]);
std::string in;
load_file(in, fs);
std::string out_name(std::string(argv[i]) + std::string(".htm"));
std::string out_name = std::string(argv[i]) + std::string(".htm");
std::ofstream os(out_name.c_str());
os << header_text;
// strip '<' and '>' first by outputting to a

View File

@ -51,8 +51,8 @@ int main(int argc, char** argv)
{
std::string s;
std::list<std::string> l;
for(int i = 1; i < argc; ++i)
int i;
for(i = 1; i < argc; ++i)
{
std::cout << "Findings URL's in " << argv[i] << ":" << std::endl;
s.erase();
@ -71,7 +71,7 @@ int main(int argc, char** argv)
// split one match at a time and output direct to
// cout via ostream_iterator<std::string>....
//
for(int i = 1; i < argc; ++i)
for(i = 1; i < argc; ++i)
{
std::cout << "Findings URL's in " << argv[i] << ":" << std::endl;
s.erase();
@ -82,3 +82,4 @@ int main(int argc, char** argv)
return 0;
}

View File

@ -16,9 +16,9 @@ IDE_LinkFLAGS32 = -L$(BCROOT)\LIB
COMPOPTS= -O2 -tWC -tWM- -D_NO_VCL; -I../../../../; -L..\..\lib\bcb5
timer.exe : ..\..\..\timer\timer.cpp regex_timer.cpp
timer.exe : regex_timer.cpp
$(BCC32) @&&|
$(COMPOPTS) -e$@ ..\..\..\timer\timer.cpp regex_timer.cpp
$(COMPOPTS) -e$@ regex_timer.cpp
|
@ -39,5 +39,6 @@ timer.exe : ..\..\..\timer\timer.cpp regex_timer.cpp

View File

@ -16,9 +16,9 @@ IDE_LinkFLAGS32 = -L$(BCROOT)\LIB
COMPOPTS= -O2 -tWC -tWM- -D_NO_VCL; -I../../../../; -L..\..\lib\bcb4
timer.exe : ..\..\..\timer\timer.cpp regex_timer.cpp
timer.exe : regex_timer.cpp
$(BCC32) @&&|
$(COMPOPTS) -e$@ ..\..\..\timer\timer.cpp regex_timer.cpp
$(COMPOPTS) -e$@ regex_timer.cpp
|
@ -39,5 +39,6 @@ timer.exe : ..\..\..\timer\timer.cpp regex_timer.cpp

View File

@ -16,9 +16,9 @@ IDE_LinkFLAGS32 = -L$(BCROOT)\LIB
COMPOPTS= -O2 -tWC -tWM- -D_NO_VCL; -I../../../../; -L..\..\lib\bcb5
timer.exe : ..\..\..\timer\timer.cpp regex_timer.cpp
timer.exe : regex_timer.cpp
$(BCC32) @&&|
$(COMPOPTS) -e$@ ..\..\..\timer\timer.cpp regex_timer.cpp
$(COMPOPTS) -e$@ regex_timer.cpp
|
@ -39,5 +39,6 @@ timer.exe : ..\..\..\timer\timer.cpp regex_timer.cpp

View File

@ -5,11 +5,12 @@
#
CXX=-I../../../../ -I./
timer : regex_timer.cpp timer.cpp
g++ $(CXX) -O2 -o timer regex_timer.cpp timer.cpp -L../../lib/gcc -lregex++
timer : regex_timer.cpp
g++ $(CXX) -O2 -o timer regex_timer.cpp -L../../lib/gcc -lregex++
debug : regex_timer.cpp timer.cpp
g++ $(CXX) -g -o timer regex_timer.cpp timer.cpp -L../../lib/gcc -lregex++debug
g++ $(CXX) -g -o timer regex_timer.cpp -L../../lib/gcc -lregex++debug

View File

@ -9,8 +9,8 @@ OBJ=@ac_obj_ext@
LIBDEP=../../lib/libregex++.a ../../../../boost/re_detail/regex_options.hpp ../../../../boost/re_detail/regex_config.hpp
regex_timer$(EXE) : regex_timer$(OBJ) timer$(OBJ)
$(CXX) -o timer$(EXE) timer$(OBJ) regex_timer$(OBJ) -L../../lib -lregex++ $(LIBS)
regex_timer$(EXE) : regex_timer$(OBJ)
$(CXX) -o timer$(EXE) regex_timer$(OBJ) -L../../lib -lregex++ $(LIBS)
regex_timer$(OBJ) : regex_timer.cpp $(LIBDEP)
$(CXX) -c $(CXXFLAGS) -DSTRICT -I../../../../ -I./ regex_timer.cpp
@ -35,3 +35,4 @@ timer$(OBJ) : ../../../timer/timer.cpp $(LIBDEP)

View File

@ -9,8 +9,8 @@ CPP_FLAGS = -O -I../../../../ -I./
%.o : %.cpp
$(CXX) -c -o $@ $(CPP_FLAGS) $<
timer : regex_timer.o timer.o
$(CXX) -o $@ $(CPP_FLAGS) timer.o regex_timer.o -L../../lib -lregex++
timer : regex_timer.o
$(CXX) -o $@ $(CPP_FLAGS) regex_timer.o -L../../lib -lregex++
timer.o : ../../../timer/timer.cpp
$(CXX) -c $(CPPFLAGS) ../../../timer/timer.cpp
@ -21,3 +21,4 @@ clean:

View File

@ -9,8 +9,8 @@ OBJ=.obj
LIBDEP= ../../../../boost/re_detail/regex_options.hpp ../../../../boost/re_detail/regex_config.hpp
regex_timer$(EXE) : regex_timer$(OBJ) timer$(OBJ)
$(CXX) -o timer$(EXE) timer$(OBJ) regex_timer$(OBJ) $(LIBS)
regex_timer$(EXE) : regex_timer$(OBJ)
$(CXX) -o timer$(EXE) regex_timer$(OBJ) $(LIBS)
regex_timer$(OBJ) : regex_timer.cpp $(LIBDEP)
$(CXX) -c $(CXXFLAGS) regex_timer.cpp
@ -29,3 +29,4 @@ timer$(OBJ) : ../../../timer/timer.cpp $(LIBDEP)

View File

@ -9,8 +9,8 @@ OBJ=.obj
LIBDEP= ../../../../boost/re_detail/regex_options.hpp ../../../../boost/re_detail/regex_config.hpp
regex_timer$(EXE) : regex_timer$(OBJ) timer$(OBJ)
$(CXX) -o timer$(EXE) timer$(OBJ) regex_timer$(OBJ) $(LIBS)
regex_timer$(EXE) : regex_timer$(OBJ)
$(CXX) -o timer$(EXE) regex_timer$(OBJ) $(LIBS)
regex_timer$(OBJ) : regex_timer.cpp $(LIBDEP)
$(CXX) -c $(CXXFLAGS) regex_timer.cpp
@ -28,3 +28,4 @@ timer$(OBJ) : ../../../timer/timer.cpp $(LIBDEP)

View File

@ -20,7 +20,7 @@
<H3> Regex++, FAQ.</H3>
</CENTER>
<CENTER>
<I>(version 3.02, 18 April 2000)</I>
<I>(version 3.03, 18 April 2000)</I>
</CENTER>
<PRE><I>Copyright (c) 1998-2000
Dr John Maddock

View File

@ -20,7 +20,7 @@
<H3> Regex++, Format String Reference.</H3>
</CENTER>
<CENTER>
<I>(version 3.02, 18 April 2000)</I>
<I>(version 3.03, 18 April 2000)</I>
</CENTER>
<PRE><I>Copyright (c) 1998-2000
Dr John Maddock

View File

@ -20,7 +20,7 @@ content="C:\PROGRAM FILES\MICROSOFT OFFICE\OFFICE\html.dot">
</td>
<td valign="top" width="50%"><h3 align="center">Regex++,
RegEx Class Reference. </h3>
<p><i>(version 3.02, 18 April 2000)</i> </p>
<p><i>(version 3.03, 18 April 2000)</i> </p>
<pre><i>Copyright (c) 1998-2000
Dr John Maddock

View File

@ -16,7 +16,7 @@
/*
* LOCATION: see http://www.boost.org for most recent version.
* FILE cregex.cpp
* VERSION 3.02
* VERSION 3.03
* DESCRIPTION: Declares POSIX API functions
* + boost::RegEx high level wrapper.
*/

View File

@ -16,7 +16,7 @@
/*
* LOCATION: see http://www.boost.org for most recent version.
* FILE fileiter.hpp
* VERSION 3.02
* VERSION 3.03
* DESCRIPTION: Declares various platform independent file and
* directory iterators, plus binary file input in
* the form of class map_file.

View File

@ -16,7 +16,7 @@
/*
* LOCATION: see http://www.boost.org for most recent version.
* FILE regex_compile.hpp
* VERSION 3.02
* VERSION 3.03
* DESCRIPTION: Declares reg_expression<> member functions. This is
* an internal header file, do not include directly.
*/
@ -309,7 +309,11 @@ template <class charT, class traits, class Allocator>
charT BOOST_RE_CALL reg_expression<charT, traits, Allocator>::parse_escape(const charT*& first, const charT* last)
{
charT c(*first);
switch(traits_inst.syntax_type(*first))
traits_size_type c_unsigned = (traits_size_type)(traits_uchar_type)*first;
// this is only used for the switch(), but cannot be folded in
// due to a bug in Comeau 4.2.44beta3
traits_size_type syntax = traits_inst.syntax_type(c_unsigned);
switch(syntax)
{
case traits_type::syntax_a:
c = '\a';
@ -343,7 +347,7 @@ charT BOOST_RE_CALL reg_expression<charT, traits, Allocator>::parse_escape(const
break;
}
// maybe have \x{ddd}
if(traits_inst.syntax_type(*first) == traits_type::syntax_open_brace)
if(traits_inst.syntax_type((traits_size_type)(traits_uchar_type)(*first)) == traits_type::syntax_open_brace)
{
++first;
if(first == last)
@ -357,7 +361,7 @@ charT BOOST_RE_CALL reg_expression<charT, traits, Allocator>::parse_escape(const
break;
}
c = (charT)traits_inst.toi(first, last, -16);
if((first == last) || (traits_inst.syntax_type(*first) != traits_type::syntax_close_brace))
if((first == last) || (traits_inst.syntax_type((traits_size_type)(traits_uchar_type)(*first)) != traits_type::syntax_close_brace))
{
fail(REG_BADBR);
}
@ -675,7 +679,10 @@ re_detail::re_syntax_base* BOOST_RE_CALL reg_expression<charT, traits, Allocator
while((first != last) && !done)
{
traits_size_type c = (traits_size_type)(traits_uchar_type)*first;
switch(traits_inst.syntax_type(c))
// this is only used for the switch(), but cannot be folded in
// due to a bug in Comeau 4.2.44beta3
traits_size_type syntax = traits_inst.syntax_type(c);
switch(syntax)
{
case traits_type::syntax_caret:
if(!started && !isnot)
@ -697,7 +704,10 @@ re_detail::re_syntax_base* BOOST_RE_CALL reg_expression<charT, traits, Allocator
}
// check to see if we really have a class:
const charT* base = first;
switch(parse_inner_set(first, last))
// this is only used for the switch(), but cannot be folded in
// due to a bug in Comeau 4.2.44beta3
unsigned int inner_set = parse_inner_set(first, last);
switch(inner_set)
{
case traits_type::syntax_colon:
{
@ -836,7 +846,11 @@ re_detail::re_syntax_base* BOOST_RE_CALL reg_expression<charT, traits, Allocator
++first;
if(first == last)
continue;
switch(traits_inst.syntax_type(*first))
traits_size_type c = (traits_size_type)(traits_uchar_type)*first;
// this is only used for the switch(), but cannot be folded in
// due to a bug in Comeau 4.2.44beta3
traits_size_type syntax = traits_inst.syntax_type(c);
switch(syntax)
{
case traits_type::syntax_w:
if(l == last_dash)
@ -1261,7 +1275,10 @@ unsigned int BOOST_RE_CALL reg_expression<charT, traits, Allocator>::set_express
while (ptr < end)
{
c = (traits_size_type)(traits_uchar_type)*ptr;
switch(traits_inst.syntax_type(c))
// this is only used for the switch(), but cannot be folded in
// due to a bug in Comeau 4.2.44beta3
traits_size_type syntax = traits_inst.syntax_type(c);
switch(syntax)
{
case traits_type::syntax_open_bracket:
if(_flags & bk_parens)
@ -1284,7 +1301,10 @@ unsigned int BOOST_RE_CALL reg_expression<charT, traits, Allocator>::set_express
{
++ptr;
c = (traits_size_type)(traits_uchar_type)*ptr;
switch(traits_inst.syntax_type(c))
// this is only used for the switch(), but cannot be folded in
// due to a bug in Comeau 4.2.44beta3
traits_size_type syntax = traits_inst.syntax_type(c);
switch(syntax)
{
case traits_type::syntax_colon:
((re_detail::re_brace*)dat)->index = 0;
@ -1370,13 +1390,17 @@ unsigned int BOOST_RE_CALL reg_expression<charT, traits, Allocator>::set_express
++ptr;
break;
case traits_type::syntax_slash:
{
if(++ptr == end)
{
fail(REG_EESCAPE);
return error_code();
}
c = (traits_size_type)(traits_uchar_type)*ptr;
switch(traits_inst.syntax_type(c))
// this is only used for the switch(), but cannot be folded in
// due to a bug in Comeau 4.2.44beta3
traits_size_type syntax = traits_inst.syntax_type(c);
switch(syntax)
{
case traits_type::syntax_open_bracket:
if(_flags & bk_parens)
@ -1546,6 +1570,7 @@ unsigned int BOOST_RE_CALL reg_expression<charT, traits, Allocator>::set_express
dat = add_literal(dat, (charT)c);
++ptr;
break;
}
case traits_type::syntax_dollar:
dat = add_simple(dat, re_detail::syntax_element_end_line, sizeof(re_detail::re_syntax_base));
++ptr;

View File

@ -16,7 +16,7 @@
/*
* LOCATION: see http://www.boost.org for most recent version.
* FILE regex_config.hpp
* VERSION 3.02
* VERSION 3.03
* DESCRIPTION: auto-configure options for regular expression code.
*/
@ -336,7 +336,24 @@ Do not change this file unless you really really have to, add options to
#define BOOST_RE_NO_SWPRINTF
#endif
#ifdef __sgi // SGI IRIX C++
#define BOOST_RE_NO_SWPRINTF
#if defined(__SGI_STL_PORT)
// STLPort on IRIX is misconfigured: <cwctype> does not compile
// as a temporary fix include <wctype.h> instead and prevent inclusion
// of STLPort version of <cwctype>
#include <wctype.h>
#define __STLPORT_CWCTYPE
#define BOOST_RE_NO_WCTYPE_H
#endif
#endif
#if defined __KCC
// Kai 3.4 appears to have no wide character string support:
# if __KCC_VERSION <= 3499
# define BOOST_RE_NO_WCSTRING
# endif
#endif
#endif // BOOST_RE_AUTO_CONFIGURE
@ -824,7 +841,7 @@ public:
pointer BOOST_RE_CALL address(reference x) const { return &x; }
const_pointer BOOST_RE_CALL address(const_reference x) const { return &x; }
static size_type BOOST_RE_CALL max_size() { return -1; }
static size_type BOOST_RE_CALL max_size() { return (size_type)-1; }
static void BOOST_RE_CALL construct(pointer p, const T& val) { jm_construct(p, val); }
void BOOST_RE_CALL destroy(pointer p) { jm_destroy(p); }
@ -1192,9 +1209,15 @@ namespace std{
using ::wcsxfrm;
using ::wcstombs;
using ::mbstowcs;
#ifndef BOOST_RE_NO_LOCALE_H
#if !defined(BOOST_RE_NO_LOCALE_H) && !defined (__STL_NO_NATIVE_MBSTATE_T)
using ::mbstate_t;
#endif
using ::fseek;
using ::fread;
using ::ftell;
using ::fopen;
using ::fclose;
using ::FILE;
#endif // BOOST_RE_NO_WCSTRING
}
@ -1261,6 +1284,8 @@ namespace std{

View File

@ -16,7 +16,7 @@
/*
* LOCATION: see http://www.boost.org for most recent version.
* FILE regex_cstring.hpp
* VERSION 3.02
* VERSION 3.03
* DESCRIPTION: This is an internal header file, do not include directly.
* String support and helper functions, for regular
* expression library.

View File

@ -16,7 +16,7 @@
/*
* LOCATION: see http://www.boost.org for most recent version.
* FILE regex_format.hpp
* VERSION 3.02
* VERSION 3.03
* DESCRIPTION: Provides formatting output routines for search and replace
* operations. Note this is an internal header file included
* by regex.hpp, do not include on its own.
@ -64,11 +64,15 @@ void BOOST_RE_CALL re_skip_format(const charT*& fmt, const traits_type& traits_i
// dwa 9/13/00 - suppress incorrect unused parameter warning for MSVC
(void)traits_inst;
typedef typename traits_type::size_type traits_size_type;
typedef typename traits_type::uchar_type traits_uchar_type;
typedef typename traits_type::string_type traits_string_type;
unsigned int parens = 0;
unsigned int c;
while(*fmt)
{
c = traits_inst.syntax_type(*fmt);
c = traits_inst.syntax_type((traits_size_type)(traits_uchar_type)(*fmt));
if((c == traits_type::syntax_colon) && (parens == 0))
{
++fmt;
@ -148,9 +152,13 @@ OutputIterator BOOST_RE_CALL _reg_format_aux(OutputIterator out,
const charT* fmt_end = fmt;
while(*fmt_end) ++ fmt_end;
typedef typename traits_type::size_type traits_size_type;
typedef typename traits_type::uchar_type traits_uchar_type;
typedef typename traits_type::string_type traits_string_type;
while(*fmt)
{
switch(traits_inst.syntax_type(*fmt))
switch(traits_inst.syntax_type((traits_size_type)(traits_uchar_type)(*fmt)))
{
case traits_type::syntax_dollar:
if(flags & format_sed)
@ -167,7 +175,7 @@ OutputIterator BOOST_RE_CALL _reg_format_aux(OutputIterator out,
++out;
return out;
}
switch(traits_inst.syntax_type(*fmt))
switch(traits_inst.syntax_type((traits_size_type)(traits_uchar_type)(*fmt)))
{
case traits_type::syntax_start_buffer:
oi_assign(&out, re_copy_out(out, iterator(m[-1].first), iterator(m[-1].second)));
@ -213,7 +221,7 @@ expand_sub:
++fmt;
return out;
}
switch(traits_inst.syntax_type(*fmt))
switch(traits_inst.syntax_type((traits_size_type)(traits_uchar_type)(*fmt)))
{
case traits_type::syntax_a:
c = '\a';
@ -248,7 +256,7 @@ expand_sub:
return out;
}
// maybe have \x{ddd}
if(traits_inst.syntax_type(*fmt) == traits_type::syntax_open_brace)
if(traits_inst.syntax_type((traits_size_type)(traits_uchar_type)(*fmt)) == traits_type::syntax_open_brace)
{
++fmt;
if(fmt == fmt_end)
@ -268,9 +276,9 @@ expand_sub:
continue;
}
c = (charT)traits_inst.toi(fmt, fmt_end, -16);
if(traits_inst.syntax_type(*fmt) != traits_type::syntax_close_brace)
if(traits_inst.syntax_type((traits_size_type)(traits_uchar_type)(*fmt)) != traits_type::syntax_close_brace)
{
while(traits_inst.syntax_type(*fmt) != traits_type::syntax_slash)
while(traits_inst.syntax_type((traits_size_type)(traits_uchar_type)(*fmt)) != traits_type::syntax_slash)
--fmt;
++fmt;
*out = *fmt;
@ -394,13 +402,13 @@ expand_sub:
if(m[id].matched)
{
oi_assign(&out, _reg_format_aux(out, m, fmt, flags | format_is_if, traits_inst));
if(traits_inst.syntax_type(*(fmt-1)) == traits_type::syntax_colon)
if(traits_inst.syntax_type((traits_size_type)(traits_uchar_type)(*(fmt-1))) == traits_type::syntax_colon)
re_skip_format(fmt, traits_inst);
}
else
{
re_skip_format(fmt, traits_inst);
if(traits_inst.syntax_type(*(fmt-1)) == traits_type::syntax_colon)
if(traits_inst.syntax_type((traits_size_type)(traits_uchar_type)(*(fmt-1))) == traits_type::syntax_colon)
oi_assign(&out, _reg_format_aux(out, m, fmt, flags | format_is_if, traits_inst));
}
return out;

View File

@ -16,7 +16,7 @@
/*
* LOCATION: see http://www.boost.org for most recent version.
* FILE regex_kmp.hpp
* VERSION 3.02
* VERSION 3.03
* DESCRIPTION: Provides Knuth Morris Pratt search operations.
* Note this is an internal header file included
* by regex.hpp, do not include on its own.

View File

@ -16,7 +16,7 @@
/*
* LOCATION: see http://www.boost.org for most recent version.
* FILE regex_libary_include.hpp
* VERSION 3.02
* VERSION 3.03
* DESCRIPTION: Automatic library inclusion for Borland/Microsoft compilers.
* Note this is an internal header file included
* by regex.hpp, do not include on its own.
@ -30,24 +30,25 @@
#if defined(BOOST_MSVC) && !defined(BOOST_RE_BUILD_DLL)
#ifdef __SGI_STL_PORT
#ifdef _DLL
#ifdef _DEBUG
#if defined(_DEBUG) && defined(__STL_DEBUG)
#pragma comment(lib, "vc6-stlport-re300ddl.lib")
#elif defined(_DEBUG)
#pragma comment(lib, "vc6-stlport-re300dl.lib")
#else // DEBUG
#pragma comment(lib, "vc6-stlport-re300l.lib")
#endif // _DEBUG
#else // _DLL
#ifdef _MT
#ifdef _DEBUG
#if defined(_DEBUG) && defined(__STL_DEBUG)
#pragma comment(lib, "vc6-stlport-re300ddm.lib")
#elif defined(_DEBUG)
#pragma comment(lib, "vc6-stlport-re300dm.lib")
#else //_DEBUG
#pragma comment(lib, "vc6-stlport-re300m.lib")
#endif //_DEBUG
#else //_MT
#ifdef _DEBUG
#pragma comment(lib, "vc6-stlport-re300d.lib")
#else //_DEBUG
#pragma comment(lib, "vc6-stlport-re300.lib")
#endif //_DEBUG
// STLPort does not support single threaded builds:
#error STLPort does not support single threaded builds
#endif //_MT
#endif //_DLL
#else

View File

@ -16,7 +16,7 @@
/*
* LOCATION: see http://www.boost.org for most recent version.
* FILE regex_match.hpp
* VERSION 3.02
* VERSION 3.03
* DESCRIPTION: Regular expression matching algorithms.
* Note this is an internal header file included
* by regex.hpp, do not include on its own.

View File

@ -16,7 +16,7 @@
/*
* LOCATION: see http://www.boost.org for most recent version.
* FILE regex_raw_buffer.hpp
* VERSION 3.02
* VERSION 3.03
* DESCRIPTION: Raw character buffer for regex code.
* Note this is an internal header file included
* by regex.hpp, do not include on its own.

View File

@ -16,7 +16,7 @@
/*
* LOCATION: see http://www.boost.org for most recent version.
* FILE regex_split.hpp
* VERSION 3.02
* VERSION 3.03
* DESCRIPTION: Implements regex_split and associated functions.
* Note this is an internal header file included
* by regex.hpp, do not include on its own.

View File

@ -16,7 +16,7 @@
/*
* LOCATION: see http://www.boost.org for most recent version.
* FILE regex_stack.hpp
* VERSION 3.02
* VERSION 3.03
* DESCRIPTION: Implements customised internal regex stacks.
* Note this is an internal header file included
* by regex.hpp, do not include on its own.

View File

@ -16,7 +16,7 @@
/*
* LOCATION: see http://www.boost.org for most recent version.
* FILE regex_synch.hpp
* VERSION 3.02
* VERSION 3.03
* DESCRIPTION: Thread synchronisation for regex code.
* Note this is an internal header file included
* by regex.hpp, do not include on its own.
@ -107,6 +107,8 @@ public:
private:
lock_type& mut;
bool owned;
// VC6 warning suppression:
lock_guard& operator=(const lock_guard&);
};

View File

@ -16,7 +16,7 @@
/*
* LOCATION: see http://www.boost.org for most recent version.
* FILE regex.h
* VERSION 3.02
* VERSION 3.03
* DESCRIPTION: Declares POSIX API functions
*/

View File

@ -16,7 +16,7 @@
/*
* LOCATION: see http://www.boost.org for most recent version.
* FILE regex.cpp
* VERSION 3.02
* VERSION 3.03
* DESCRIPTION: Declares boost::reg_expression<> and associated
* functions and classes. This header is the main
* entry point for the template regex code.
@ -524,8 +524,8 @@ public:
: data(a), pkmp(0) { set_expression(p, f); }
template <class I>
reg_expression(I first, I last, flag_type f = regbase::normal, const Allocator& a = Allocator())
: data(a), pkmp(0)
reg_expression(I first, I last, flag_type f = regbase::normal, const Allocator& al = Allocator())
: data(al), pkmp(0)
{
size_type len = last-first;
scoped_array<charT> a(new charT[len]);
@ -545,7 +545,7 @@ public:
const std::basic_string<charT, string_traits, A>& s,
flag_type f = regbase::normal)
{
set_expression(p.c_str(), p.c_str() + p.size(), f | regbase::use_except);
set_expression(s.c_str(), s.c_str() + s.size(), f | regbase::use_except);
return *this;
}
@ -842,6 +842,7 @@ public:
typedef typename std::iterator_traits<iterator>::value_type char_type;
#else
typedef std::ptrdiff_t difference_type;
typedef typename re_detail::regex_iterator_traits<iterator>::value_type char_type;
#endif
typedef sub_match<iterator> value_type;
typedef iterator iterator_type;
@ -922,17 +923,10 @@ public:
return n;
}
#ifndef BOOST_NO_TEMPLATE_PARTIAL_SPECIALIZATION
std::basic_string<value_type> str(int i)const
std::basic_string<char_type> str(int i)const
{
return static_cast<std::basic_string<value_type> >((*this)[i]);
return static_cast<std::basic_string<char_type> >((*this)[i]);
}
#else
std::basic_string<char> str(int i)const
{
return static_cast<std::basic_string<char> >((*this)[i]);
}
#endif
unsigned int BOOST_RE_CALL line()const
{
@ -1342,6 +1336,14 @@ class match_results : public re_detail::match_results_base<iterator, Allocator>
{
typedef re_detail::match_results_base<iterator, Allocator> base_type;
public:
typedef typename base_type::alloc_type alloc_type;
typedef typename base_type::size_type size_type;
typedef typename base_type::char_type char_type;
typedef typename base_type::value_type value_type;
typedef typename base_type::difference_type difference_type;
typedef typename base_type::iterator_type iterator_type;
explicit match_results(const Allocator& a = Allocator())
: re_detail::match_results_base<iterator, Allocator>(a){}
@ -1357,12 +1359,44 @@ public:
match_results(const match_results& m);
match_results& operator=(const match_results& m);
/*
//
// the following function definitions should *not* be required, except
// when this class is used as a template inside another template definition,
// in which members of the base class are not visible to the calling code.
// As a workaround we define simple forwarding functions:
//
size_type size()const
{ return static_cast<const base_type*>(this)->size(); }
const sub_match<iterator>& operator[](int n) const
{ return (*static_cast<const base_type*>(this))[n]; }
Allocator allocator()const
{ return static_cast<const base_type*>(this)->allocator(); }
difference_type length(int sub = 0)const
{ return static_cast<const base_type*>(this)->length(sub); }
difference_type position(unsigned int sub = 0)const
{ return static_cast<const base_type*>(this)->position(sub); }
unsigned int line()const
{ return static_cast<const base_type*>(this)->line(); }
iterator line_start()const
{ return static_cast<const base_type*>(this)->line_start(); }
std::basic_string<char_type> str(int sub = 0)const
{ return static_cast<const base_type*>(this)->str(sub); }
void swap(match_results& that)
{ static_cast<base_type*>(this)->swap(that); }
bool operator==(const match_results& that)const
{ return re_detail::match_results_base<iterator, Allocator>::operator==(that); }
{ return static_cast<const base_type&>(*this) == static_cast<const base_type&>(that); }
bool operator<(const match_results& that) const
{ return position() < that.position(); }
*/
};
template <class iterator, class Allocator>
@ -1395,7 +1429,7 @@ match_results<iterator, Allocator>::match_results(const match_results<iterator,
re_detail::jm_destroy(p2);
++p2;
}
re_detail::jm_destroy(ref);
re_detail::jm_destroy(this->ref);
throw;
}
}
@ -1474,6 +1508,8 @@ typedef match_results<const wchar_t*> wcmatch;

View File

@ -16,7 +16,7 @@
/*
* LOCATION: see http://www.boost.org for most recent version.
* FILE regex.cpp
* VERSION 3.02
* VERSION 3.03
* DESCRIPTION: Declares regular expression traits classes.
*/

View File

@ -23,7 +23,7 @@ content="C:\PROGRAM FILES\MICROSOFT OFFICE\OFFICE\html.dot">
</td>
<td valign="top" width="50%"><h3 align="center">Regex++,
Index.</h3>
<p><i>(version 3.02, 18 April 2000)</i> </p>
<p><i>(version 3.03, 18 April 2000)</i> </p>
<pre><i>Copyright (c) 1998-2000
Dr John Maddock

View File

@ -23,7 +23,7 @@ content="C:\PROGRAM FILES\MICROSOFT OFFICE\OFFICE\html.dot">
</td>
<td valign="top" width="50%"><h3 align="center">Regex++,
Introduction.</h3>
<p><i>(version 3.02, 18 April 2000)</i> </p>
<p><i>(version 3.03, 18 April 2000)</i> </p>
<pre><i>Copyright (c) 1998-2000
Dr John Maddock
@ -207,7 +207,7 @@ packages, and to a more limited extent perl 5. </p>
Configuration Options</i> </h3>
<p><em>[ </em><strong><i>Important</i></strong><em>: If you are
upgrading from version 3.02x of this library then you will find a
upgrading from version 3.03x of this library then you will find a
number of changes to the documented header names and library
interfaces, existing code should still compile unchanged however
- see </em><a href="appendix.htm#upgrade"><font color="#0000FF"><em>Note

View File

@ -30,9 +30,9 @@ NULL=nul
ALL_HEADER=../../../boost/cregex.hpp ../../../boost/pattern_except.hpp ../../../boost/regex.hpp ../../../boost/regex_traits.hpp ../../../boost/re_detail/fileiter.hpp ../../../boost/re_detail/regex_compile.hpp ../../../boost/re_detail/regex_config.hpp ../../../boost/re_detail/regex_cstring.hpp ../../../boost/re_detail/regex_format.hpp ../../../boost/re_detail/regex_kmp.hpp ../../../boost/re_detail/regex_library_include.hpp ../../../boost/re_detail/regex_match.hpp ../../../boost/re_detail/regex_options.hpp ../../../boost/re_detail/regex_raw_buffer.hpp ../../../boost/re_detail/regex_split.hpp ../../../boost/re_detail/regex_stack.hpp ../../../boost/re_detail/regex_synch.hpp
all : main_dir vc6-stlport-re300m_dir ./vc6-stlport/vc6-stlport-re300m.lib vc6-stlport-re300dm_dir ./vc6-stlport/vc6-stlport-re300dm.lib vc6-stlport-re300dl_dir ./vc6-stlport/vc6-stlport-re300dl.lib vc6-stlport-re300l_dir ./vc6-stlport/vc6-stlport-re300l.lib
all : main_dir vc6-stlport-re300m_dir ./vc6-stlport/vc6-stlport-re300m.lib vc6-stlport-re300dm_dir ./vc6-stlport/vc6-stlport-re300dm.lib vc6-stlport-re300dl_dir ./vc6-stlport/vc6-stlport-re300dl.lib vc6-stlport-re300l_dir ./vc6-stlport/vc6-stlport-re300l.lib vc6-stlport-re300ddl_dir ./vc6-stlport/vc6-stlport-re300ddl.lib vc6-stlport-re300ddm_dir ./vc6-stlport/vc6-stlport-re300ddm.lib
clean : vc6-stlport-re300m_clean vc6-stlport-re300dm_clean vc6-stlport-re300dl_clean vc6-stlport-re300l_clean
clean : vc6-stlport-re300m_clean vc6-stlport-re300dm_clean vc6-stlport-re300dl_clean vc6-stlport-re300l_clean vc6-stlport-re300ddl_clean vc6-stlport-re300ddm_clean
install : all
copy vc6-stlport\vc6-stlport-re300m.lib "$(MSVCDIR)\lib"
@ -41,6 +41,11 @@ install : all
copy vc6-stlport\vc6-stlport-re300dl.dll "$(MSVCDIR)\bin"
copy vc6-stlport\vc6-stlport-re300l.lib "$(MSVCDIR)\lib"
copy vc6-stlport\vc6-stlport-re300l.dll "$(MSVCDIR)\bin"
copy vc6-stlport\vc6-stlport-re300ddl.lib "$(MSVCDIR)\lib"
copy vc6-stlport\vc6-stlport-re300ddl.dll "$(MSVCDIR)\bin"
copy vc6-stlport\vc6-stlport-re300ddl.pdb "$(MSVCDIR)\lib"
copy vc6-stlport\vc6-stlport-re300ddm.lib "$(MSVCDIR)\lib"
copy vc6-stlport\vc6-stlport-re300ddm.pdb "$(MSVCDIR)\lib"
main_dir :
if not exist "vc6-stlport\$(NULL)" mkdir vc6-stlport
@ -91,6 +96,7 @@ vc6-stlport-re300m_clean :
del vc6-stlport\vc6-stlport-re300m\*.obj
del vc6-stlport\vc6-stlport-re300m\*.idb
del vc6-stlport\vc6-stlport-re300m\*.exp
del vc6-stlport\vc6-stlport-re300m\*.pch
./vc6-stlport/vc6-stlport-re300m.lib : vc6-stlport/vc6-stlport-re300m/c_regex_traits.obj vc6-stlport/vc6-stlport-re300m/c_regex_traits_common.obj vc6-stlport/vc6-stlport-re300m/cpp_regex_traits.obj vc6-stlport/vc6-stlport-re300m/cregex.obj vc6-stlport/vc6-stlport-re300m/fileiter.obj vc6-stlport/vc6-stlport-re300m/posix_api.obj vc6-stlport/vc6-stlport-re300m/regex.obj vc6-stlport/vc6-stlport-re300m/regex_debug.obj vc6-stlport/vc6-stlport-re300m/regex_synch.obj vc6-stlport/vc6-stlport-re300m/w32_regex_traits.obj vc6-stlport/vc6-stlport-re300m/wide_posix_api.obj
link -lib /nologo /out:vc6-stlport/vc6-stlport-re300m.lib $(XSFLAGS) vc6-stlport/vc6-stlport-re300m/c_regex_traits.obj vc6-stlport/vc6-stlport-re300m/c_regex_traits_common.obj vc6-stlport/vc6-stlport-re300m/cpp_regex_traits.obj vc6-stlport/vc6-stlport-re300m/cregex.obj vc6-stlport/vc6-stlport-re300m/fileiter.obj vc6-stlport/vc6-stlport-re300m/posix_api.obj vc6-stlport/vc6-stlport-re300m/regex.obj vc6-stlport/vc6-stlport-re300m/regex_debug.obj vc6-stlport/vc6-stlport-re300m/regex_synch.obj vc6-stlport/vc6-stlport-re300m/w32_regex_traits.obj vc6-stlport/vc6-stlport-re300m/wide_posix_api.obj
@ -140,6 +146,7 @@ vc6-stlport-re300dm_clean :
del vc6-stlport\vc6-stlport-re300dm\*.obj
del vc6-stlport\vc6-stlport-re300dm\*.idb
del vc6-stlport\vc6-stlport-re300dm\*.exp
del vc6-stlport\vc6-stlport-re300dm\*.pch
./vc6-stlport/vc6-stlport-re300dm.lib : vc6-stlport/vc6-stlport-re300dm/c_regex_traits.obj vc6-stlport/vc6-stlport-re300dm/c_regex_traits_common.obj vc6-stlport/vc6-stlport-re300dm/cpp_regex_traits.obj vc6-stlport/vc6-stlport-re300dm/cregex.obj vc6-stlport/vc6-stlport-re300dm/fileiter.obj vc6-stlport/vc6-stlport-re300dm/posix_api.obj vc6-stlport/vc6-stlport-re300dm/regex.obj vc6-stlport/vc6-stlport-re300dm/regex_debug.obj vc6-stlport/vc6-stlport-re300dm/regex_synch.obj vc6-stlport/vc6-stlport-re300dm/w32_regex_traits.obj vc6-stlport/vc6-stlport-re300dm/wide_posix_api.obj
link -lib /nologo /out:vc6-stlport/vc6-stlport-re300dm.lib $(XSFLAGS) vc6-stlport/vc6-stlport-re300dm/c_regex_traits.obj vc6-stlport/vc6-stlport-re300dm/c_regex_traits_common.obj vc6-stlport/vc6-stlport-re300dm/cpp_regex_traits.obj vc6-stlport/vc6-stlport-re300dm/cregex.obj vc6-stlport/vc6-stlport-re300dm/fileiter.obj vc6-stlport/vc6-stlport-re300dm/posix_api.obj vc6-stlport/vc6-stlport-re300dm/regex.obj vc6-stlport/vc6-stlport-re300dm/regex_debug.obj vc6-stlport/vc6-stlport-re300dm/regex_synch.obj vc6-stlport/vc6-stlport-re300dm/w32_regex_traits.obj vc6-stlport/vc6-stlport-re300dm/wide_posix_api.obj
@ -189,6 +196,7 @@ vc6-stlport-re300dl_clean :
del vc6-stlport\vc6-stlport-re300dl\*.obj
del vc6-stlport\vc6-stlport-re300dl\*.idb
del vc6-stlport\vc6-stlport-re300dl\*.exp
del vc6-stlport\vc6-stlport-re300dl\*.pch
./vc6-stlport/vc6-stlport-re300dl.lib : vc6-stlport/vc6-stlport-re300dl/c_regex_traits.obj vc6-stlport/vc6-stlport-re300dl/c_regex_traits_common.obj vc6-stlport/vc6-stlport-re300dl/cpp_regex_traits.obj vc6-stlport/vc6-stlport-re300dl/cregex.obj vc6-stlport/vc6-stlport-re300dl/fileiter.obj vc6-stlport/vc6-stlport-re300dl/posix_api.obj vc6-stlport/vc6-stlport-re300dl/regex.obj vc6-stlport/vc6-stlport-re300dl/regex_debug.obj vc6-stlport/vc6-stlport-re300dl/regex_synch.obj vc6-stlport/vc6-stlport-re300dl/w32_regex_traits.obj vc6-stlport/vc6-stlport-re300dl/wide_posix_api.obj
link @<<
@ -240,9 +248,112 @@ vc6-stlport-re300l_clean :
del vc6-stlport\vc6-stlport-re300l\*.obj
del vc6-stlport\vc6-stlport-re300l\*.idb
del vc6-stlport\vc6-stlport-re300l\*.exp
del vc6-stlport\vc6-stlport-re300l\*.pch
./vc6-stlport/vc6-stlport-re300l.lib : vc6-stlport/vc6-stlport-re300l/c_regex_traits.obj vc6-stlport/vc6-stlport-re300l/c_regex_traits_common.obj vc6-stlport/vc6-stlport-re300l/cpp_regex_traits.obj vc6-stlport/vc6-stlport-re300l/cregex.obj vc6-stlport/vc6-stlport-re300l/fileiter.obj vc6-stlport/vc6-stlport-re300l/posix_api.obj vc6-stlport/vc6-stlport-re300l/regex.obj vc6-stlport/vc6-stlport-re300l/regex_debug.obj vc6-stlport/vc6-stlport-re300l/regex_synch.obj vc6-stlport/vc6-stlport-re300l/w32_regex_traits.obj vc6-stlport/vc6-stlport-re300l/wide_posix_api.obj
link @<<
kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /dll /incremental:yes /pdb:"vc6-stlport/vc6-stlport-re300l.pdb" /debug /machine:I386 /out:"vc6-stlport/vc6-stlport-re300l.dll" /implib:"vc6-stlport/vc6-stlport-re300l.lib" /pdbtype:sept $(XLFLAGS) vc6-stlport/vc6-stlport-re300l/c_regex_traits.obj vc6-stlport/vc6-stlport-re300l/c_regex_traits_common.obj vc6-stlport/vc6-stlport-re300l/cpp_regex_traits.obj vc6-stlport/vc6-stlport-re300l/cregex.obj vc6-stlport/vc6-stlport-re300l/fileiter.obj vc6-stlport/vc6-stlport-re300l/posix_api.obj vc6-stlport/vc6-stlport-re300l/regex.obj vc6-stlport/vc6-stlport-re300l/regex_debug.obj vc6-stlport/vc6-stlport-re300l/regex_synch.obj vc6-stlport/vc6-stlport-re300l/w32_regex_traits.obj vc6-stlport/vc6-stlport-re300l/wide_posix_api.obj
<<
########################################################
#
# section for vc6-stlport-re300ddl.lib
#
########################################################
vc6-stlport/vc6-stlport-re300ddl/c_regex_traits.obj: ../src/c_regex_traits.cpp $(ALL_HEADER)
cl /nologo /MDd /W3 /Gm /GX /Zi /Od /I../../../ /D__STL_DEBUG /D_DEBUG /DWIN32 /D_WINDOWS /D_MBCS /DUSRDLL /DBOOST_RE_DLL_EXPORTS /DBOOST_RE_BUILD_DLL /YX /FD /GZ /c $(XCFLAGS) -Fpvc6-stlport/vc6-stlport-re300ddl/vc6-stlport-re300ddl.pch -Fo./vc6-stlport/vc6-stlport-re300ddl/ -Fdvc6-stlport/vc6-stlport-re300ddl.pdb ../src/c_regex_traits.cpp
vc6-stlport/vc6-stlport-re300ddl/c_regex_traits_common.obj: ../src/c_regex_traits_common.cpp $(ALL_HEADER)
cl /nologo /MDd /W3 /Gm /GX /Zi /Od /I../../../ /D__STL_DEBUG /D_DEBUG /DWIN32 /D_WINDOWS /D_MBCS /DUSRDLL /DBOOST_RE_DLL_EXPORTS /DBOOST_RE_BUILD_DLL /YX /FD /GZ /c $(XCFLAGS) -Fpvc6-stlport/vc6-stlport-re300ddl/vc6-stlport-re300ddl.pch -Fo./vc6-stlport/vc6-stlport-re300ddl/ -Fdvc6-stlport/vc6-stlport-re300ddl.pdb ../src/c_regex_traits_common.cpp
vc6-stlport/vc6-stlport-re300ddl/cpp_regex_traits.obj: ../src/cpp_regex_traits.cpp $(ALL_HEADER)
cl /nologo /MDd /W3 /Gm /GX /Zi /Od /I../../../ /D__STL_DEBUG /D_DEBUG /DWIN32 /D_WINDOWS /D_MBCS /DUSRDLL /DBOOST_RE_DLL_EXPORTS /DBOOST_RE_BUILD_DLL /YX /FD /GZ /c $(XCFLAGS) -Fpvc6-stlport/vc6-stlport-re300ddl/vc6-stlport-re300ddl.pch -Fo./vc6-stlport/vc6-stlport-re300ddl/ -Fdvc6-stlport/vc6-stlport-re300ddl.pdb ../src/cpp_regex_traits.cpp
vc6-stlport/vc6-stlport-re300ddl/cregex.obj: ../src/cregex.cpp $(ALL_HEADER)
cl /nologo /MDd /W3 /Gm /GX /Zi /Od /I../../../ /D__STL_DEBUG /D_DEBUG /DWIN32 /D_WINDOWS /D_MBCS /DUSRDLL /DBOOST_RE_DLL_EXPORTS /DBOOST_RE_BUILD_DLL /YX /FD /GZ /c $(XCFLAGS) -Fpvc6-stlport/vc6-stlport-re300ddl/vc6-stlport-re300ddl.pch -Fo./vc6-stlport/vc6-stlport-re300ddl/ -Fdvc6-stlport/vc6-stlport-re300ddl.pdb ../src/cregex.cpp
vc6-stlport/vc6-stlport-re300ddl/fileiter.obj: ../src/fileiter.cpp $(ALL_HEADER)
cl /nologo /MDd /W3 /Gm /GX /Zi /Od /I../../../ /D__STL_DEBUG /D_DEBUG /DWIN32 /D_WINDOWS /D_MBCS /DUSRDLL /DBOOST_RE_DLL_EXPORTS /DBOOST_RE_BUILD_DLL /YX /FD /GZ /c $(XCFLAGS) -Fpvc6-stlport/vc6-stlport-re300ddl/vc6-stlport-re300ddl.pch -Fo./vc6-stlport/vc6-stlport-re300ddl/ -Fdvc6-stlport/vc6-stlport-re300ddl.pdb ../src/fileiter.cpp
vc6-stlport/vc6-stlport-re300ddl/posix_api.obj: ../src/posix_api.cpp $(ALL_HEADER)
cl /nologo /MDd /W3 /Gm /GX /Zi /Od /I../../../ /D__STL_DEBUG /D_DEBUG /DWIN32 /D_WINDOWS /D_MBCS /DUSRDLL /DBOOST_RE_DLL_EXPORTS /DBOOST_RE_BUILD_DLL /YX /FD /GZ /c $(XCFLAGS) -Fpvc6-stlport/vc6-stlport-re300ddl/vc6-stlport-re300ddl.pch -Fo./vc6-stlport/vc6-stlport-re300ddl/ -Fdvc6-stlport/vc6-stlport-re300ddl.pdb ../src/posix_api.cpp
vc6-stlport/vc6-stlport-re300ddl/regex.obj: ../src/regex.cpp $(ALL_HEADER)
cl /nologo /MDd /W3 /Gm /GX /Zi /Od /I../../../ /D__STL_DEBUG /D_DEBUG /DWIN32 /D_WINDOWS /D_MBCS /DUSRDLL /DBOOST_RE_DLL_EXPORTS /DBOOST_RE_BUILD_DLL /YX /FD /GZ /c $(XCFLAGS) -Fpvc6-stlport/vc6-stlport-re300ddl/vc6-stlport-re300ddl.pch -Fo./vc6-stlport/vc6-stlport-re300ddl/ -Fdvc6-stlport/vc6-stlport-re300ddl.pdb ../src/regex.cpp
vc6-stlport/vc6-stlport-re300ddl/regex_debug.obj: ../src/regex_debug.cpp $(ALL_HEADER)
cl /nologo /MDd /W3 /Gm /GX /Zi /Od /I../../../ /D__STL_DEBUG /D_DEBUG /DWIN32 /D_WINDOWS /D_MBCS /DUSRDLL /DBOOST_RE_DLL_EXPORTS /DBOOST_RE_BUILD_DLL /YX /FD /GZ /c $(XCFLAGS) -Fpvc6-stlport/vc6-stlport-re300ddl/vc6-stlport-re300ddl.pch -Fo./vc6-stlport/vc6-stlport-re300ddl/ -Fdvc6-stlport/vc6-stlport-re300ddl.pdb ../src/regex_debug.cpp
vc6-stlport/vc6-stlport-re300ddl/regex_synch.obj: ../src/regex_synch.cpp $(ALL_HEADER)
cl /nologo /MDd /W3 /Gm /GX /Zi /Od /I../../../ /D__STL_DEBUG /D_DEBUG /DWIN32 /D_WINDOWS /D_MBCS /DUSRDLL /DBOOST_RE_DLL_EXPORTS /DBOOST_RE_BUILD_DLL /YX /FD /GZ /c $(XCFLAGS) -Fpvc6-stlport/vc6-stlport-re300ddl/vc6-stlport-re300ddl.pch -Fo./vc6-stlport/vc6-stlport-re300ddl/ -Fdvc6-stlport/vc6-stlport-re300ddl.pdb ../src/regex_synch.cpp
vc6-stlport/vc6-stlport-re300ddl/w32_regex_traits.obj: ../src/w32_regex_traits.cpp $(ALL_HEADER)
cl /nologo /MDd /W3 /Gm /GX /Zi /Od /I../../../ /D__STL_DEBUG /D_DEBUG /DWIN32 /D_WINDOWS /D_MBCS /DUSRDLL /DBOOST_RE_DLL_EXPORTS /DBOOST_RE_BUILD_DLL /YX /FD /GZ /c $(XCFLAGS) -Fpvc6-stlport/vc6-stlport-re300ddl/vc6-stlport-re300ddl.pch -Fo./vc6-stlport/vc6-stlport-re300ddl/ -Fdvc6-stlport/vc6-stlport-re300ddl.pdb ../src/w32_regex_traits.cpp
vc6-stlport/vc6-stlport-re300ddl/wide_posix_api.obj: ../src/wide_posix_api.cpp $(ALL_HEADER)
cl /nologo /MDd /W3 /Gm /GX /Zi /Od /I../../../ /D__STL_DEBUG /D_DEBUG /DWIN32 /D_WINDOWS /D_MBCS /DUSRDLL /DBOOST_RE_DLL_EXPORTS /DBOOST_RE_BUILD_DLL /YX /FD /GZ /c $(XCFLAGS) -Fpvc6-stlport/vc6-stlport-re300ddl/vc6-stlport-re300ddl.pch -Fo./vc6-stlport/vc6-stlport-re300ddl/ -Fdvc6-stlport/vc6-stlport-re300ddl.pdb ../src/wide_posix_api.cpp
vc6-stlport-re300ddl_dir :
if not exist "vc6-stlport\vc6-stlport-re300ddl\$(NULL)" mkdir vc6-stlport\vc6-stlport-re300ddl
vc6-stlport-re300ddl_clean :
del vc6-stlport\vc6-stlport-re300ddl\*.obj
del vc6-stlport\vc6-stlport-re300ddl\*.idb
del vc6-stlport\vc6-stlport-re300ddl\*.exp
del vc6-stlport\vc6-stlport-re300ddl\*.pch
./vc6-stlport/vc6-stlport-re300ddl.lib : vc6-stlport/vc6-stlport-re300ddl/c_regex_traits.obj vc6-stlport/vc6-stlport-re300ddl/c_regex_traits_common.obj vc6-stlport/vc6-stlport-re300ddl/cpp_regex_traits.obj vc6-stlport/vc6-stlport-re300ddl/cregex.obj vc6-stlport/vc6-stlport-re300ddl/fileiter.obj vc6-stlport/vc6-stlport-re300ddl/posix_api.obj vc6-stlport/vc6-stlport-re300ddl/regex.obj vc6-stlport/vc6-stlport-re300ddl/regex_debug.obj vc6-stlport/vc6-stlport-re300ddl/regex_synch.obj vc6-stlport/vc6-stlport-re300ddl/w32_regex_traits.obj vc6-stlport/vc6-stlport-re300ddl/wide_posix_api.obj
link @<<
kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /dll /incremental:yes /pdb:"vc6-stlport/vc6-stlport-re300ddl.pdb" /debug /machine:I386 /out:"vc6-stlport/vc6-stlport-re300ddl.dll" /implib:"vc6-stlport/vc6-stlport-re300ddl.lib" /pdbtype:sept $(XLFLAGS) vc6-stlport/vc6-stlport-re300ddl/c_regex_traits.obj vc6-stlport/vc6-stlport-re300ddl/c_regex_traits_common.obj vc6-stlport/vc6-stlport-re300ddl/cpp_regex_traits.obj vc6-stlport/vc6-stlport-re300ddl/cregex.obj vc6-stlport/vc6-stlport-re300ddl/fileiter.obj vc6-stlport/vc6-stlport-re300ddl/posix_api.obj vc6-stlport/vc6-stlport-re300ddl/regex.obj vc6-stlport/vc6-stlport-re300ddl/regex_debug.obj vc6-stlport/vc6-stlport-re300ddl/regex_synch.obj vc6-stlport/vc6-stlport-re300ddl/w32_regex_traits.obj vc6-stlport/vc6-stlport-re300ddl/wide_posix_api.obj
<<
########################################################
#
# section for vc6-stlport-re300ddm.lib
#
########################################################
vc6-stlport/vc6-stlport-re300ddm/c_regex_traits.obj: ../src/c_regex_traits.cpp $(ALL_HEADER)
cl /nologo /MTd /W3 /Gm /GX /Zi /Od /I..\..\..\ /D__STL_DEBUG /DWIN32 /D_MT /D_DEBUG /D_MBCS /D_LIB /YX /FD /GZ /c $(XCFLAGS) -Fpvc6-stlport/vc6-stlport-re300ddm/vc6-stlport-re300ddm.pch -Fo./vc6-stlport/vc6-stlport-re300ddm/ -Fdvc6-stlport/vc6-stlport-re300ddm.pdb ../src/c_regex_traits.cpp
vc6-stlport/vc6-stlport-re300ddm/c_regex_traits_common.obj: ../src/c_regex_traits_common.cpp $(ALL_HEADER)
cl /nologo /MTd /W3 /Gm /GX /Zi /Od /I..\..\..\ /D__STL_DEBUG /DWIN32 /D_MT /D_DEBUG /D_MBCS /D_LIB /YX /FD /GZ /c $(XCFLAGS) -Fpvc6-stlport/vc6-stlport-re300ddm/vc6-stlport-re300ddm.pch -Fo./vc6-stlport/vc6-stlport-re300ddm/ -Fdvc6-stlport/vc6-stlport-re300ddm.pdb ../src/c_regex_traits_common.cpp
vc6-stlport/vc6-stlport-re300ddm/cpp_regex_traits.obj: ../src/cpp_regex_traits.cpp $(ALL_HEADER)
cl /nologo /MTd /W3 /Gm /GX /Zi /Od /I..\..\..\ /D__STL_DEBUG /DWIN32 /D_MT /D_DEBUG /D_MBCS /D_LIB /YX /FD /GZ /c $(XCFLAGS) -Fpvc6-stlport/vc6-stlport-re300ddm/vc6-stlport-re300ddm.pch -Fo./vc6-stlport/vc6-stlport-re300ddm/ -Fdvc6-stlport/vc6-stlport-re300ddm.pdb ../src/cpp_regex_traits.cpp
vc6-stlport/vc6-stlport-re300ddm/cregex.obj: ../src/cregex.cpp $(ALL_HEADER)
cl /nologo /MTd /W3 /Gm /GX /Zi /Od /I..\..\..\ /D__STL_DEBUG /DWIN32 /D_MT /D_DEBUG /D_MBCS /D_LIB /YX /FD /GZ /c $(XCFLAGS) -Fpvc6-stlport/vc6-stlport-re300ddm/vc6-stlport-re300ddm.pch -Fo./vc6-stlport/vc6-stlport-re300ddm/ -Fdvc6-stlport/vc6-stlport-re300ddm.pdb ../src/cregex.cpp
vc6-stlport/vc6-stlport-re300ddm/fileiter.obj: ../src/fileiter.cpp $(ALL_HEADER)
cl /nologo /MTd /W3 /Gm /GX /Zi /Od /I..\..\..\ /D__STL_DEBUG /DWIN32 /D_MT /D_DEBUG /D_MBCS /D_LIB /YX /FD /GZ /c $(XCFLAGS) -Fpvc6-stlport/vc6-stlport-re300ddm/vc6-stlport-re300ddm.pch -Fo./vc6-stlport/vc6-stlport-re300ddm/ -Fdvc6-stlport/vc6-stlport-re300ddm.pdb ../src/fileiter.cpp
vc6-stlport/vc6-stlport-re300ddm/posix_api.obj: ../src/posix_api.cpp $(ALL_HEADER)
cl /nologo /MTd /W3 /Gm /GX /Zi /Od /I..\..\..\ /D__STL_DEBUG /DWIN32 /D_MT /D_DEBUG /D_MBCS /D_LIB /YX /FD /GZ /c $(XCFLAGS) -Fpvc6-stlport/vc6-stlport-re300ddm/vc6-stlport-re300ddm.pch -Fo./vc6-stlport/vc6-stlport-re300ddm/ -Fdvc6-stlport/vc6-stlport-re300ddm.pdb ../src/posix_api.cpp
vc6-stlport/vc6-stlport-re300ddm/regex.obj: ../src/regex.cpp $(ALL_HEADER)
cl /nologo /MTd /W3 /Gm /GX /Zi /Od /I..\..\..\ /D__STL_DEBUG /DWIN32 /D_MT /D_DEBUG /D_MBCS /D_LIB /YX /FD /GZ /c $(XCFLAGS) -Fpvc6-stlport/vc6-stlport-re300ddm/vc6-stlport-re300ddm.pch -Fo./vc6-stlport/vc6-stlport-re300ddm/ -Fdvc6-stlport/vc6-stlport-re300ddm.pdb ../src/regex.cpp
vc6-stlport/vc6-stlport-re300ddm/regex_debug.obj: ../src/regex_debug.cpp $(ALL_HEADER)
cl /nologo /MTd /W3 /Gm /GX /Zi /Od /I..\..\..\ /D__STL_DEBUG /DWIN32 /D_MT /D_DEBUG /D_MBCS /D_LIB /YX /FD /GZ /c $(XCFLAGS) -Fpvc6-stlport/vc6-stlport-re300ddm/vc6-stlport-re300ddm.pch -Fo./vc6-stlport/vc6-stlport-re300ddm/ -Fdvc6-stlport/vc6-stlport-re300ddm.pdb ../src/regex_debug.cpp
vc6-stlport/vc6-stlport-re300ddm/regex_synch.obj: ../src/regex_synch.cpp $(ALL_HEADER)
cl /nologo /MTd /W3 /Gm /GX /Zi /Od /I..\..\..\ /D__STL_DEBUG /DWIN32 /D_MT /D_DEBUG /D_MBCS /D_LIB /YX /FD /GZ /c $(XCFLAGS) -Fpvc6-stlport/vc6-stlport-re300ddm/vc6-stlport-re300ddm.pch -Fo./vc6-stlport/vc6-stlport-re300ddm/ -Fdvc6-stlport/vc6-stlport-re300ddm.pdb ../src/regex_synch.cpp
vc6-stlport/vc6-stlport-re300ddm/w32_regex_traits.obj: ../src/w32_regex_traits.cpp $(ALL_HEADER)
cl /nologo /MTd /W3 /Gm /GX /Zi /Od /I..\..\..\ /D__STL_DEBUG /DWIN32 /D_MT /D_DEBUG /D_MBCS /D_LIB /YX /FD /GZ /c $(XCFLAGS) -Fpvc6-stlport/vc6-stlport-re300ddm/vc6-stlport-re300ddm.pch -Fo./vc6-stlport/vc6-stlport-re300ddm/ -Fdvc6-stlport/vc6-stlport-re300ddm.pdb ../src/w32_regex_traits.cpp
vc6-stlport/vc6-stlport-re300ddm/wide_posix_api.obj: ../src/wide_posix_api.cpp $(ALL_HEADER)
cl /nologo /MTd /W3 /Gm /GX /Zi /Od /I..\..\..\ /D__STL_DEBUG /DWIN32 /D_MT /D_DEBUG /D_MBCS /D_LIB /YX /FD /GZ /c $(XCFLAGS) -Fpvc6-stlport/vc6-stlport-re300ddm/vc6-stlport-re300ddm.pch -Fo./vc6-stlport/vc6-stlport-re300ddm/ -Fdvc6-stlport/vc6-stlport-re300ddm.pdb ../src/wide_posix_api.cpp
vc6-stlport-re300ddm_dir :
if not exist "vc6-stlport\vc6-stlport-re300ddm\$(NULL)" mkdir vc6-stlport\vc6-stlport-re300ddm
vc6-stlport-re300ddm_clean :
del vc6-stlport\vc6-stlport-re300ddm\*.obj
del vc6-stlport\vc6-stlport-re300ddm\*.idb
del vc6-stlport\vc6-stlport-re300ddm\*.exp
del vc6-stlport\vc6-stlport-re300ddm\*.pch
./vc6-stlport/vc6-stlport-re300ddm.lib : vc6-stlport/vc6-stlport-re300ddm/c_regex_traits.obj vc6-stlport/vc6-stlport-re300ddm/c_regex_traits_common.obj vc6-stlport/vc6-stlport-re300ddm/cpp_regex_traits.obj vc6-stlport/vc6-stlport-re300ddm/cregex.obj vc6-stlport/vc6-stlport-re300ddm/fileiter.obj vc6-stlport/vc6-stlport-re300ddm/posix_api.obj vc6-stlport/vc6-stlport-re300ddm/regex.obj vc6-stlport/vc6-stlport-re300ddm/regex_debug.obj vc6-stlport/vc6-stlport-re300ddm/regex_synch.obj vc6-stlport/vc6-stlport-re300ddm/w32_regex_traits.obj vc6-stlport/vc6-stlport-re300ddm/wide_posix_api.obj
link -lib /nologo /out:vc6-stlport/vc6-stlport-re300ddm.lib $(XSFLAGS) vc6-stlport/vc6-stlport-re300ddm/c_regex_traits.obj vc6-stlport/vc6-stlport-re300ddm/c_regex_traits_common.obj vc6-stlport/vc6-stlport-re300ddm/cpp_regex_traits.obj vc6-stlport/vc6-stlport-re300ddm/cregex.obj vc6-stlport/vc6-stlport-re300ddm/fileiter.obj vc6-stlport/vc6-stlport-re300ddm/posix_api.obj vc6-stlport/vc6-stlport-re300ddm/regex.obj vc6-stlport/vc6-stlport-re300ddm/regex_debug.obj vc6-stlport/vc6-stlport-re300ddm/regex_synch.obj vc6-stlport/vc6-stlport-re300ddm/w32_regex_traits.obj vc6-stlport/vc6-stlport-re300ddm/wide_posix_api.obj

View File

@ -96,6 +96,7 @@ vc6-re300_clean :
del vc6\vc6-re300\*.obj
del vc6\vc6-re300\*.idb
del vc6\vc6-re300\*.exp
del vc6\vc6-re300\*.pch
./vc6/vc6-re300.lib : vc6/vc6-re300/c_regex_traits.obj vc6/vc6-re300/c_regex_traits_common.obj vc6/vc6-re300/cpp_regex_traits.obj vc6/vc6-re300/cregex.obj vc6/vc6-re300/fileiter.obj vc6/vc6-re300/posix_api.obj vc6/vc6-re300/regex.obj vc6/vc6-re300/regex_debug.obj vc6/vc6-re300/regex_synch.obj vc6/vc6-re300/w32_regex_traits.obj vc6/vc6-re300/wide_posix_api.obj
link -lib /nologo /out:vc6/vc6-re300.lib $(XSFLAGS) vc6/vc6-re300/c_regex_traits.obj vc6/vc6-re300/c_regex_traits_common.obj vc6/vc6-re300/cpp_regex_traits.obj vc6/vc6-re300/cregex.obj vc6/vc6-re300/fileiter.obj vc6/vc6-re300/posix_api.obj vc6/vc6-re300/regex.obj vc6/vc6-re300/regex_debug.obj vc6/vc6-re300/regex_synch.obj vc6/vc6-re300/w32_regex_traits.obj vc6/vc6-re300/wide_posix_api.obj
@ -145,6 +146,7 @@ vc6-re300m_clean :
del vc6\vc6-re300m\*.obj
del vc6\vc6-re300m\*.idb
del vc6\vc6-re300m\*.exp
del vc6\vc6-re300m\*.pch
./vc6/vc6-re300m.lib : vc6/vc6-re300m/c_regex_traits.obj vc6/vc6-re300m/c_regex_traits_common.obj vc6/vc6-re300m/cpp_regex_traits.obj vc6/vc6-re300m/cregex.obj vc6/vc6-re300m/fileiter.obj vc6/vc6-re300m/posix_api.obj vc6/vc6-re300m/regex.obj vc6/vc6-re300m/regex_debug.obj vc6/vc6-re300m/regex_synch.obj vc6/vc6-re300m/w32_regex_traits.obj vc6/vc6-re300m/wide_posix_api.obj
link -lib /nologo /out:vc6/vc6-re300m.lib $(XSFLAGS) vc6/vc6-re300m/c_regex_traits.obj vc6/vc6-re300m/c_regex_traits_common.obj vc6/vc6-re300m/cpp_regex_traits.obj vc6/vc6-re300m/cregex.obj vc6/vc6-re300m/fileiter.obj vc6/vc6-re300m/posix_api.obj vc6/vc6-re300m/regex.obj vc6/vc6-re300m/regex_debug.obj vc6/vc6-re300m/regex_synch.obj vc6/vc6-re300m/w32_regex_traits.obj vc6/vc6-re300m/wide_posix_api.obj
@ -194,6 +196,7 @@ vc6-re300d_clean :
del vc6\vc6-re300d\*.obj
del vc6\vc6-re300d\*.idb
del vc6\vc6-re300d\*.exp
del vc6\vc6-re300d\*.pch
./vc6/vc6-re300d.lib : vc6/vc6-re300d/c_regex_traits.obj vc6/vc6-re300d/c_regex_traits_common.obj vc6/vc6-re300d/cpp_regex_traits.obj vc6/vc6-re300d/cregex.obj vc6/vc6-re300d/fileiter.obj vc6/vc6-re300d/posix_api.obj vc6/vc6-re300d/regex.obj vc6/vc6-re300d/regex_debug.obj vc6/vc6-re300d/regex_synch.obj vc6/vc6-re300d/w32_regex_traits.obj vc6/vc6-re300d/wide_posix_api.obj
link -lib /nologo /out:vc6/vc6-re300d.lib $(XSFLAGS) vc6/vc6-re300d/c_regex_traits.obj vc6/vc6-re300d/c_regex_traits_common.obj vc6/vc6-re300d/cpp_regex_traits.obj vc6/vc6-re300d/cregex.obj vc6/vc6-re300d/fileiter.obj vc6/vc6-re300d/posix_api.obj vc6/vc6-re300d/regex.obj vc6/vc6-re300d/regex_debug.obj vc6/vc6-re300d/regex_synch.obj vc6/vc6-re300d/w32_regex_traits.obj vc6/vc6-re300d/wide_posix_api.obj
@ -243,6 +246,7 @@ vc6-re300dm_clean :
del vc6\vc6-re300dm\*.obj
del vc6\vc6-re300dm\*.idb
del vc6\vc6-re300dm\*.exp
del vc6\vc6-re300dm\*.pch
./vc6/vc6-re300dm.lib : vc6/vc6-re300dm/c_regex_traits.obj vc6/vc6-re300dm/c_regex_traits_common.obj vc6/vc6-re300dm/cpp_regex_traits.obj vc6/vc6-re300dm/cregex.obj vc6/vc6-re300dm/fileiter.obj vc6/vc6-re300dm/posix_api.obj vc6/vc6-re300dm/regex.obj vc6/vc6-re300dm/regex_debug.obj vc6/vc6-re300dm/regex_synch.obj vc6/vc6-re300dm/w32_regex_traits.obj vc6/vc6-re300dm/wide_posix_api.obj
link -lib /nologo /out:vc6/vc6-re300dm.lib $(XSFLAGS) vc6/vc6-re300dm/c_regex_traits.obj vc6/vc6-re300dm/c_regex_traits_common.obj vc6/vc6-re300dm/cpp_regex_traits.obj vc6/vc6-re300dm/cregex.obj vc6/vc6-re300dm/fileiter.obj vc6/vc6-re300dm/posix_api.obj vc6/vc6-re300dm/regex.obj vc6/vc6-re300dm/regex_debug.obj vc6/vc6-re300dm/regex_synch.obj vc6/vc6-re300dm/w32_regex_traits.obj vc6/vc6-re300dm/wide_posix_api.obj
@ -292,6 +296,7 @@ vc6-re300dl_clean :
del vc6\vc6-re300dl\*.obj
del vc6\vc6-re300dl\*.idb
del vc6\vc6-re300dl\*.exp
del vc6\vc6-re300dl\*.pch
./vc6/vc6-re300dl.lib : vc6/vc6-re300dl/c_regex_traits.obj vc6/vc6-re300dl/c_regex_traits_common.obj vc6/vc6-re300dl/cpp_regex_traits.obj vc6/vc6-re300dl/cregex.obj vc6/vc6-re300dl/fileiter.obj vc6/vc6-re300dl/posix_api.obj vc6/vc6-re300dl/regex.obj vc6/vc6-re300dl/regex_debug.obj vc6/vc6-re300dl/regex_synch.obj vc6/vc6-re300dl/w32_regex_traits.obj vc6/vc6-re300dl/wide_posix_api.obj
link @<<
@ -343,6 +348,7 @@ vc6-re300l_clean :
del vc6\vc6-re300l\*.obj
del vc6\vc6-re300l\*.idb
del vc6\vc6-re300l\*.exp
del vc6\vc6-re300l\*.pch
./vc6/vc6-re300l.lib : vc6/vc6-re300l/c_regex_traits.obj vc6/vc6-re300l/c_regex_traits_common.obj vc6/vc6-re300l/cpp_regex_traits.obj vc6/vc6-re300l/cregex.obj vc6/vc6-re300l/fileiter.obj vc6/vc6-re300l/posix_api.obj vc6/vc6-re300l/regex.obj vc6/vc6-re300l/regex_debug.obj vc6/vc6-re300l/regex_synch.obj vc6/vc6-re300l/w32_regex_traits.obj vc6/vc6-re300l/wide_posix_api.obj
link @<<

View File

@ -61,6 +61,7 @@ EOF
echo " del $subdir\\$libname\\"'*.obj' >> $tout
echo " del $subdir\\$libname\\"'*.idb' >> $tout
echo " del $subdir\\$libname\\"'*.exp' >> $tout
echo " del $subdir\\$libname\\"'*.pch' >> $tout
echo "" >> $tout
#
# now for the main target for this library:
@ -110,6 +111,7 @@ EOF
echo " del $subdir\\$libname\\"'*.obj' >> $tout
echo " del $subdir\\$libname\\"'*.idb' >> $tout
echo " del $subdir\\$libname\\"'*.exp' >> $tout
echo " del $subdir\\$libname\\"'*.pch' >> $tout
echo "" >> $tout
#
# now for the main target for this library:
@ -168,6 +170,17 @@ function vc6_gen()
libname="$prefix""re300l"
vc6_gen_dll
if test "$is_stlport" == yes; then
# debug STLPort mode:
debug="yes"
opts="/nologo /MDd /W3 /Gm /GX /Zi /Od /I../../../ /D__STL_DEBUG /D_DEBUG /DWIN32 /D_WINDOWS /D_MBCS /DUSRDLL /DBOOST_RE_DLL_EXPORTS /DBOOST_RE_BUILD_DLL /YX /FD /GZ /c"
libname="$prefix""re300ddl"
vc6_gen_dll
libname="$prefix""re300ddm"
opts="/nologo /MTd /W3 /Gm /GX /Zi /Od /I..\..\..\ /D__STL_DEBUG /DWIN32 /D_MT /D_DEBUG /D_MBCS /D_LIB /YX /FD /GZ /c"
vc6_gen_lib
fi
cat > $out << EOF
#
# auto generated makefile for VC6 compiler
@ -690,3 +703,5 @@ rm -f $tout $iout

View File

@ -20,7 +20,7 @@
<H3> Regex++, POSIX API Reference.</H3>
</CENTER>
<CENTER>
<I>(version 3.02, 18 April 2000)</I>
<I>(version 3.03, 18 April 2000)</I>
</CENTER>
<PRE><I>Copyright (c) 1998-2000
Dr John Maddock

View File

@ -16,7 +16,7 @@
/*
* LOCATION: see http://www.boost.org for most recent version.
* FILE c_regex_traits.cpp
* VERSION 3.02
* VERSION 3.03
* DESCRIPTION: Implements the c_regex_traits<charT> traits class
*/

View File

@ -16,7 +16,7 @@
/*
* LOCATION: see http://www.boost.org for most recent version.
* FILE: c_regex_traits_common.cpp
* VERSION: 3.02
* VERSION: 3.03
* DESCRIPTION: Implements common code and data for the
* c_regex_traits<charT> traits classes.
*/

View File

@ -16,7 +16,7 @@
/*
* LOCATION: see http://www.boost.org for most recent version.
* FILE: c_regex_traits.cpp
* VERSION: 3.02
* VERSION: 3.03
* DESCRIPTION: Implements the cpp_regex_traits<charT> traits class
*/
#include <clocale>

View File

@ -16,7 +16,7 @@
/*
* LOCATION: see http://www.boost.org for most recent version.
* FILE: cregex.cpp
* VERSION: 3.02
* VERSION: 3.03
* DESCRIPTION: Implements high level class boost::RexEx
*/
#include <boost/cregex.hpp>

View File

@ -16,7 +16,7 @@
/*
* LOCATION: see http://www.boost.org for most recent version.
* FILE: fileiter.cpp
* VERSION: 3.02
* VERSION: 3.03
* DESCRIPTION: Implements file io primitives + directory searching for class boost::RegEx.
*/

View File

@ -16,7 +16,7 @@
/*
* LOCATION: see http://www.boost.org for most recent version.
* FILE: posix_api.cpp
* VERSION: 3.02
* VERSION: 3.03
* DESCRIPTION: Implements the Posix API wrappers.
*/
@ -45,7 +45,6 @@ BOOST_RE_IX_DECL int BOOST_RE_CCALL regcompA(regex_tA* expression, const char* p
expression->guts = new regex();
} catch(...)
{
delete (regex*)(expression->guts);
return REG_ESPACE;
}
}

View File

@ -16,7 +16,7 @@
/*
* LOCATION: see http://www.boost.org for most recent version.
* FILE: primary_transform.hpp
* VERSION: 3.02
* VERSION: 3.03
* DESCRIPTION: Heuristically determines the sort string format in use
* by the current locale.
*/
@ -36,7 +36,7 @@ template <class S, class charT>
unsigned count_chars(const S& s, charT c)
{
unsigned int count = 0;
for(unsigned pos = 0; pos <= s.size(); ++pos)
for(unsigned pos = 0; pos < s.size(); ++pos)
{
if(s[pos] == c) ++count;
}
@ -116,3 +116,4 @@ unsigned find_sort_syntax(const traits* pt, charT* delim)

View File

@ -16,7 +16,7 @@
/*
* LOCATION: see http://www.boost.org for most recent version.
* FILE: regex.cpp
* VERSION: 3.02
* VERSION: 3.03
* DESCRIPTION: Misc boost::regbase member funnctions.
*/

View File

@ -16,7 +16,7 @@
/*
* LOCATION: see http://www.boost.org for most recent version.
* FILE: regex_debug.cpp
* VERSION: 3.02
* VERSION: 3.03
* DESCRIPTION: Misc. debugging helpers.
*/

View File

@ -16,7 +16,7 @@
/*
* LOCATION: see http://www.boost.org for most recent version.
* FILE: regex_synch.cpp
* VERSION: 3.02
* VERSION: 3.03
* DESCRIPTION: Thread synch helper functions, for regular
* expression library.
*/

View File

@ -16,7 +16,7 @@
/*
* LOCATION: see http://www.boost.org for most recent version.
* FILE: w32_regex_traits.cpp
* VERSION: 3.02
* VERSION: 3.03
* DESCRIPTION: Implements the w32_regex_traits<charT> traits class
*/

View File

@ -16,7 +16,7 @@
/*
* LOCATION: see http://www.boost.org for most recent version.
* FILE: wide_posix_api.cpp
* VERSION: 3.02
* VERSION: 3.03
* DESCRIPTION: Implements the wide character POSIX API wrappers.
*/
@ -55,7 +55,6 @@ BOOST_RE_IX_DECL int BOOST_RE_CCALL regcompW(regex_tW* expression, const wchar_t
expression->guts = new wregex();
} catch(...)
{
delete (wregex*)(expression->guts);
return REG_ESPACE;
}
}

View File

@ -20,7 +20,7 @@
<H3> Regex++, Regular Expression Syntax.</H3>
</CENTER>
<CENTER>
<I>(version 3.02, 18 April 2000)</I>
<I>(version 3.03, 18 April 2000)</I>
</CENTER>
<PRE><I>Copyright (c) 1998-2000
Dr John Maddock

View File

@ -21,7 +21,7 @@ content="C:\PROGRAM FILES\MICROSOFT OFFICE\OFFICE\html.dot">
</td>
<td valign="top" width="50%"><h2 align="center">Regex++,
Template Class and Algorithm Reference.</h2>
<p><i>(version 3.02, 18 April 2000)</i> </p>
<p><i>(version 3.03, 18 April 2000)</i> </p>
<pre><i>Copyright (c) 1998-9
Dr John Maddock

View File

@ -19,7 +19,7 @@
HEIGHT="86" ALT="C++ Boost"> </H3>
</TD>
<TD VALIGN="top" WIDTH="50%"><H3 ALIGN="center">Regex++, Traits Class
Reference. <I>(version 3.02, 18 April 2000)</I>&nbsp; </H3>
Reference. <I>(version 3.03, 18 April 2000)</I>&nbsp; </H3>
<PRE>
<I>Copyright (c) 1998-2000
Dr John Maddock