clang -std=cxx11 build failure
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Inkscape |
Fix Released
|
High
|
Jon A. Cruz |
Bug Description
Build of trunk fails when building with Apple clang -std=cxx11 on Mac OS X 10.7 (Lion), 10.8 (Mountain Lion), 10.9 (Mavericks) using the default Xcode version for each platform.
See <https:/
Mode of failure:
extension/
float spacings[2] = { scale*module-
extension/
float spacings[2] = { scale*module-
extension/
extension/
extension/
float offsets[2] = { scale*module-
extension/
float offsets[2] = { scale*module-
extension/
extension/
4 errors generated.
make[3]: *** [extension/
As the error messages say using a double expression as an initializer for a float variable is not allowed in C++11 without
an explicit cast. The attached patch solves the problem and is currently being used with success on MacPorts.
This bug can be demonstrated with current inkscape trunk (r13158) but was introduced in r13018.
Related branches
Changed in inkscape: | |
status: | New → Triaged |
Changed in inkscape: | |
status: | Fix Committed → Fix Released |
Patched trunk (r13156) builds ok on OS X 10.7.5 with
- regular builds (i.e. not using C++11) with llvm-gcc-4.2 and clang 3.1 (Xcode 4.3.2)
- experimental build configured with '-std=c++11 -stdlib=libstdc++' with clang 3.1 (requires the patch)