aboutsummaryrefslogtreecommitdiff
path: root/build2/cc/install-rule.cxx
diff options
context:
space:
mode:
authorBoris Kolpackov <boris@codesynthesis.com>2019-06-26 12:28:05 +0200
committerBoris Kolpackov <boris@codesynthesis.com>2019-06-26 12:28:05 +0200
commitd1fbcace59846d55c66e741dbc3d59e20ae3e5cf (patch)
treeaf1325d7d519bda64535f602c8ea1a3147b97b31 /build2/cc/install-rule.cxx
parentdc3d7c5fa4062cac36d718766504c87696a3de41 (diff)
Fix C/C++ link rule matching ambiguity by seeing-through utility libraries
Diffstat (limited to 'build2/cc/install-rule.cxx')
-rw-r--r--build2/cc/install-rule.cxx4
1 files changed, 2 insertions, 2 deletions
diff --git a/build2/cc/install-rule.cxx b/build2/cc/install-rule.cxx
index 00e8a63..5f8722b 100644
--- a/build2/cc/install-rule.cxx
+++ b/build2/cc/install-rule.cxx
@@ -57,7 +57,7 @@ namespace build2
// link. For libu*{} we want the "see through" logic.
//
if (const libx* l = pt->is_a<libx> ())
- pt = &link_member (*l, a, link_info (t.base_scope (), ot));
+ pt = link_member (*l, a, link_info (t.base_scope (), ot));
// Note: not redundant since we are returning a member.
//
@@ -285,7 +285,7 @@ namespace build2
const target* pt (&search (t, p));
if (const libx* l = pt->is_a<libx> ())
- pt = &link_member (*l, a, link_info (t.base_scope (), ot));
+ pt = link_member (*l, a, link_info (t.base_scope (), ot));
if ((st && pt->is_a<libs> ()) || (at && pt->is_a<liba> ()))
return pt->in (t.weak_scope ()) ? pt : nullptr;