aboutsummaryrefslogtreecommitdiff
path: root/gcc/builtins.c
diff options
context:
space:
mode:
authorJonathan Wakely <jwakely@redhat.com>2018-10-02 15:00:50 +0100
committerJonathan Wakely <redi@gcc.gnu.org>2018-10-02 15:00:50 +0100
commit469218a3f9b8f72b38d82dd978ec231ab3de14ef (patch)
treea69a6ba487c13ad4ce8f595f485a8f2f0daefdf1 /gcc/builtins.c
parentf512bf3ee95914b30ba67f80ca42a72ec630738f (diff)
downloadgcc-469218a3f9b8f72b38d82dd978ec231ab3de14ef.zip
gcc-469218a3f9b8f72b38d82dd978ec231ab3de14ef.tar.gz
gcc-469218a3f9b8f72b38d82dd978ec231ab3de14ef.tar.bz2
Avoid redundant runtime checks in std::visit
Calling std::get will check some static assertions and also do a runtime check for a valid index before calling __detail::__variant::__get. The std::visit function already handles the case where any variant has an invalid index, so __get can be used directly in __visit_invoke. * include/std/variant (__gen_vtable_impl::__visit_invoke): Call __get directly instead of get, as caller ensures correct index is used. (holds_alternative, get, get_if): Remove redundant inline specifiers. (_VARIANT_RELATION_FUNCTION_TEMPLATE): Likewise. From-SVN: r264786
Diffstat (limited to 'gcc/builtins.c')
0 files changed, 0 insertions, 0 deletions