]> gcc.gnu.org Git - gcc.git/commit
c++: Implement __is_pointer built-in trait
authorKen Matsui <kmatsui@gcc.gnu.org>
Mon, 10 Jul 2023 00:49:08 +0000 (17:49 -0700)
committerKen Matsui <kmatsui@gcc.gnu.org>
Fri, 3 May 2024 19:26:36 +0000 (12:26 -0700)
commitcb5d904c775ed7172f8dd7565ec7f5395503d06f
treeaa2e8ae0d594dde08f691e524efb0d47697e6c4b
parent9b51b3e79e4b0533bd2b37dcf734ed4a0739af3c
c++: Implement __is_pointer built-in trait

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

gcc/cp/ChangeLog:

* cp-trait.def: Define __is_pointer.
* constraint.cc (diagnose_trait_expr): Handle CPTK_IS_POINTER.
* semantics.cc (trait_expr_value): Likewise.
(finish_trait_expr): Likewise.

gcc/testsuite/ChangeLog:

* g++.dg/ext/has-builtin-1.C: Test existence of __is_pointer.
Arrange the order lexically around __is_pointer.
* g++.dg/ext/is_pointer.C: New test.

Signed-off-by: Ken Matsui <kmatsui@gcc.gnu.org>
Reviewed-by: Jason Merrill <jason@redhat.com>
gcc/cp/constraint.cc
gcc/cp/cp-trait.def
gcc/cp/semantics.cc
gcc/testsuite/g++.dg/ext/has-builtin-1.C
gcc/testsuite/g++.dg/ext/is_pointer.C [new file with mode: 0644]
This page took 0.066342 seconds and 5 git commands to generate.