Adapt to upstream changes. am: 80bd2e4b23 am: 48a3fead9e
am: 916ed50dec

Change-Id: Ifa1907af0ae872ff5c2147a2b039e15b62d23178
diff --git a/Android.bp b/Android.bp
index 737e284..4312e5b 100644
--- a/Android.bp
+++ b/Android.bp
@@ -48,10 +48,11 @@
         "src/utility.cpp",
         "src/valarray.cpp",
         "src/variant.cpp",
+        "src/vector.cpp",
     ],
     local_include_dirs: ["include"],
     export_include_dirs: ["include"],
-    cflags: ["-Wall", "-Werror"],
+    cflags: ["-Wall", "-Werror", "-Wno-unused-parameter"],
     cppflags: [
         "-std=c++14",
         "-nostdinc++",
diff --git a/buildcmds/Android.mk b/buildcmds/Android.mk
index 363a4c1..70f1701 100644
--- a/buildcmds/Android.mk
+++ b/buildcmds/Android.mk
@@ -25,7 +25,7 @@
 LOCAL_CXX_STL := libc++
 LOCAL_C_INCLUDES := $(LOCAL_PATH)/../test/support
 LOCAL_CPPFLAGS := \
-    -std=c++1z \
+    -std=c++17 \
     -fsized-deallocation \
     -fexceptions \
     -UNDEBUG \
diff --git a/test/std/input.output/stream.buffers/streambuf/streambuf.protected/streambuf.put.area/pbump2gig.pass.cpp b/test/std/input.output/stream.buffers/streambuf/streambuf.protected/streambuf.put.area/pbump2gig.pass.cpp
index e7bdd89..96cdf29 100644
--- a/test/std/input.output/stream.buffers/streambuf/streambuf.protected/streambuf.put.area/pbump2gig.pass.cpp
+++ b/test/std/input.output/stream.buffers/streambuf/streambuf.protected/streambuf.put.area/pbump2gig.pass.cpp
@@ -16,6 +16,10 @@
 //
 // REQUIRES: long_tests
 
+// This test allocates 4GiB of 'a', which is not possible on a typical mobile
+// device.
+// UNSUPPORTED: android
+
 #include <sstream>
 #include <cassert>
 #include "test_macros.h"
diff --git a/test/std/utilities/meta/meta.unary/meta.unary.prop/has_unique_object_representations.pass.cpp b/test/std/utilities/meta/meta.unary/meta.unary.prop/has_unique_object_representations.pass.cpp
index 52100c3..0964e0e 100644
--- a/test/std/utilities/meta/meta.unary/meta.unary.prop/has_unique_object_representations.pass.cpp
+++ b/test/std/utilities/meta/meta.unary/meta.unary.prop/has_unique_object_representations.pass.cpp
@@ -9,6 +9,9 @@
 
 // UNSUPPORTED: c++98, c++03, c++11, c++14
 // UNSUPPORTED: clang-3, clang-4, clang-5, apple-clang, gcc-4, gcc-5, gcc-6
+//
+// AOSP's clang doesn't have __has_unique_object_representations yet.
+// XFAIL: android
 
 // type_traits