Source-Changes-HG archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

[src/trunk]: src/external/bsd/libc++/dist/libcxx Import libc++ r188413. More ...



details:   https://anonhg.NetBSD.org/src/rev/be5c0dbedef6
branches:  trunk
changeset: 789348:be5c0dbedef6
user:      joerg <joerg%NetBSD.org@localhost>
date:      Thu Aug 15 22:38:19 2013 +0000

description:
Import libc++ r188413. More support for current C++ development and
various bugfixes.

diffstat:

 external/bsd/libc++/dist/libcxx/CREDITS.TXT                                                                                       |  12 +
 external/bsd/libc++/dist/libcxx/test/algorithms/alg.modifying.operations/alg.fill/fill_n.pass.cpp                                 |  94 ++++++++++
 external/bsd/libc++/dist/libcxx/test/algorithms/alg.nonmodifying/alg.equal/equal.pass.cpp                                         |   2 +-
 external/bsd/libc++/dist/libcxx/test/algorithms/alg.nonmodifying/alg.equal/equal_pred.pass.cpp                                    |   8 +-
 external/bsd/libc++/dist/libcxx/test/algorithms/alg.nonmodifying/alg.is_permutation/is_permutation.pass.cpp                       |   2 +-
 external/bsd/libc++/dist/libcxx/test/lit.cfg                                                                                      |  39 ++-
 external/bsd/libc++/dist/libcxx/test/lit.site.cfg.in                                                                              |   2 +-
 external/bsd/libc++/dist/libcxx/test/localization/locales/locale.convenience/conversions/conversions.buffer/pbackfail.pass.cpp    |   4 +-
 external/bsd/libc++/dist/libcxx/test/localization/locales/locale.convenience/conversions/conversions.buffer/underflow.pass.cpp    |   2 +-
 external/bsd/libc++/dist/libcxx/test/numerics/complex.number/cmplx.over/imag.pass.cpp                                             |  30 ++-
 external/bsd/libc++/dist/libcxx/test/numerics/complex.number/cmplx.over/real.pass.cpp                                             |  30 ++-
 external/bsd/libc++/dist/libcxx/test/numerics/complex.number/complex.member.ops/divide_equal_complex.pass.cpp                     |  15 +
 external/bsd/libc++/dist/libcxx/test/numerics/complex.number/complex.member.ops/minus_equal_complex.pass.cpp                      |  14 +
 external/bsd/libc++/dist/libcxx/test/numerics/complex.number/complex.member.ops/plus_equal_complex.pass.cpp                       |  14 +
 external/bsd/libc++/dist/libcxx/test/numerics/complex.number/complex.member.ops/times_equal_complex.pass.cpp                      |  14 +
 external/bsd/libc++/dist/libcxx/test/numerics/complex.number/complex.members/real_imag.pass.cpp                                   |  20 ++
 external/bsd/libc++/dist/libcxx/test/numerics/complex.number/complex.ops/complex_equals_complex.pass.cpp                          |  21 +-
 external/bsd/libc++/dist/libcxx/test/numerics/complex.number/complex.ops/complex_equals_scalar.pass.cpp                           |  40 +++-
 external/bsd/libc++/dist/libcxx/test/numerics/complex.number/complex.ops/complex_not_equals_complex.pass.cpp                      |  25 ++-
 external/bsd/libc++/dist/libcxx/test/numerics/complex.number/complex.ops/complex_not_equals_scalar.pass.cpp                       |  38 +++-
 external/bsd/libc++/dist/libcxx/test/numerics/complex.number/complex.ops/scalar_equals_complex.pass.cpp                           |  36 +++-
 external/bsd/libc++/dist/libcxx/test/numerics/complex.number/complex.ops/scalar_not_equals_complex.pass.cpp                       |  38 +++-
 external/bsd/libc++/dist/libcxx/test/support/platform_support.h                                                                   |   2 +-
 external/bsd/libc++/dist/libcxx/test/support/private_constructor.hpp                                                              |  22 ++
 external/bsd/libc++/dist/libcxx/test/support/test_iterators.h                                                                     |   2 +-
 external/bsd/libc++/dist/libcxx/test/utilities/function.objects/arithmetic.operations/divides.pass.cpp                            |   7 +
 external/bsd/libc++/dist/libcxx/test/utilities/function.objects/arithmetic.operations/minus.pass.cpp                              |   7 +
 external/bsd/libc++/dist/libcxx/test/utilities/function.objects/arithmetic.operations/modulus.pass.cpp                            |   7 +
 external/bsd/libc++/dist/libcxx/test/utilities/function.objects/arithmetic.operations/multiplies.pass.cpp                         |   7 +
 external/bsd/libc++/dist/libcxx/test/utilities/function.objects/arithmetic.operations/negate.pass.cpp                             |   7 +
 external/bsd/libc++/dist/libcxx/test/utilities/function.objects/arithmetic.operations/plus.pass.cpp                               |   7 +
 external/bsd/libc++/dist/libcxx/test/utilities/function.objects/arithmetic.operations/transparent.pass.cpp                        |  52 +++++
 external/bsd/libc++/dist/libcxx/test/utilities/function.objects/bitwise.operations/bit_and.pass.cpp                               |  23 ++
 external/bsd/libc++/dist/libcxx/test/utilities/function.objects/bitwise.operations/bit_not.pass.cpp                               |  40 ++++
 external/bsd/libc++/dist/libcxx/test/utilities/function.objects/bitwise.operations/bit_or.pass.cpp                                |  23 ++
 external/bsd/libc++/dist/libcxx/test/utilities/function.objects/bitwise.operations/bit_xor.pass.cpp                               |  23 ++
 external/bsd/libc++/dist/libcxx/test/utilities/function.objects/bitwise.operations/transparent.pass.cpp                           |  42 ++++
 external/bsd/libc++/dist/libcxx/test/utilities/function.objects/comparisons/equal_to.pass.cpp                                     |   8 +
 external/bsd/libc++/dist/libcxx/test/utilities/function.objects/comparisons/greater.pass.cpp                                      |  11 +
 external/bsd/libc++/dist/libcxx/test/utilities/function.objects/comparisons/greater_equal.pass.cpp                                |  11 +
 external/bsd/libc++/dist/libcxx/test/utilities/function.objects/comparisons/less.pass.cpp                                         |  11 +
 external/bsd/libc++/dist/libcxx/test/utilities/function.objects/comparisons/less_equal.pass.cpp                                   |  11 +
 external/bsd/libc++/dist/libcxx/test/utilities/function.objects/comparisons/not_equal_to.pass.cpp                                 |  10 +
 external/bsd/libc++/dist/libcxx/test/utilities/function.objects/comparisons/transparent.pass.cpp                                  |  52 +++++
 external/bsd/libc++/dist/libcxx/test/utilities/function.objects/func.wrap/func.wrap.func/func.wrap.func.con/F_incomplete.pass.cpp |   6 +-
 external/bsd/libc++/dist/libcxx/test/utilities/function.objects/logical.operations/logical_and.pass.cpp                           |  15 +
 external/bsd/libc++/dist/libcxx/test/utilities/function.objects/logical.operations/logical_not.pass.cpp                           |   8 +
 external/bsd/libc++/dist/libcxx/test/utilities/function.objects/logical.operations/logical_or.pass.cpp                            |  14 +
 external/bsd/libc++/dist/libcxx/test/utilities/function.objects/logical.operations/transparent.pass.cpp                           |  37 +++
 external/bsd/libc++/dist/libcxx/test/utilities/meta/meta.hel/integral_constant.pass.cpp                                           |   5 +
 external/bsd/libc++/dist/libcxx/test/utilities/meta/meta.rel/is_convertible.pass.cpp                                              |  14 +-
 external/bsd/libc++/dist/libcxx/test/utilities/meta/meta.trans/meta.trans.sign/make_signed.pass.cpp                               |   4 +-
 external/bsd/libc++/dist/libcxx/test/utilities/meta/meta.trans/meta.trans.sign/make_unsigned.pass.cpp                             |   4 +-
 external/bsd/libc++/dist/libcxx/test/utilities/meta/meta.unary.prop.query/alignment_of.pass.cpp                                   |   5 +-
 external/bsd/libc++/dist/libcxx/test/utilities/meta/meta.unary/meta.unary.prop/is_destructible.pass.cpp                           |   2 +
 external/bsd/libc++/dist/libcxx/test/utilities/time/time.duration/time.duration.cons/default.pass.cpp                             |   2 +-
 external/bsd/libc++/dist/libcxx/test/utilities/time/time.duration/time.duration.literals/literals.pass.cpp                        |  59 ++++++
 external/bsd/libc++/dist/libcxx/test/utilities/time/time.point/time.point.cast/time_point_cast.pass.cpp                           |  28 ++
 external/bsd/libc++/dist/libcxx/test/utilities/time/time.point/time.point.comparisons/op_equal.pass.cpp                           |  27 ++
 external/bsd/libc++/dist/libcxx/test/utilities/time/time.point/time.point.comparisons/op_less.pass.cpp                            |  35 +++
 external/bsd/libc++/dist/libcxx/test/utilities/time/time.point/time.point.cons/convert.pass.cpp                                   |   7 +
 external/bsd/libc++/dist/libcxx/test/utilities/time/time.point/time.point.cons/default.pass.cpp                                   |   8 +
 external/bsd/libc++/dist/libcxx/test/utilities/time/time.point/time.point.cons/duration.pass.cpp                                  |  10 +
 external/bsd/libc++/dist/libcxx/test/utilities/time/time.point/time.point.nonmember/op_+.pass.cpp                                 |  11 +
 external/bsd/libc++/dist/libcxx/test/utilities/time/time.point/time.point.nonmember/op_-duration.pass.cpp                         |   9 +
 external/bsd/libc++/dist/libcxx/test/utilities/time/time.point/time.point.nonmember/op_-time_point.pass.cpp                       |   9 +
 external/bsd/libc++/dist/libcxx/test/utilities/tuple/tuple.tuple/tuple.cnstr/UTypes.pass.cpp                                      |  20 ++
 external/bsd/libc++/dist/libcxx/test/utilities/tuple/tuple.tuple/tuple.cnstr/const_Types.pass.cpp                                 |  17 +
 external/bsd/libc++/dist/libcxx/test/utilities/tuple/tuple.tuple/tuple.cnstr/const_pair.pass.cpp                                  |  12 +
 external/bsd/libc++/dist/libcxx/test/utilities/tuple/tuple.tuple/tuple.cnstr/convert_copy.pass.cpp                                |  36 +++
 external/bsd/libc++/dist/libcxx/test/utilities/tuple/tuple.tuple/tuple.cnstr/copy.pass.cpp                                        |  15 +
 external/bsd/libc++/dist/libcxx/test/utilities/tuple/tuple.tuple/tuple.creation/make_tuple.pass.cpp                               |   9 +
 external/bsd/libc++/dist/libcxx/test/utilities/tuple/tuple.tuple/tuple.creation/tuple_cat.pass.cpp                                |  28 ++-
 external/bsd/libc++/dist/libcxx/test/utilities/tuple/tuple.tuple/tuple.elem/get_const.pass.cpp                                    |  15 +
 external/bsd/libc++/dist/libcxx/test/utilities/tuple/tuple.tuple/tuple.elem/get_non_const.pass.cpp                                |  25 ++
 external/bsd/libc++/dist/libcxx/test/utilities/tuple/tuple.tuple/tuple.elem/tuple.by.type.pass.cpp                                |  58 ++++++
 external/bsd/libc++/dist/libcxx/test/utilities/tuple/tuple.tuple/tuple.elem/tuple.by.type1.fail.cpp                               |  25 ++
 external/bsd/libc++/dist/libcxx/test/utilities/tuple/tuple.tuple/tuple.elem/tuple.by.type2.fail.cpp                               |  25 ++
 external/bsd/libc++/dist/libcxx/test/utilities/tuple/tuple.tuple/tuple.elem/tuple.by.type3.fail.cpp                               |  25 ++
 external/bsd/libc++/dist/libcxx/test/utilities/tuple/tuple.tuple/tuple.elem/tuple.by.type4.fail.cpp                               |  25 ++
 external/bsd/libc++/dist/libcxx/test/utilities/tuple/tuple.tuple/tuple.rel/eq.pass.cpp                                            |  10 +
 external/bsd/libc++/dist/libcxx/test/utilities/tuple/tuple.tuple/tuple.rel/lt.pass.cpp                                            |  12 +
 external/bsd/libc++/dist/libcxx/test/utilities/utility/exchange/exchange.pass.cpp                                                 |  58 ++++++
 external/bsd/libc++/dist/libcxx/test/utilities/utility/forward/forward.pass.cpp                                                   |   7 +
 external/bsd/libc++/dist/libcxx/test/utilities/utility/forward/move_if_noexcept.pass.cpp                                          |   6 +
 external/bsd/libc++/dist/libcxx/test/utilities/utility/pairs/pair.astuple/get_const.pass.cpp                                      |   9 +
 external/bsd/libc++/dist/libcxx/test/utilities/utility/pairs/pair.astuple/get_non_const.pass.cpp                                  |  18 +
 external/bsd/libc++/dist/libcxx/test/utilities/utility/pairs/pair.astuple/pairs.by.type.pass.cpp                                  |  44 ++++
 external/bsd/libc++/dist/libcxx/test/utilities/utility/pairs/pair.astuple/pairs.by.type1.fail.cpp                                 |  24 ++
 external/bsd/libc++/dist/libcxx/test/utilities/utility/pairs/pair.astuple/pairs.by.type2.fail.cpp                                 |  24 ++
 external/bsd/libc++/dist/libcxx/test/utilities/utility/pairs/pair.astuple/pairs.by.type3.fail.cpp                                 |  24 ++
 external/bsd/libc++/dist/libcxx/test/utilities/utility/pairs/pairs.pair/const_first_const_second.pass.cpp                         |  28 ++-
 external/bsd/libc++/dist/libcxx/test/utilities/utility/pairs/pairs.pair/const_pair_U_V.pass.cpp                                   |  11 +
 external/bsd/libc++/dist/libcxx/test/utilities/utility/pairs/pairs.pair/copy_ctor.pass.cpp                                        |  10 +
 external/bsd/libc++/dist/libcxx/test/utilities/utility/pairs/pairs.pair/default.pass.cpp                                          |  11 +
 external/bsd/libc++/dist/libcxx/test/utilities/utility/pairs/pairs.spec/comparison.pass.cpp                                       |  14 +
 external/bsd/libc++/dist/libcxx/test/utilities/utility/pairs/pairs.spec/make_pair.pass.cpp                                        |  11 +
 97 files changed, 1757 insertions(+), 103 deletions(-)

diffs (truncated from 3030 to 300 lines):

diff -r d7cfad5dab49 -r be5c0dbedef6 external/bsd/libc++/dist/libcxx/CREDITS.TXT
--- a/external/bsd/libc++/dist/libcxx/CREDITS.TXT       Thu Aug 15 22:37:29 2013 +0000
+++ b/external/bsd/libc++/dist/libcxx/CREDITS.TXT       Thu Aug 15 22:38:19 2013 +0000
@@ -76,6 +76,10 @@
 E: breese%users.sourceforge.net@localhost
 D: Initial regex prototype
 
+N: Nico Rieck
+E: nico.rieck%gmail.com@localhost
+D: Windows fixes
+
 N: Jonathan Sauer
 D: Minor patches, mostly related to constexpr
 
@@ -105,6 +109,14 @@
 E: zhangxiongpang%gmail.com@localhost
 D: Minor patches and bug fixes.
 
+N: Xing Xue
+E: xingxue%ca.ibm.com@localhost
+D: AIX port
+
+N: Zhihao Yuan
+E: lichray%gmail.com@localhost
+D: Standard compatibility fixes.
+
 N: Jeffrey Yasskin
 E: jyasskin%gmail.com@localhost
 E: jyasskin%google.com@localhost
diff -r d7cfad5dab49 -r be5c0dbedef6 external/bsd/libc++/dist/libcxx/test/algorithms/alg.modifying.operations/alg.fill/fill_n.pass.cpp
--- a/external/bsd/libc++/dist/libcxx/test/algorithms/alg.modifying.operations/alg.fill/fill_n.pass.cpp Thu Aug 15 22:37:29 2013 +0000
+++ b/external/bsd/libc++/dist/libcxx/test/algorithms/alg.modifying.operations/alg.fill/fill_n.pass.cpp Thu Aug 15 22:38:19 2013 +0000
@@ -45,6 +45,93 @@
     assert(ia[3] == 1);
 }
 
+void
+test_int_array()
+{
+    const unsigned n = 4;
+    int ia[n] = {0};
+    assert(std::fill_n(ia, n, static_cast<char>(1)) == std::next(ia, n));
+    assert(ia[0] == 1);
+    assert(ia[1] == 1);
+    assert(ia[2] == 1);
+    assert(ia[3] == 1);
+}
+
+struct source {
+    source() : i(0) { }
+    
+    operator int() const { return i++; }
+    mutable int i;
+};
+
+void
+test_int_array_struct_source()
+{
+    const unsigned n = 4;
+    int ia[n] = {0};
+    assert(std::fill_n(ia, n, source()) == std::next(ia, n));
+    assert(ia[0] == 0);
+    assert(ia[1] == 1);
+    assert(ia[2] == 2);
+    assert(ia[3] == 3);
+}
+
+struct test1 {
+    test1() : c(0) { }
+    test1(char c) : c(c + 1) { }
+    char c;
+};
+
+void
+test_struct_array()
+{
+    const unsigned n = 4;
+    test1 test1a[n] = {0};
+    assert(std::fill_n(test1a, n, static_cast<char>(10)) == std::next(test1a, n));    
+    assert(test1a[0].c == 11);
+    assert(test1a[1].c == 11);
+    assert(test1a[2].c == 11);
+    assert(test1a[3].c == 11);
+}
+
+class A
+{
+    char a_;
+public:
+    A() {}
+    explicit A(char a) : a_(a) {}
+    operator unsigned char() const {return 'b';}
+
+    friend bool operator==(const A& x, const A& y)
+        {return x.a_ == y.a_;}
+};
+
+void
+test5()
+{
+    A a[3];
+    assert(std::fill_n(&a[0], 3, A('a')) == a+3);
+    assert(a[0] == A('a'));
+    assert(a[1] == A('a'));
+    assert(a[2] == A('a'));
+}
+
+struct Storage
+{
+  union
+  {
+    unsigned char a;
+    unsigned char b;
+  };
+};
+ 
+void test6()
+{
+  Storage foo[5];
+  std::fill_n(&foo[0], 5, Storage());
+}
+
+
 int main()
 {
     test_char<forward_iterator<char*> >();
@@ -56,4 +143,11 @@
     test_int<bidirectional_iterator<int*> >();
     test_int<random_access_iterator<int*> >();
     test_int<int*>();
+    
+    test_int_array();
+    test_int_array_struct_source();
+    test_struct_array();
+
+    test5();
+    test6();
 }
diff -r d7cfad5dab49 -r be5c0dbedef6 external/bsd/libc++/dist/libcxx/test/algorithms/alg.nonmodifying/alg.equal/equal.pass.cpp
--- a/external/bsd/libc++/dist/libcxx/test/algorithms/alg.nonmodifying/alg.equal/equal.pass.cpp Thu Aug 15 22:37:29 2013 +0000
+++ b/external/bsd/libc++/dist/libcxx/test/algorithms/alg.nonmodifying/alg.equal/equal.pass.cpp Thu Aug 15 22:38:19 2013 +0000
@@ -20,7 +20,7 @@
 #include "test_iterators.h"
 
 #if _LIBCPP_STD_VER > 11
-#define        HAS_FOUR_ITERATOR_VERSION
+#define HAS_FOUR_ITERATOR_VERSION
 #endif
 
 int main()
diff -r d7cfad5dab49 -r be5c0dbedef6 external/bsd/libc++/dist/libcxx/test/algorithms/alg.nonmodifying/alg.equal/equal_pred.pass.cpp
--- a/external/bsd/libc++/dist/libcxx/test/algorithms/alg.nonmodifying/alg.equal/equal_pred.pass.cpp    Thu Aug 15 22:37:29 2013 +0000
+++ b/external/bsd/libc++/dist/libcxx/test/algorithms/alg.nonmodifying/alg.equal/equal_pred.pass.cpp    Thu Aug 15 22:38:19 2013 +0000
@@ -22,15 +22,15 @@
 #include "test_iterators.h"
 
 #if _LIBCPP_STD_VER > 11
-#define        HAS_FOUR_ITERATOR_VERSION
+#define HAS_FOUR_ITERATOR_VERSION
 #endif
 
 int comparison_count = 0;
 template <typename T>
 bool counting_equals ( const T &a, const T &b ) {
-       ++comparison_count;
-       return a == b;
-       }
+    ++comparison_count;
+    return a == b;
+}
 
 int main()
 {
diff -r d7cfad5dab49 -r be5c0dbedef6 external/bsd/libc++/dist/libcxx/test/algorithms/alg.nonmodifying/alg.is_permutation/is_permutation.pass.cpp
--- a/external/bsd/libc++/dist/libcxx/test/algorithms/alg.nonmodifying/alg.is_permutation/is_permutation.pass.cpp       Thu Aug 15 22:37:29 2013 +0000
+++ b/external/bsd/libc++/dist/libcxx/test/algorithms/alg.nonmodifying/alg.is_permutation/is_permutation.pass.cpp       Thu Aug 15 22:38:19 2013 +0000
@@ -20,7 +20,7 @@
 #include "test_iterators.h"
 
 #if _LIBCPP_STD_VER > 11
-#define        HAS_FOUR_ITERATOR_VERSION
+#define HAS_FOUR_ITERATOR_VERSION
 #endif
 
 int main()
diff -r d7cfad5dab49 -r be5c0dbedef6 external/bsd/libc++/dist/libcxx/test/lit.cfg
--- a/external/bsd/libc++/dist/libcxx/test/lit.cfg      Thu Aug 15 22:37:29 2013 +0000
+++ b/external/bsd/libc++/dist/libcxx/test/lit.cfg      Thu Aug 15 22:38:19 2013 +0000
@@ -12,6 +12,10 @@
 import time
 import shlex
 
+import lit.Test
+import lit.formats
+import lit.util
+
 # FIXME: For now, this is cribbed from lit.TestRunner, to avoid introducing a
 # dependency there. What we more ideally would like to do is lift the "xfail"
 # and "requires" handling to be a core lit framework feature.
@@ -207,7 +211,7 @@
 config.test_source_root = os.path.dirname(__file__)
 
 # Gather various compiler parameters.
-cxx_under_test = lit.params.get('cxx_under_test', None)
+cxx_under_test = lit_config.params.get('cxx_under_test', None)
 if cxx_under_test is None:
     cxx_under_test = getattr(config, 'cxx_under_test', None)
 
@@ -215,52 +219,53 @@
     clangxx = lit.util.which('clang++', config.environment['PATH'])
     if clangxx is not None:
         cxx_under_test = clangxx
-        lit.note("inferred cxx_under_test as: %r" % (cxx_under_test,))
+        lit_config.note("inferred cxx_under_test as: %r" % (cxx_under_test,))
 if cxx_under_test is None:
-    lit.fatal('must specify user parameter cxx_under_test '
-              '(e.g., --param=cxx_under_test=clang++)')
+    lit_config.fatal('must specify user parameter cxx_under_test '
+                     '(e.g., --param=cxx_under_test=clang++)')
 
-libcxx_src_root = lit.params.get('libcxx_src_root', None)
+libcxx_src_root = lit_config.params.get('libcxx_src_root', None)
 if libcxx_src_root is None:
     libcxx_src_root = getattr(config, 'libcxx_src_root', None)
     if libcxx_src_root is None:
         libcxx_src_root = os.path.dirname(config.test_source_root)
 
-libcxx_obj_root = lit.params.get('libcxx_obj_root', None)
+libcxx_obj_root = lit_config.params.get('libcxx_obj_root', None)
 if libcxx_obj_root is None:
     libcxx_obj_root = getattr(config, 'libcxx_obj_root', None)
     if libcxx_obj_root is None:
         libcxx_obj_root = libcxx_src_root
 
-cxx_has_stdcxx0x_flag_str = lit.params.get('cxx_has_stdcxx0x_flag', None)
+cxx_has_stdcxx0x_flag_str = lit_config.params.get('cxx_has_stdcxx0x_flag', None)
 if cxx_has_stdcxx0x_flag_str is not None:
     if cxx_has_stdcxx0x_flag_str.lower() in ('1', 'true'):
         cxx_has_stdcxx0x_flag = True
     elif cxx_has_stdcxx0x_flag_str.lower() in ('', '0', 'false'):
         cxx_has_stdcxx0x_flag = False
     else:
-        lit.fatal('user parameter cxx_has_stdcxx0x_flag_str should be 0 or 1')
+        lit_config.fatal(
+            'user parameter cxx_has_stdcxx0x_flag_str should be 0 or 1')
 else:
     cxx_has_stdcxx0x_flag = getattr(config, 'cxx_has_stdcxx0x_flag', True)
 
 # This test suite supports testing against either the system library or the
 # locally built one; the former mode is useful for testing ABI compatibility
 # between the current headers and a shipping dynamic library.
-use_system_lib_str = lit.params.get('use_system_lib', None)
+use_system_lib_str = lit_config.params.get('use_system_lib', None)
 if use_system_lib_str is not None:
     if use_system_lib_str.lower() in ('1', 'true'):
         use_system_lib = True
     elif use_system_lib_str.lower() in ('', '0', 'false'):
         use_system_lib = False
     else:
-        lit.fatal('user parameter use_system_lib should be 0 or 1')
+        lit_config.fatal('user parameter use_system_lib should be 0 or 1')
 else:
     # Default to testing against the locally built libc++ library.
     use_system_lib = False
-    lit.note("inferred use_system_lib as: %r" % (use_system_lib,))
+    lit_config.note("inferred use_system_lib as: %r" % (use_system_lib,))
 
 link_flags = []
-link_flags_str = lit.params.get('link_flags', None)
+link_flags_str = lit_config.params.get('link_flags', None)
 if link_flags_str is None:
     link_flags_str = getattr(config, 'link_flags', None)
     if link_flags_str is None:
@@ -270,8 +275,8 @@
             link_flags += ['-lsupc++', '-lgcc_eh', '-lc', '-lm', '-lpthread',
                 '-lrt', '-lgcc_s']
         else:
-            lit.fatal("unrecognized system")
-        lit.note("inferred link_flags as: %r" % (link_flags,))
+            lit_config.fatal("unrecognized system")
+        lit_config.note("inferred link_flags as: %r" % (link_flags,))
 if not link_flags_str is None:
     link_flags += shlex.split(link_flags_str)
 
@@ -294,7 +299,7 @@
     compile_flags += ['-D__STDC_FORMAT_MACROS', '-D__STDC_LIMIT_MACROS',
         '-D__STDC_CONSTANT_MACROS']
 else:
-    lit.fatal("unrecognized system")
+    lit_config.fatal("unrecognized system")
 
 config.test_format = LibcxxTestFormat(
     cxx_under_test,
@@ -303,12 +308,12 @@
     exec_env = exec_env)
 
 # Get or infer the target triple.
-config.target_triple = lit.params.get('target_triple', None)
+config.target_triple = lit_config.params.get('target_triple', None)
 # If no target triple was given, try to infer it from the compiler under test.



Home | Main Index | Thread Index | Old Index