aboutsummaryrefslogtreecommitdiff
path: root/build2/cc/compile-rule.cxx
diff options
context:
space:
mode:
authorBoris Kolpackov <boris@codesynthesis.com>2019-05-15 12:57:38 +0200
committerBoris Kolpackov <boris@codesynthesis.com>2019-05-15 12:57:38 +0200
commite0b72f24c3e7ea14dc8da54dc0bfc62f43334f3b (patch)
treea6fa29d4fd507592ec98fa56643c4775b835efe0 /build2/cc/compile-rule.cxx
parentfbc9a384e013fdb38b56f42e3850915474cb5785 (diff)
Cleanup clean_extra() mess (pun intended)
Diffstat (limited to 'build2/cc/compile-rule.cxx')
-rw-r--r--build2/cc/compile-rule.cxx13
1 files changed, 6 insertions, 7 deletions
diff --git a/build2/cc/compile-rule.cxx b/build2/cc/compile-rule.cxx
index 3458a1b..bdfa0f0 100644
--- a/build2/cc/compile-rule.cxx
+++ b/build2/cc/compile-rule.cxx
@@ -5880,18 +5880,17 @@ namespace build2
{
const file& t (xt.as<file> ());
- using ct = compiler_type;
+ clean_extras extras;
switch (ctype)
{
- case ct::gcc: return clean_extra (a, t, {".d", x_pext, ".t"});
- case ct::clang: return clean_extra (a, t, {".d", x_pext});
- case ct::msvc: return clean_extra (a, t, {".d", x_pext, ".idb", ".pdb"});
- case ct::icc: return clean_extra (a, t, {".d"});
+ case compiler_type::gcc: extras = {".d", x_pext, ".t"}; break;
+ case compiler_type::clang: extras = {".d", x_pext}; break;
+ case compiler_type::msvc: extras = {".d", x_pext, ".idb", ".pdb"};break;
+ case compiler_type::icc: extras = {".d"}; break;
}
- assert (false);
- return target_state::unchanged;
+ return perform_clean_extra (a, t, extras);
}
}
}