diff options
author | Boris Kolpackov <boris@codesynthesis.com> | 2019-01-09 13:09:18 +0200 |
---|---|---|
committer | Boris Kolpackov <boris@codesynthesis.com> | 2019-01-09 13:09:18 +0200 |
commit | 8e904346350cff0453c8bcd524a40a631fc05485 (patch) | |
tree | f096ad1e87d8a814c6e00c179c8849ed646e0989 /build2/cc/target.hxx | |
parent | ba8ce9226af026f873883b7d4e29079bbfece586 (diff) |
Tighten cc rules matching
Specifically, make sure the rule does not match if there is a c-common
prerequisites that it doesn't recognize.
Diffstat (limited to 'build2/cc/target.hxx')
-rw-r--r-- | build2/cc/target.hxx | 12 |
1 files changed, 6 insertions, 6 deletions
diff --git a/build2/cc/target.hxx b/build2/cc/target.hxx index 4fb38cb..395c233 100644 --- a/build2/cc/target.hxx +++ b/build2/cc/target.hxx @@ -14,10 +14,10 @@ namespace build2 { namespace cc { - // This is an abstract base target for all c-common source files. We use - // this arrangement in rule matching to detect "unknown" (to this rule) - // source files that it cannot handle but should not ignore either. For - // example, a C link rule that sees a C++ source file. + // This is an abstract base target for all c-common header/source files. + // We use this arrangement during rule matching to detect "unknown" (to + // this rule) source/header files that it cannot handle but should not + // ignore either. For example, a C link rule that sees a C++ source file. // class cc: public file { @@ -32,10 +32,10 @@ namespace build2 // There is hardly a c-family compilation without a C header inclusion. // As a result, this target type is registered for any c-family module. // - class h: public file + class h: public cc { public: - using file::file; + using cc::cc; public: static const target_type static_type; |