Lit test C++11 Compatibility Patch #4

Richard Smith via cfe-commits cfe-commits at lists.llvm.org
Mon Nov 16 19:03:07 PST 2015


On Mon, Nov 16, 2015 at 5:17 PM, Li, Charles <
charles_li at playstation.sony.com> wrote:

> Hi Everyone,
>
>
>
> Here is the forth Lit tests C++11 compatibility patch.
>
> This patch mainly added new diagnostics expected for C++11.
>
> There are 34 tests in total. They fall into 3 categories.
>
>
>
>   [2 tests]  New Warnings regarding storage class specifier
> “register”/”auto” being deprecated/not-allowed.
>
>   [18 Tests] New Note “candidate constructor (the implicit move
> constructor) not viable” accompanying existing Error “no matching
> constructor”
>
>   [14 Tests] New Note “candidate function (the implicit move assignment
> operator) not viable” accompanying existing Error “no viable overloaded '='”
>
>
>
>
>
> There is a walkthrough of each test
>
> CXX/basic/basic.lookup/basic.lookup.argdep/p4.cpp
>
>   Added “move constructor” message
>
>
>
> CXX/basic/basic.lookup/basic.lookup.qual/namespace.qual/p2.cpp
>
>   Added “move constructor” message
>
>   Note: Also restricted expected Warning “inline namespaces are a C++11
> feature” to C++98/03 and earlier
>
>
>
> CXX/basic/basic.scope/basic.scope.hiding/p2.cpp
>
>   Added “move constructor” message
>
>
>
> CXX/dcl.dcl/basic.namespace/namespace.udecl/p1.cpp
>
>   Added “move constructor” message
>
>
>
> CXX/dcl.dcl/dcl.spec/dcl.stc/p2.cpp
>
>   Added “auto” and “register” message.
>
>   The 2 messages are:
>
>      'auto' storage class specifier is not permitted in C++11, and will
> not be supported in future releases
>
>      'register' storage class specifier is deprecated
>
>   Note: The original run line has option “-Wno-c++0x-compat” This is the
> default behavior in C++98/03,
>
>         “-Wno-c++0x-compat” has no effect in C++11.
>
>         To avoid confusion, I kept the original run line as is and added 3
> more run lines
>
>         which are default, C++98 and C++11
>

Remove the original run line here. There's no point including a -Wno-* flag
that's not actually turning off any warnings.

Otherwise, this all looks fine.


> CXX/dcl.decl/dcl.init/dcl.init.ref/p5-var.cpp
>
>   Added “move constructor” message
>
>
>
> CXX/temp/temp.decls/temp.class/temp.static/p1-inst.cpp
>
>   Added “move constructor” message
>
>
>
> CXX/temp/temp.decls/temp.class/temp.static/p1.cpp
>
>   Added “move constructor” message
>
>
>
> CXX/temp/temp.param/p3.cpp
>
>   Added “move constructor” message
>
>
>
> CXX/temp/temp.spec/temp.explicit/p1.cpp
>
>   Added “move constructor” message
>
>
>
> OpenMP/for_reduction_messages.cpp
>
>   Added “move assignment operator” message
>
>
>
> OpenMP/for_simd_reduction_messages.cpp
>
>   Added “move assignment operator” message
>
>
>
> OpenMP/parallel_for_reduction_messages.cpp
>
>   Added “move assignment operator” message
>
>
>
> OpenMP/parallel_for_simd_reduction_messages.cpp
>
>   Added “move assignment operator” message
>
>
>
> OpenMP/parallel_reduction_messages.cpp
>
>   Added “move assignment operator” message
>
>
>
> OpenMP/parallel_sections_reduction_messages.cpp
>
>   Added “move assignment operator” message
>
>
>
> OpenMP/sections_reduction_messages.cpp
>
>   Added “move assignment operator” message
>
>
>
> OpenMP/simd_reduction_messages.cpp
>
>   Added “move assignment operator” message
>
>
>
> OpenMP/teams_reduction_messages.cpp
>
>   Added “move assignment operator” message
>
>
>
> SemaCXX/constructor-initializer.cpp
>
>   Added “move constructor” message
>
>
>
> SemaCXX/converting-constructor.cpp
>
>   Added “move constructor” message
>
>
>
> SemaCXX/crashes.cpp
>
>   Added “move constructor” message
>
>
>
> SemaCXX/default1.cpp
>
>   Added “move constructor” message
>
>
>
> SemaCXX/direct-initializer.cpp
>
>   Added “move constructor” message
>
>
>
> SemaCXX/expressions.cpp
>
>  Added “'register' storage class specifier is deprecated” message
>
>
>
> SemaCXX/namespace.cpp
>
>   Added “move assignment operator” message
>
>
>
> SemaCXX/overload-call-copycon.cpp
>
>   Added “move constructor” message
>
>
>
> SemaCXX/overloaded-builtin-operators.cpp
>
>   Added “move assignment operator” message
>
>
>
> SemaCXX/vector.cpp
>
>   Added “move assignment operator” message
>
>
>
> SemaTemplate/class-template-ctor-initializer.cpp
>
>   Added “move assignment operator” message
>
>
>
> SemaTemplate/constructor-template.cpp
>
>   Added “move constructor” message
>
>
>
> SemaTemplate/default-expr-arguments.cpp
>
>   Added “move constructor” message
>
>
>
> SemaTemplate/fun-template-def.cpp
>
>   Added “move constructor” message
>
>
>
> SemaTemplate/qualified-names-diag.cpp
>
>   Added “move assignment operator” message
>
>
>
>
>
> All feed backs are welcome.
>
>
>
> Thank you.
>
> Charles Li
>
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/cfe-commits/attachments/20151116/8db40e58/attachment-0001.html>


More information about the cfe-commits mailing list