From 8aee78c8d0eb06334571e596f6fbdf7ed5756f0c Mon Sep 17 00:00:00 2001 From: Boris Kolpackov Date: Wed, 8 Feb 2017 09:24:07 +0200 Subject: Tighten target constness further --- build2/cli/target.cxx | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) (limited to 'build2/cli/target.cxx') diff --git a/build2/cli/target.cxx b/build2/cli/target.cxx index 48dc95b..200f6f0 100644 --- a/build2/cli/target.cxx +++ b/build2/cli/target.cxx @@ -32,10 +32,15 @@ namespace build2 // cli.cxx // group_view cli_cxx:: - group_members (action_type) const + group_members (action_type) { + static_assert (offsetof (cli_cxx_members, i) - + offsetof (cli_cxx_members, h) == sizeof (target*) * 2, + "member layout incompatible with array"); + return h != nullptr - ? group_view {m, (i != nullptr ? 3U : 2U)} + ? group_view {reinterpret_cast (&h), + (i != nullptr ? 3U : 2U)} : group_view {nullptr, 0}; } -- cgit v1.1