aboutsummaryrefslogtreecommitdiff
path: root/build2/cxx
diff options
context:
space:
mode:
authorKaren Arutyunov <karen@codesynthesis.com>2016-06-28 13:00:14 +0300
committerKaren Arutyunov <karen@codesynthesis.com>2016-07-01 15:46:53 +0300
commitec7b7e37ce97d25adc209befb2c12cf16eb06ef1 (patch)
treebcb5b911b0d6579cf1d8c2e6ca4ac13383ca08f9 /build2/cxx
parent86db4fb7388285adc24e3aa6eb3f7ec68efd15f4 (diff)
Port to MSVC
Diffstat (limited to 'build2/cxx')
-rw-r--r--build2/cxx/target.cxx14
-rw-r--r--build2/cxx/utility.cxx6
2 files changed, 10 insertions, 10 deletions
diff --git a/build2/cxx/target.cxx b/build2/cxx/target.cxx
index c5b5080..22ace50 100644
--- a/build2/cxx/target.cxx
+++ b/build2/cxx/target.cxx
@@ -10,9 +10,9 @@ namespace build2
{
namespace cxx
{
- constexpr const char ext_var[] = "extension";
+ extern const char ext_var[] = "extension"; // VC 19 rejects constexpr.
- constexpr const char hxx_ext_def[] = "hxx";
+ extern const char hxx_ext_def[] = "hxx";
const target_type hxx::static_type
{
"hxx",
@@ -24,7 +24,7 @@ namespace build2
false
};
- constexpr const char ixx_ext_def[] = "ixx";
+ extern const char ixx_ext_def[] = "ixx";
const target_type ixx::static_type
{
"ixx",
@@ -36,7 +36,7 @@ namespace build2
false
};
- constexpr const char txx_ext_def[] = "txx";
+ extern const char txx_ext_def[] = "txx";
const target_type txx::static_type
{
"txx",
@@ -48,7 +48,7 @@ namespace build2
false
};
- constexpr const char cxx_ext_def[] = "cxx";
+ extern const char cxx_ext_def[] = "cxx";
const target_type cxx::static_type
{
"cxx",
@@ -60,7 +60,7 @@ namespace build2
false
};
- constexpr const char h_ext_def[] = "h";
+ extern const char h_ext_def[] = "h";
const target_type h::static_type
{
"h",
@@ -72,7 +72,7 @@ namespace build2
false
};
- constexpr const char c_ext_def[] = "c";
+ extern const char c_ext_def[] = "c";
const target_type c::static_type
{
"c",
diff --git a/build2/cxx/utility.cxx b/build2/cxx/utility.cxx
index 0f4eb08..ed57fd2 100644
--- a/build2/cxx/utility.cxx
+++ b/build2/cxx/utility.cxx
@@ -36,9 +36,9 @@ namespace build2
// @@ Is mapping for 14 and 17 correct? Maybe Update 2 for 14?
//
- if ((v == "11" && cver <= 16) || // C++11 since VS2010/10.0.
- (v == "14" && cver <= 19) || // C++14 since VS2015/14.0.
- (v == "17" && cver <= 20)) // C++17 since VS20??/15.0.
+ if ((v == "11" && cver < 16) || // C++11 since VS2010/10.0.
+ (v == "14" && cver < 19) || // C++14 since VS2015/14.0.
+ (v == "17" && cver < 20)) // C++17 since VS20??/15.0.
{
fail << "C++" << v << " is not supported by "
<< cast<string> (rs["cxx.signature"]) <<