c++: Implement __decay built-in trait
commit142d1d8e057c0e6da7f4e6eba4cc265c556d2dd8
authorKen Matsui <kmatsui@gcc.gnu.org>
Thu, 15 Feb 2024 12:43:41 +0000 (15 04:43 -0800)
committerKen Matsui <kmatsui@gcc.gnu.org>
Sat, 11 May 2024 01:17:32 +0000 (10 18:17 -0700)
treea81c87d47383b0e745676e3e3ca8f78e213feb72
parent85c2ba4244196dcccdf0647ff49f376c52513f65
c++: Implement __decay built-in trait

This patch implements built-in trait for std::decay.

gcc/cp/ChangeLog:

* cp-trait.def: Define __decay.
* semantics.cc (finish_trait_type): Handle CPTK_DECAY.

gcc/testsuite/ChangeLog:

* g++.dg/ext/has-builtin-1.C: Test existence of __decay.
* g++.dg/ext/decay.C: New test.

Signed-off-by: Ken Matsui <kmatsui@gcc.gnu.org>
Reviewed-by: Jason Merrill <jason@redhat.com>
gcc/cp/cp-trait.def
gcc/cp/semantics.cc
gcc/testsuite/g++.dg/ext/decay.C [new file with mode: 0644]
gcc/testsuite/g++.dg/ext/has-builtin-1.C