r272000 - in /trunk/libstdc++-v3: ChangeLog inc...

redi@gcc.gnu.org redi@gcc.gnu.org
Thu Jun 6 12:13:00 GMT 2019


Author: redi
Date: Thu Jun  6 12:13:47 2019
New Revision: 272000

URL: https://gcc.gnu.org/viewcvs?rev=272000&root=gcc&view=rev
Log:
Remove redundant static assertions in [meta.unary.prop] traits

The type property predicates that are implemented by a compiler builtin
already do the right checks in the compiler. The checks for complete
type or unbounded arrays were wrong for these types anyway.

	* include/std/type_traits (is_empty, is_polymorphic, is_final)
	(is_abstract, is_aggregate): Remove static_assert.
	* testsuite/20_util/is_abstract/incomplete_neg.cc: Check for error
	from builtin only.
	* testsuite/20_util/is_aggregate/incomplete_neg.cc: Likewise. Add
	missing -std=gnu++17 option.
	* testsuite/20_util/is_empty/incomplete_neg.cc: New test.
	* testsuite/20_util/is_final/incomplete_neg.cc: New test.
	* testsuite/20_util/is_polymorphic/incomplete_neg.cc: Check for error
	from builtin only.

Added:
    trunk/libstdc++-v3/testsuite/20_util/is_empty/incomplete_neg.cc
      - copied, changed from r271999, trunk/libstdc++-v3/testsuite/20_util/is_polymorphic/incomplete_neg.cc
    trunk/libstdc++-v3/testsuite/20_util/is_final/incomplete_neg.cc
      - copied, changed from r271999, trunk/libstdc++-v3/testsuite/20_util/is_aggregate/incomplete_neg.cc
Modified:
    trunk/libstdc++-v3/ChangeLog
    trunk/libstdc++-v3/include/std/type_traits
    trunk/libstdc++-v3/testsuite/20_util/is_abstract/incomplete_neg.cc
    trunk/libstdc++-v3/testsuite/20_util/is_aggregate/incomplete_neg.cc
    trunk/libstdc++-v3/testsuite/20_util/is_polymorphic/incomplete_neg.cc



More information about the Libstdc++-cvs mailing list