diff options
author | Boris Kolpackov <boris@codesynthesis.com> | 2019-06-26 12:28:05 +0200 |
---|---|---|
committer | Boris Kolpackov <boris@codesynthesis.com> | 2019-06-26 12:28:05 +0200 |
commit | d1fbcace59846d55c66e741dbc3d59e20ae3e5cf (patch) | |
tree | af1325d7d519bda64535f602c8ea1a3147b97b31 /build2/cc/compile-rule.cxx | |
parent | dc3d7c5fa4062cac36d718766504c87696a3de41 (diff) |
Fix C/C++ link rule matching ambiguity by seeing-through utility libraries
Diffstat (limited to 'build2/cc/compile-rule.cxx')
-rw-r--r-- | build2/cc/compile-rule.cxx | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/build2/cc/compile-rule.cxx b/build2/cc/compile-rule.cxx index 1ea3800..a1796eb 100644 --- a/build2/cc/compile-rule.cxx +++ b/build2/cc/compile-rule.cxx @@ -384,7 +384,7 @@ namespace build2 if (const target* pt = p.load ()) { if (const libx* l = pt->is_a<libx> ()) - pt = &link_member (*l, a, li); + pt = link_member (*l, a, li); bool la; if (!((la = pt->is_a<liba> ()) || @@ -435,7 +435,7 @@ namespace build2 if (const target* pt = p.load ()) { if (const libx* l = pt->is_a<libx> ()) - pt = &link_member (*l, a, li); + pt = link_member (*l, a, li); bool la; if (!((la = pt->is_a<liba> ()) || @@ -489,7 +489,7 @@ namespace build2 if (const target* pt = p.load ()) { if (const libx* l = pt->is_a<libx> ()) - pt = &link_member (*l, a, li); + pt = link_member (*l, a, li); bool la; if (!((la = pt->is_a<liba> ()) || @@ -741,7 +741,7 @@ namespace build2 pt = &p.search (t); if (const libx* l = pt->is_a<libx> ()) - pt = &link_member (*l, a, li); + pt = link_member (*l, a, li); } else continue; @@ -4713,7 +4713,7 @@ namespace build2 const target* lt (nullptr); if (const libx* l = pt->is_a<libx> ()) - lt = &link_member (*l, a, li); + lt = link_member (*l, a, li); else if (pt->is_a<liba> () || pt->is_a<libs> () || pt->is_a<libux> ()) lt = pt; |