aboutsummaryrefslogtreecommitdiff
path: root/build2/bin/target
diff options
context:
space:
mode:
Diffstat (limited to 'build2/bin/target')
-rw-r--r--build2/bin/target32
1 files changed, 16 insertions, 16 deletions
diff --git a/build2/bin/target b/build2/bin/target
index 4157f67..35bde60 100644
--- a/build2/bin/target
+++ b/build2/bin/target
@@ -51,12 +51,6 @@ namespace build2
public:
using target::target;
- // Group members.
- //
- const_ptr<obje> e = nullptr;
- const_ptr<obja> a = nullptr;
- const_ptr<objs> s = nullptr;
-
public:
static const target_type static_type;
virtual const target_type& dynamic_type () const {return static_type;}
@@ -81,26 +75,32 @@ namespace build2
public:
static const target_type static_type;
- virtual const target_type& dynamic_type () const {return static_type;}
+
+ virtual const target_type&
+ dynamic_type () const override {return static_type;}
+ };
+
+ // Standard layout type compatible with group_view's const target*[2].
+ //
+ struct lib_members
+ {
+ const liba* a = nullptr;
+ const libs* s = nullptr;
};
- class lib: public target
+ class lib: public target, public lib_members
{
public:
using target::target;
- // Group members.
- //
- const_ptr<liba> a = nullptr;
- const_ptr<libs> s = nullptr;
+ virtual group_view
+ group_members (action_type) const override;
public:
static const target_type static_type;
- virtual const target_type& dynamic_type () const override
- {
- return static_type;
- }
+ virtual const target_type&
+ dynamic_type () const override {return static_type;}
};
// Windows import library.