[libcxx-commits] [libcxx] r367777 - Revert "Suppress -Wctad-maybe-unsupported on types w/o deduction guides."

Eric Fiselier via libcxx-commits libcxx-commits at lists.llvm.org
Sun Aug 4 00:13:43 PDT 2019


Author: ericwf
Date: Sun Aug  4 00:13:43 2019
New Revision: 367777

URL: http://llvm.org/viewvc/llvm-project?rev=367777&view=rev
Log:
Revert "Suppress -Wctad-maybe-unsupported on types w/o deduction guides."

Some modules builds are issuing buggy diagnostics. The cause of which is
TBD.

This reverts commit r at 367770.

Removed:
    libcxx/trunk/test/std/iterators/predef.iterators/insert.iterators/back.insert.iterator/implicit_ctad.pass.cpp
Modified:
    libcxx/trunk/include/__config
    libcxx/trunk/include/__mutex_base
    libcxx/trunk/include/functional
    libcxx/trunk/include/iterator
    libcxx/trunk/include/mutex
    libcxx/trunk/include/shared_mutex
    libcxx/trunk/include/string_view
    libcxx/trunk/utils/libcxx/test/config.py

Modified: libcxx/trunk/include/__config
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/include/__config?rev=367777&r1=367776&r2=367777&view=diff
==============================================================================
--- libcxx/trunk/include/__config (original)
+++ libcxx/trunk/include/__config Sun Aug  4 00:13:43 2019
@@ -1429,15 +1429,6 @@ _LIBCPP_FUNC_VIS extern "C" void __sanit
 
 #define _LIBCPP_UNUSED_VAR(x) ((void)(x))
 
-#ifndef _LIBCPP_HAS_NO_DEDUCTION_GUIDES
-#define _LIBCPP_CTAD_SUPPORTED_FOR_TYPE(_ClassName) \
-  template <class _Tag = void> \
-  _ClassName(typename _Tag::__allow_ctad) -> _ClassName<void>
-#else
-#define _LIBCPP_CTAD_SUPPORTED_FOR_TYPE(_ClassName) \
-   static_assert(true, "")
-#endif // _LIBCPP_HAS_NO_DEDUCTION_GUIDES
-
 #endif // __cplusplus
 
 #endif // _LIBCPP_CONFIG

Modified: libcxx/trunk/include/__mutex_base
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/include/__mutex_base?rev=367777&r1=367776&r2=367777&view=diff
==============================================================================
--- libcxx/trunk/include/__mutex_base (original)
+++ libcxx/trunk/include/__mutex_base Sun Aug  4 00:13:43 2019
@@ -107,8 +107,6 @@ private:
     lock_guard(lock_guard const&) _LIBCPP_EQUAL_DELETE;
     lock_guard& operator=(lock_guard const&) _LIBCPP_EQUAL_DELETE;
 };
-_LIBCPP_CTAD_SUPPORTED_FOR_TYPE(lock_guard);
-
 
 template <class _Mutex>
 class _LIBCPP_TEMPLATE_VIS unique_lock
@@ -207,7 +205,6 @@ public:
     _LIBCPP_INLINE_VISIBILITY
     mutex_type* mutex() const _NOEXCEPT {return __m_;}
 };
-_LIBCPP_CTAD_SUPPORTED_FOR_TYPE(unique_lock);
 
 template <class _Mutex>
 void

Modified: libcxx/trunk/include/functional
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/include/functional?rev=367777&r1=367776&r2=367777&view=diff
==============================================================================
--- libcxx/trunk/include/functional (original)
+++ libcxx/trunk/include/functional Sun Aug  4 00:13:43 2019
@@ -3067,8 +3067,7 @@ private:
     _ForwardIterator __first_;
     _ForwardIterator __last_;
     _BinaryPredicate __pred_;
-};
-_LIBCPP_CTAD_SUPPORTED_FOR_TYPE(default_searcher);
+    };
 
 #endif // _LIBCPP_STD_VER > 14
 

Modified: libcxx/trunk/include/iterator
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/include/iterator?rev=367777&r1=367776&r2=367777&view=diff
==============================================================================
--- libcxx/trunk/include/iterator (original)
+++ libcxx/trunk/include/iterator Sun Aug  4 00:13:43 2019
@@ -841,7 +841,6 @@ public:
     _LIBCPP_INLINE_VISIBILITY back_insert_iterator& operator++()    {return *this;}
     _LIBCPP_INLINE_VISIBILITY back_insert_iterator  operator++(int) {return *this;}
 };
-_LIBCPP_CTAD_SUPPORTED_FOR_TYPE(back_insert_iterator);
 
 template <class _Container>
 inline _LIBCPP_INLINE_VISIBILITY

Modified: libcxx/trunk/include/mutex
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/include/mutex?rev=367777&r1=367776&r2=367777&view=diff
==============================================================================
--- libcxx/trunk/include/mutex (original)
+++ libcxx/trunk/include/mutex Sun Aug  4 00:13:43 2019
@@ -546,7 +546,6 @@ private:
 
     _MutexTuple __t_;
 };
-_LIBCPP_CTAD_SUPPORTED_FOR_TYPE(scoped_lock);
 
 #endif // _LIBCPP_STD_VER > 14
 #endif // !_LIBCPP_HAS_NO_THREADS

Modified: libcxx/trunk/include/shared_mutex
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/include/shared_mutex?rev=367777&r1=367776&r2=367777&view=diff
==============================================================================
--- libcxx/trunk/include/shared_mutex (original)
+++ libcxx/trunk/include/shared_mutex Sun Aug  4 00:13:43 2019
@@ -430,7 +430,6 @@ public:
     _LIBCPP_INLINE_VISIBILITY
     mutex_type* mutex() const _NOEXCEPT {return __m_;}
 };
-_LIBCPP_CTAD_SUPPORTED_FOR_TYPE(shared_lock);
 
 template <class _Mutex>
 void

Modified: libcxx/trunk/include/string_view
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/include/string_view?rev=367777&r1=367776&r2=367777&view=diff
==============================================================================
--- libcxx/trunk/include/string_view (original)
+++ libcxx/trunk/include/string_view Sun Aug  4 00:13:43 2019
@@ -604,7 +604,6 @@ private:
     const   value_type* __data;
     size_type           __size;
 };
-_LIBCPP_CTAD_SUPPORTED_FOR_TYPE(basic_string_view);
 
 
 // [string.view.comparison]

Removed: libcxx/trunk/test/std/iterators/predef.iterators/insert.iterators/back.insert.iterator/implicit_ctad.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/std/iterators/predef.iterators/insert.iterators/back.insert.iterator/implicit_ctad.pass.cpp?rev=367776&view=auto
==============================================================================
--- libcxx/trunk/test/std/iterators/predef.iterators/insert.iterators/back.insert.iterator/implicit_ctad.pass.cpp (original)
+++ libcxx/trunk/test/std/iterators/predef.iterators/insert.iterators/back.insert.iterator/implicit_ctad.pass.cpp (removed)
@@ -1,41 +0,0 @@
-//===----------------------------------------------------------------------===//
-//
-// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
-// See https://llvm.org/LICENSE.txt for license information.
-// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
-//
-//===----------------------------------------------------------------------===//
-
-// <iterator>
-
-// UNSUPPORTED: c++98, c++03, c++11, c++14
-// UNSUPPORTED: libcpp-no-deduction-guides
-
-// class back_insert_iterator.
-
-#include <string>
-#include <iterator>
-#include <vector>
-#include <cassert>
-#include <cstddef>
-#include <functional>
-
-#include "test_macros.h"
-
-int main(int, char**)
-{
-    {
-      std::string s;
-      std::back_insert_iterator bs(s);
-      ASSERT_SAME_TYPE(decltype(bs), std::back_insert_iterator<std::string>);
-    }
-  {
-    std::vector<int> v;
-    std::back_insert_iterator bv(v);
-    std::back_insert_iterator cp(bv);
-    ASSERT_SAME_TYPE(decltype(bv), std::back_insert_iterator<std::vector<int>>);
-    ASSERT_SAME_TYPE(decltype(cp), std::back_insert_iterator<std::vector<int>>);
-  }
-
-  return 0;
-}

Modified: libcxx/trunk/utils/libcxx/test/config.py
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/utils/libcxx/test/config.py?rev=367777&r1=367776&r2=367777&view=diff
==============================================================================
--- libcxx/trunk/utils/libcxx/test/config.py (original)
+++ libcxx/trunk/utils/libcxx/test/config.py Sun Aug  4 00:13:43 2019
@@ -911,7 +911,6 @@ class Configuration(object):
         self.cxx.addWarningFlagIfSupported('-Wunused-variable')
         self.cxx.addWarningFlagIfSupported('-Wunused-parameter')
         self.cxx.addWarningFlagIfSupported('-Wunreachable-code')
-        self.cxx.addWarningFlagIfSupported('-Wctad-maybe-unsupported')
         std = self.get_lit_conf('std', None)
         if std in ['c++98', 'c++03']:
             # The '#define static_assert' provided by libc++ in C++03 mode




More information about the libcxx-commits mailing list