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

Subversion Repositories scarts

[/] [scarts/] [trunk/] [toolchain/] [scarts-gcc/] [gcc-4.1.1/] [libstdc++-v3/] [testsuite/] [23_containers/] [vector/] [resize/] [1.cc] - Blame information for rev 19

Details | Compare with Previous | View Log

Line No. Rev Author Line
1 19 jlechner
// 1999-05-07
2
// bkoz 
3
 
4
// Copyright (C) 1999, 2002, 2004, 2005 Free Software Foundation, Inc.
5
//
6
// This file is part of the GNU ISO C++ Library.  This library is free
7
// software; you can redistribute it and/or modify it under the
8
// terms of the GNU General Public License as published by the
9
// Free Software Foundation; either version 2, or (at your option)
10
// any later version.
11
 
12
// This library is distributed in the hope that it will be useful,
13
// but WITHOUT ANY WARRANTY; without even the implied warranty of
14
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
15
// GNU General Public License for more details.
16
 
17
// You should have received a copy of the GNU General Public License along
18
// with this library; see the file COPYING.  If not, write to the Free
19
// Software Foundation, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301,
20
// USA.
21
 
22
// 23.2.4.2 vector capacity
23
 
24
// XXX This test will not work for irix6 because of bug(s) in libc malloc
25
// XXX for very large allocations.  However -lmalloc seems to work.
26
// See http://gcc.gnu.org/ml/libstdc++/2002-12/msg00131.html
27
// { dg-options "-lmalloc" { target mips*-*-irix6* } }
28
// This fails on Darwin 8 because malloc doesn't return NULL even
29
// if an allocation fails (filed as Radar 3884894).
30
// { dg-do run { xfail *-*-darwin8* } }
31
 
32
#include <vector>
33
#include <stdexcept>
34
#include <testsuite_hooks.h>
35
 
36
void test01()
37
{
38
  bool test __attribute__((unused)) = true;
39
  std::vector<int> v;
40
  try
41
    {
42
      v.resize(v.max_size());
43
      v[v.max_size() - 1] = 2002;
44
    }
45
  catch (const std::bad_alloc& error)
46
    {
47
      test = true;
48
    }
49
  catch (...)
50
    {
51
      test = false;
52
    }
53
  VERIFY( test );
54
}
55
 
56
int main()
57
{
58
  test01();
59
  return 0;
60
}

powered by: WebSVN 2.1.0

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