Commit Graph

4449 Commits

Author SHA1 Message Date
Dan Albert
38472f8e1c Add logging to run_tests.py and fix pylint issues. am: e92499f1c9 am: c26d242df0 am: 7f21f17a2a
am: dd072e9b65

Change-Id: I5f509f4045abae1726127bf9db537d6bdf968c6a
2017-01-31 19:33:09 +00:00
Dan Albert
fe2f63c01a Test with C++1z. am: cebe3685c0 am: 8a2d4e7544
am: 06ace6438f

Change-Id: Icf0df21a061f904744ade698111b7a34f837bdbb
2017-01-31 19:30:46 +00:00
Dan Albert
0fab459ba6 Ignore a warning we trip because clang is too old. am: 034b504882 am: 9d5f439a72
am: ce98d01e55

Change-Id: I1c4dccd821bcfea774e4535cbce7045e46fdfdff
2017-01-31 19:30:44 +00:00
Dan Albert
7fdc96849b Update Android.bp for upstream changes. am: c0ecf33175 am: b08ac02f91 am: c87f7f40fc
am: 732a3594cd

Change-Id: Ic52edacbb81d5f41e225b48cac5bd9bf6220b764
2017-01-31 19:30:43 +00:00
Dan Albert
1dda205d5f Fix libcxx.android.compiler for interface changes. am: d6a9199c13 am: 9c8e548afa
am: d9c41d4d53

Change-Id: I6738b40056a029415fd6adbdab11221723cb39b1
2017-01-31 19:30:41 +00:00
Dan Albert
9b1819b2b1 Merge to upstream r293197. am: ff11c1afab am: cebba60f3c am: ab399e385c
am: b8d899b771

Change-Id: Ifa1453b2a5f637a72882f0e8736691b15ed30ddc
2017-01-31 19:30:41 +00:00
Dan Albert
dd072e9b65 Add logging to run_tests.py and fix pylint issues. am: e92499f1c9 am: c26d242df0
am: 7f21f17a2a

Change-Id: Ia42194f83e0eda81666e08621d4906d79a762044
2017-01-31 19:30:40 +00:00
Dan Albert
06ace6438f Test with C++1z. am: cebe3685c0
am: 8a2d4e7544

Change-Id: I8b43e1a39c3e155cf5178bc1ee8996261a170126
2017-01-31 19:28:45 +00:00
Dan Albert
ce98d01e55 Ignore a warning we trip because clang is too old. am: 034b504882
am: 9d5f439a72

Change-Id: Ief2de56ca71956467a28e4cc8e904695c38bada8
2017-01-31 19:28:43 +00:00
Dan Albert
732a3594cd Update Android.bp for upstream changes. am: c0ecf33175 am: b08ac02f91
am: c87f7f40fc

Change-Id: I5233e58a0bef2932f9d66b081200d74c84a06548
2017-01-31 19:28:42 +00:00
Dan Albert
d9c41d4d53 Fix libcxx.android.compiler for interface changes. am: d6a9199c13
am: 9c8e548afa

Change-Id: I240e0d759d02f682faeddfa52569a810e8448869
2017-01-31 19:28:40 +00:00
Dan Albert
b8d899b771 Merge to upstream r293197. am: ff11c1afab am: cebba60f3c
am: ab399e385c

Change-Id: I91dfd9be4f693a4d06cee8e4984e34fc75a4213f
2017-01-31 19:28:40 +00:00
Dan Albert
7f21f17a2a Add logging to run_tests.py and fix pylint issues. am: e92499f1c9
am: c26d242df0

Change-Id: Ic8575c221bb2094db3b4ac632cffcc3939c529d6
2017-01-31 19:28:39 +00:00
Dan Albert
8a2d4e7544 Test with C++1z.
am: cebe3685c0

Change-Id: I295ebaa9c03afeec41907e9ccbf45d2bcd28c52b
2017-01-31 19:26:15 +00:00
Dan Albert
9d5f439a72 Ignore a warning we trip because clang is too old.
am: 034b504882

Change-Id: I389184618add82a5297a36104a58bacb7b52d4fb
2017-01-31 19:26:13 +00:00
Dan Albert
c87f7f40fc Update Android.bp for upstream changes. am: c0ecf33175
am: b08ac02f91

Change-Id: Ifad4aedbdeb27392d12c251ce31a64c7a2f77d6e
2017-01-31 19:26:13 +00:00
Dan Albert
9c8e548afa Fix libcxx.android.compiler for interface changes.
am: d6a9199c13

Change-Id: I48825d2351bc10325a7da66e806292d62dd10556
2017-01-31 19:26:10 +00:00
Dan Albert
ab399e385c Merge to upstream r293197. am: ff11c1afab
am: cebba60f3c

Change-Id: Ic425407d4e6b350449cb146bfd02f689c65e2279
2017-01-31 19:26:10 +00:00
Dan Albert
c26d242df0 Add logging to run_tests.py and fix pylint issues.
am: e92499f1c9

Change-Id: I10796f689f344d7d584ba84742d71c405bde57b4
2017-01-31 19:26:09 +00:00
Dan Albert
b08ac02f91 Update Android.bp for upstream changes.
am: c0ecf33175

Change-Id: Ifd732c7f6929c4b98024243ab311cba2aa932bda
2017-01-31 19:24:12 +00:00
Dan Albert
cebba60f3c Merge to upstream r293197.
am: ff11c1afab

Change-Id: Ib13e44dc9c431bca9b295b4bf79a1690b83ed0d4
2017-01-31 19:24:11 +00:00
Marshall Clow
90b3732f7a Fix up some no-exception compile failures
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@293623 91177308-0d34-0410-b5e6-96231b3b80d8
2017-01-31 13:12:32 +00:00
Alex Lorenz
cb14d02f6d Workaround new -Wshadow warning introduced by r293599
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@293619 91177308-0d34-0410-b5e6-96231b3b80d8
2017-01-31 12:37:48 +00:00
Marshall Clow
9247fd2f79 Fix PR#31779: basic_string::operator= isn't exception safe.
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@293599 91177308-0d34-0410-b5e6-96231b3b80d8
2017-01-31 03:40:52 +00:00
Justin Bogner
e70b4ec8af Revert "Adorn __call_once_proxy with inline and _LIBCPP_INLINE_VISIBILITY"
While this change didn't really hurt, it does lead to spurious
warnings about not being able to override weak symbols if you end up
linking objects built with this change to ones built without it.
Furthermore, since __call_once_proxy is called indirectly anyway it
doesn't actually inline ever.

Longer term, it would probably make sense to give this symbol internal
visibility instead.

This reverts r291497

git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@293581 91177308-0d34-0410-b5e6-96231b3b80d8
2017-01-31 01:26:09 +00:00
Saleem Abdulrasool
445b823bf1 experimental: avoid using raw _WIN32 in filesystem
Use the _LIBCPP_WIN32API macro instead of _WIN32 checks.  Fix a missed
renaming for style conformance.

git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@293543 91177308-0d34-0410-b5e6-96231b3b80d8
2017-01-30 19:57:27 +00:00
Saleem Abdulrasool
5c518e17a9 experimental: port directory_iterator to Windows
This adds a basic first cut implementation for directory_iterator on
Windows.  It uses the FindFirstFile/FindNextFile which has the same
restrictions as opendir/readdir where there exists a TOCTOU race
condition.

git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@293531 91177308-0d34-0410-b5e6-96231b3b80d8
2017-01-30 18:50:34 +00:00
Saleem Abdulrasool
1d3b737603 experimental: add missing file header
The directory_iterator implementation file was missing the file header.
Add one.  NFC.

git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@293530 91177308-0d34-0410-b5e6-96231b3b80d8
2017-01-30 18:50:32 +00:00
Saleem Abdulrasool
52241cb511 experimental: remove some extraneous _LIBCPP_FUNC_VIS
These member functions were decorated with `_LIBCPP_FUNC_VIS` when the
class is also decorated with external visibility.  This breaks down when
building for PE/COFF, where the member function cannot be decorated if
it is within a decorated class.  The class attribute will propagate to
the member.  Remove the extraneous decoration.

git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@293454 91177308-0d34-0410-b5e6-96231b3b80d8
2017-01-30 03:58:26 +00:00
Saleem Abdulrasool
eebb4f71e0 experimental: inline single use of a typedef
The typedef is not particularly long, and used in exactly one location.
Just spell it out at the site.  NFC.

git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@293450 91177308-0d34-0410-b5e6-96231b3b80d8
2017-01-30 00:15:50 +00:00
Saleem Abdulrasool
b35cd98bc1 experimental: tolerate the existence of a __deref macro
Microsoft's SAL has a `__deref` macro which results in a compilation
failure when building the filesystem module on Windows.  Rename the
member function internally to avoid the conflict.

git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@293449 91177308-0d34-0410-b5e6-96231b3b80d8
2017-01-30 00:15:47 +00:00
Saleem Abdulrasool
286816274d experimental: remove dead function
This template was defined inline, within the TU only and had no uses
across the entire repository.  Remove the dead code.  NFC.

git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@293445 91177308-0d34-0410-b5e6-96231b3b80d8
2017-01-29 22:31:28 +00:00
Saleem Abdulrasool
bc116591fd config: prevent the re-definition of a macro
This causes unnecessary warnings when building with `cl`.  Newer
versions of the C standard permit the redefinition of the macro to the
same value (which is the case here), unfortunately, `cl` does not yet
implement this.  Add a check to prevent the redefinition.

git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@293439 91177308-0d34-0410-b5e6-96231b3b80d8
2017-01-29 18:16:33 +00:00
Dan Albert
cebe3685c0 Test with C++1z.
The new clang drop isn't capable of building libc++ itself with C++1z
(I haven't investigate yet), but it seems we don't need that.

Test: make checkbuild && ./run_tests.py # sailfish
Bug: http://b/34740564
Change-Id: I0dfb578b1b04dd37108371deaa710681b0d88f4f
2017-01-27 16:40:54 -08:00
Dan Albert
034b504882 Ignore a warning we trip because clang is too old.
The sv ud literal was added to C++17 for creating string_views, but
the Clang we have doesn't know that so it warns about using a
reserved ud literal name. Disable the warning since it's not
important here anyway.

Test: ./run_tests.py
Bug: http://b/34740564
Change-Id: I7b59a4b63969252d4df012df3c11d7638cbfa5a0
2017-01-27 16:40:54 -08:00
Dan Albert
d6a9199c13 Fix libcxx.android.compiler for interface changes.
Test: ./run_tests.py
Bug: http://b/34740564
Change-Id: I68846f5a5a951d5bd368907c662b2c980e1c89a9
2017-01-27 16:40:54 -08:00
Dan Albert
e92499f1c9 Add logging to run_tests.py and fix pylint issues.
Test: ./run_tests.py
Bug: http://b/34740564
Change-Id: I9ae1d2d386842e088db963b2b4eb611450cbe514
2017-01-27 16:40:53 -08:00
Dan Albert
c0ecf33175 Update Android.bp for upstream changes.
Add a new define and a new source file.

Test: mm
Bug: http://b/34740564
Change-Id: I2a924e9f7e8d4d007b7f1119216b85716b97bb71
2017-01-27 16:40:33 -08:00
Dan Albert
ff11c1afab Merge to upstream r293197.
Bug: http://b/34740564
Test: make checkbuild && ./run_tests.py  # Tested aosp_sailfish-eng
Change-Id: I33320f72d9170548010c023bd28f03578461b5ff
2017-01-27 11:24:04 -08:00
Dan Albert
cec4b8eb0b Merge "Mark some atomics tests as xfail." am: c7d5c2a13e am: 9f0254abc1 am: 0d920ebfe1
am: 9ab39de2df

Change-Id: I9e3e04b0149de9238d1a9f69b893d90ebc77d54b
2017-01-26 22:14:54 +00:00
Dan Albert
9ab39de2df Merge "Mark some atomics tests as xfail." am: c7d5c2a13e am: 9f0254abc1
am: 0d920ebfe1

Change-Id: I30e86c11d23f15d8aa07926cb1aa877a5d978817
2017-01-26 22:10:55 +00:00
Dan Albert
0d920ebfe1 Merge "Mark some atomics tests as xfail." am: c7d5c2a13e
am: 9f0254abc1

Change-Id: I1669407f5c62748a195dd04e67eb204091f7c196
2017-01-26 22:06:55 +00:00
Dan Albert
9f0254abc1 Merge "Mark some atomics tests as xfail."
am: c7d5c2a13e

Change-Id: I822798f02e93a01aad0c93c3e53679eccbfac185
2017-01-26 22:02:54 +00:00
Dan Albert
c7d5c2a13e Merge "Mark some atomics tests as xfail." 2017-01-26 21:54:39 +00:00
Dimitry Andric
362353aa2d Disable thread safety analysis for some functions in __thread_support
Many thread-related libc++ test cases fail on FreeBSD, due to the
following -Werror warnings:

    In file included from test/std/thread/thread.threads/thread.thread.this/sleep_until.pass.cpp:17:
    In file included from include/thread:97:
    In file included from include/__mutex_base:17:
    include/__threading_support:222:1: error: mutex '__m' is still held at the end of function [-Werror,-Wthread-safety-analysis]
    }
    ^
    include/__threading_support:221:10: note: mutex acquired here
      return pthread_mutex_lock(__m);
             ^
    include/__threading_support:231:10: error: releasing mutex '__m' that was not held [-Werror,-Wthread-safety-analysis]
      return pthread_mutex_unlock(__m);
             ^
    include/__threading_support:242:1: error: mutex '__m' is still held at the end of function [-Werror,-Wthread-safety-analysis]
    }
    ^
    include/__threading_support:241:10: note: mutex acquired here
      return pthread_mutex_lock(__m);
             ^
    include/__threading_support:251:10: error: releasing mutex '__m' that was not held [-Werror,-Wthread-safety-analysis]
      return pthread_mutex_unlock(__m);
             ^
    include/__threading_support:272:10: error: calling function 'pthread_cond_wait' requires holding mutex '__m' exclusively [-Werror,-Wthread-safety-analysis]
      return pthread_cond_wait(__cv, __m);
             ^
    include/__threading_support:278:10: error: calling function 'pthread_cond_timedwait' requires holding mutex '__m' exclusively [-Werror,-Wthread-safety-analysis]
      return pthread_cond_timedwait(__cv, __m, __ts);
             ^
    6 errors generated.

This is because on FreeBSD, the pthread functions have lock annotations.
Since the functions in __thread_support are internal to libc++ only, add
no_thread_safety_analysis attributes to suppress these warnings.

Reviewers: mclow.lists, EricWF, delesley, aaron.ballman
Reviewed By: aaron.ballman
Subscribers: ed, aaron.ballman, joerg, emaste, cfe-commits
Differential Revision: https://reviews.llvm.org/D28520


git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@293197 91177308-0d34-0410-b5e6-96231b3b80d8
2017-01-26 18:37:18 +00:00
Marshall Clow
da709135c5 Fixed a couple of invalid statuses for 2665 and 2758
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@293179 91177308-0d34-0410-b5e6-96231b3b80d8
2017-01-26 14:36:14 +00:00
Asiri Rathnayake
bcc92d75df Fix chromium build (libcxx)
Remove the reference to pthread_mach_thread_np() in libcxx headers.

git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@293167 91177308-0d34-0410-b5e6-96231b3b80d8
2017-01-26 10:40:17 +00:00
Marshall Clow
f783971aa0 Use the new __has_feature(cxx_constexpr_string_builtins) for detection of the C-string intrinsics for constexpr support in std::char_traits. Thanks to Richard for the intrisic support.
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@293154 91177308-0d34-0410-b5e6-96231b3b80d8
2017-01-26 06:58:29 +00:00
Marshall Clow
19cd3fd00f Fixed a typo in the synopsis (noecept -> noexcept). Thanks to Kim for the catch
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@293079 91177308-0d34-0410-b5e6-96231b3b80d8
2017-01-25 20:14:03 +00:00
Mehdi Amini
8a032c59d0 [libcxx] Mentions "targeting C++11 and above" instead of "targeting C++11" in the doc
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@293071 91177308-0d34-0410-b5e6-96231b3b80d8
2017-01-25 17:00:30 +00:00