OpenCores
URL https://opencores.org/ocsvn/openrisc/openrisc/trunk

Subversion Repositories openrisc

[/] [openrisc/] [trunk/] [gnu-dev/] [or1k-gcc/] [libstdc++-v3/] [testsuite/] [28_regex/] [algorithms/] [02_match/] [basic/] [string_range_02_03.cc] - Blame information for rev 749

Go to most recent revision | Details | Compare with Previous | View Log

Line No. Rev Author Line
1 742 jeremybenn
// { dg-options "-std=c++0x" }
2
// { dg-do run { xfail *-*-* } }
3
 
4
//
5
// 2010-06-16  Stephen M. Webb <stephen.webb@bregmasoft.ca>
6
//
7
// Copyright (C) 2010 Free Software Foundation, Inc.
8
//
9
// This file is part of the GNU ISO C++ Library.  This library is free
10
// software; you can redistribute it and/or modify it under the
11
// terms of the GNU General Public License as published by the
12
// Free Software Foundation; either version 3, or (at your option)
13
// any later version.
14
//
15
// This library is distributed in the hope that it will be useful,
16
// but WITHOUT ANY WARRANTY; without even the implied warranty of
17
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
18
// GNU General Public License for more details.
19
//
20
// You should have received a copy of the GNU General Public License along
21
// with this library; see the file COPYING3.  If not see
22
// <http://www.gnu.org/licenses/>.
23
 
24
// 28.11.2 regex_match
25
// Tests BRE against a std::string target, exercising range {2,3}
26
 
27
#include <regex>
28
#include <testsuite_hooks.h>
29
 
30
void
31
test01()
32
{
33
  bool test __attribute__((unused)) = true;
34
 
35
        std::regex  re("a\\{2,3\\}", std::regex::basic);
36
        std::string target("aa");
37
        std::smatch m;
38
 
39
        VERIFY( std::regex_match(target, m, re) );
40
 
41
        VERIFY( m.size()  == re.mark_count()+1 );
42
        VERIFY( m.empty() == false );
43
        VERIFY( m.prefix().first == target.begin() );
44
        VERIFY( m.prefix().second == target.begin() );
45
        VERIFY( m.prefix().matched == false );
46
        VERIFY( m.suffix().first == target.end() );
47
        VERIFY( m.suffix().second == target.end() );
48
        VERIFY( m.suffix().matched == false );
49
        VERIFY( m[0].first == target.begin() );
50
        VERIFY( m[0].second == target.end() );
51
        VERIFY( m[0].matched == true );
52
}
53
 
54
 
55
int
56
main()
57
{
58
  test01();
59
  return 0;
60
}
61
 

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.