diff options
| author | Marshall Clow <mclow.lists@gmail.com> | 2015-04-14 13:53:53 +0000 |
|---|---|---|
| committer | Marshall Clow <mclow.lists@gmail.com> | 2015-04-14 13:53:53 +0000 |
| commit | daa4d45c0aa771b999df714a07234979e7746f83 (patch) | |
| tree | adb05e63ad89c2e602bee0ddf83731dc2fbbf0a6 /libcxx/test/std/utilities | |
| parent | 5867a70057e0cc61d3793e9bea52b847c328ac68 (diff) | |
| download | bcm5719-llvm-daa4d45c0aa771b999df714a07234979e7746f83.tar.gz bcm5719-llvm-daa4d45c0aa771b999df714a07234979e7746f83.zip | |
Qualify an internal call in is_assignable to prevent ADL lookup, which would 'complete' an type definition unnecessarily. Thanks to Richard Smith for the report.
llvm-svn: 234886
Diffstat (limited to 'libcxx/test/std/utilities')
| -rw-r--r-- | libcxx/test/std/utilities/meta/meta.unary/meta.unary.prop/is_assignable.pass.cpp | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/libcxx/test/std/utilities/meta/meta.unary/meta.unary.prop/is_assignable.pass.cpp b/libcxx/test/std/utilities/meta/meta.unary/meta.unary.prop/is_assignable.pass.cpp index b46a4d6bcc6..d33019bcba9 100644 --- a/libcxx/test/std/utilities/meta/meta.unary/meta.unary.prop/is_assignable.pass.cpp +++ b/libcxx/test/std/utilities/meta/meta.unary/meta.unary.prop/is_assignable.pass.cpp @@ -49,6 +49,9 @@ struct E }; #endif +template <typename T> +struct X { T t; }; + int main() { test_is_assignable<int&, int&> (); @@ -67,4 +70,7 @@ int main() test_is_not_assignable<void, const void> (); test_is_not_assignable<const void, const void> (); test_is_not_assignable<int(), int> (); + +// pointer to incomplete template type + test_is_assignable<X<D>*&, X<D>*> (); } |

