Building Swift 2.2.1 on macOS High Sierra (10.13)

I'm using swiftenv (https://github.com/kylef/swiftenv\) to install Swift
versions 2 and 3, so I can work with some older projects.

Swift 3.1.1 installed perfectly first try. Been through a few iterations,
though, trying to install 2.2.1.

Installed CMake 3.9.4, Ninja 1.8.2, then Python 3.6.3. Seemed to almost
make it through - then failed again, and I'm not sure what's happening with
this one.

I'd appreciate any help you can offer! Here is the end of my log, starting
with the failure:

[136/665] Building CXX object
lib/SILGen/CMakeFiles/swiftSILGen.dir/SILGenProfiling.cpp.o
FAILED: lib/SILGen/CMakeFiles/swiftSILGen.dir/SILGenProfiling.cpp.o
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang++
-DGTEST_HAS_RTTI=0 -D_DEBUG -D__STDC_CONSTANT_MACROS
-D__STDC_FORMAT_MACROS -D__STDC_LIMIT_MACROS -Ilib/SILGen
-I/Users/username/.swiftenv/tmp/swiftenv-build-2.2.1/swift/lib/SILGen
-I/Users/username/.swiftenv/tmp/swiftenv-build-2.2.1/swift/include
-Iinclude -I/Users/username/.swiftenv/tmp/swiftenv-build-2.2.1/build/Ninja-ReleaseAssert/llvm-macosx-x86_64/include
-I/Users/username/.swiftenv/tmp/swiftenv-build-2.2.1/llvm/include
-I/Users/username/.swiftenv/tmp/swiftenv-build-2.2.1/build/Ninja-ReleaseAssert/llvm-macosx-x86_64/tools/clang/include
-I/Users/username/.swiftenv/tmp/swiftenv-build-2.2.1/llvm/tools/clang/include
-I/Users/username/.swiftenv/tmp/swiftenv-build-2.2.1/cmark/src
-I/Users/username/.swiftenv/tmp/swiftenv-build-2.2.1/build/Ninja-ReleaseAssert/cmark-macosx-x86_64/src
-fno-stack-protector -stdlib=libc++ -fPIC -fvisibility-inlines-hidden
-Wall -W -Wno-unused-parameter -Wwrite-strings -Wcast-qual
-Wmissing-field-initializers -Wcovered-switch-default
-Wnon-virtual-dtor -Werror=date-time -std=c++11 -fcolor-diagnostics
-Wdocumentation -Wimplicit-fallthrough -Wunreachable-code
-Woverloaded-virtual -O3 -UNDEBUG -fno-exceptions -fno-rtti
-target x86_64-apple-macosx10.9 -isysroot
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.13.sdk
-arch x86_64 -F
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.13.sdk/../../../Developer/Library/Frameworks
-mmacosx-version-min=10.9 -O2 -momit-leaf-frame-pointer -g0 -UNDEBUG
-MD -MT lib/SILGen/CMakeFiles/swiftSILGen.dir/SILGenProfiling.cpp.o
-MF lib/SILGen/CMakeFiles/swiftSILGen.dir/SILGenProfiling.cpp.o.d -o
lib/SILGen/CMakeFiles/swiftSILGen.dir/SILGenProfiling.cpp.o -c
/Users/username/.swiftenv/tmp/swiftenv-build-2.2.1/swift/lib/SILGen/SILGenProfiling.cpp
In file included from
/Users/username/.swiftenv/tmp/swiftenv-build-2.2.1/swift/lib/SILGen/SILGenProfiling.cpp:13:
In file included from
/Users/username/.swiftenv/tmp/swiftenv-build-2.2.1/swift/lib/SILGen/SILGenProfiling.h:16:
In file included from
/Users/username/.swiftenv/tmp/swiftenv-build-2.2.1/llvm/include/llvm/ADT/DenseMap.h:17:
In file included from
/Users/username/.swiftenv/tmp/swiftenv-build-2.2.1/llvm/include/llvm/ADT/DenseMapInfo.h:17:
In file included from
/Users/username/.swiftenv/tmp/swiftenv-build-2.2.1/llvm/include/llvm/ADT/ArrayRef.h:13:
In file included from
/Users/username/.swiftenv/tmp/swiftenv-build-2.2.1/llvm/include/llvm/ADT/Hashing.h:48:
In file included from
/Users/username/.swiftenv/tmp/swiftenv-build-2.2.1/build/Ninja-ReleaseAssert/llvm-macosx-x86_64/include/llvm/Support/DataTypes.h:35:
In file included from
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include/c++/v1/cmath:305:
In file included from
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include/c++/v1/math.h:309:
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include/c++/v1/type_traits:1301:38:
error: incomplete type 'swift::Expr' used in type trait expression
    : public integral_constant<bool, __is_abstract(_Tp)> {};
                                     ^
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include/c++/v1/type_traits:1374:39:
note: in instantiation of template class
'std::__1::is_abstract<swift::Expr>' requested here
                                     !is_abstract<_T2>::value> {};
                                      ^
/Users/username/.swiftenv/tmp/swiftenv-build-2.2.1/swift/include/swift/Basic/NullablePtr.h:40:22:
note: in instantiation of template class
'std::__1::is_convertible<swift::Expr, swift::Expr>' requested here
                std::is_convertible<OtherT, T>::value,
                     ^
/Users/username/.swiftenv/tmp/swiftenv-build-2.2.1/swift/include/swift/Basic/NullablePtr.h:30:7:
note: while substituting deduced template arguments into function
template 'NullablePtr' [with OtherT = swift::Expr]
class NullablePtr {
      ^
/Users/username/.swiftenv/tmp/swiftenv-build-2.2.1/swift/include/swift/AST/ASTNode.h:24:9:
note: forward declaration of 'swift::Expr'
  class Expr;
        ^
1 error generated.
[137/665] Building CXX object
lib/SILGen/CMakeFiles/swiftSILGen.dir/SILGenExpr.cpp.o
[138/665] Building CXX object
lib/SILGen/CMakeFiles/swiftSILGen.dir/SILGenLValue.cpp.o
[139/665] Building CXX object
lib/SILGen/CMakeFiles/swiftSILGen.dir/SILGenPoly.cpp.o
[140/665] Building CXX object
lib/SILGen/CMakeFiles/swiftSILGen.dir/SILGenProlog.cpp.o
[141/665] Building CXX object
lib/SILGen/CMakeFiles/swiftSILGen.dir/SILGenStmt.cpp.o
[142/665] Building CXX object
lib/SILGen/CMakeFiles/swiftSILGen.dir/SILGenType.cpp.o
[143/665] Building CXX object
lib/SILGen/CMakeFiles/swiftSILGen.dir/SILGenPattern.cpp.o
ninja: build stopped: subcommand failed.
./utils/build-script: command terminated with a non-zero exit status 1, aborting

Kyle says he's able to reproduce this, and since swiftenv is a minimal
wrapper around the Swift build process, he believes it to be a Swift/High
Sierra issue (
Swift 2.2.1 build fails on MacOS High Sierra · Issue #103 · kylef/swiftenv · GitHub).

Any thoughts on what we might do to fix this so I can build Swift 2.2.1 on
High Sierra?

- leanne

Instead of building Swift yourself, can you download and run Xcode 7 instead?

Slava

···

On Nov 18, 2017, at 7:19 PM, leanne via swift-dev <swift-dev@swift.org> wrote:

I'm using swiftenv (https://github.com/kylef/swiftenv\) to install Swift versions 2 and 3, so I can work with some older projects.

Swift 3.1.1 installed perfectly first try. Been through a few iterations, though, trying to install 2.2.1.

Installed CMake 3.9.4, Ninja 1.8.2, then Python 3.6.3. Seemed to almost make it through - then failed again, and I'm not sure what's happening with this one.

I'd appreciate any help you can offer! Here is the end of my log, starting with the failure:

[136/665] Building CXX object lib/SILGen/CMakeFiles/swiftSILGen.dir/SILGenProfiling.cpp.o
FAILED: lib/SILGen/CMakeFiles/swiftSILGen.dir/SILGenProfiling.cpp.o
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang++ -DGTEST_HAS_RTTI=0 -D_DEBUG -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -D__STDC_LIMIT_MACROS -Ilib/SILGen -I/Users/username/.swiftenv/tmp/swiftenv-build-2.2.1/swift/lib/SILGen -I/Users/username/.swiftenv/tmp/swiftenv-build-2.2.1/swift/include -Iinclude -I/Users/username/.swiftenv/tmp/swiftenv-build-2.2.1/build/Ninja-ReleaseAssert/llvm-macosx-x86_64/include -I/Users/username/.swiftenv/tmp/swiftenv-build-2.2.1/llvm/include -I/Users/username/.swiftenv/tmp/swiftenv-build-2.2.1/build/Ninja-ReleaseAssert/llvm-macosx-x86_64/tools/clang/include -I/Users/username/.swiftenv/tmp/swiftenv-build-2.2.1/llvm/tools/clang/include -I/Users/username/.swiftenv/tmp/swiftenv-build-2.2.1/cmark/src -I/Users/username/.swiftenv/tmp/swiftenv-build-2.2.1/build/Ninja-ReleaseAssert/cmark-macosx-x86_64/src -fno-stack-protector -stdlib=libc++ -fPIC -fvisibility-inlines-hidden -Wall -W -Wno-unused-parameter -Wwrite-strings -Wcast-qual -Wmissing-field-initializers -Wcovered-switch-default -Wnon-virtual-dtor -Werror=date-time -std=c++11 -fcolor-diagnostics -Wdocumentation -Wimplicit-fallthrough -Wunreachable-code -Woverloaded-virtual -O3 -UNDEBUG -fno-exceptions -fno-rtti -target x86_64-apple-macosx10.9 -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.13.sdk -arch x86_64 -F /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.13.sdk/../../../Developer/Library/Frameworks -mmacosx-version-min=10.9 -O2 -momit-leaf-frame-pointer -g0 -UNDEBUG -MD -MT lib/SILGen/CMakeFiles/swiftSILGen.dir/SILGenProfiling.cpp.o -MF lib/SILGen/CMakeFiles/swiftSILGen.dir/SILGenProfiling.cpp.o.d -o lib/SILGen/CMakeFiles/swiftSILGen.dir/SILGenProfiling.cpp.o -c /Users/username/.swiftenv/tmp/swiftenv-build-2.2.1/swift/lib/SILGen/SILGenProfiling.cpp
In file included from /Users/username/.swiftenv/tmp/swiftenv-build-2.2.1/swift/lib/SILGen/SILGenProfiling.cpp:13:
In file included from /Users/username/.swiftenv/tmp/swiftenv-build-2.2.1/swift/lib/SILGen/SILGenProfiling.h:16:
In file included from /Users/username/.swiftenv/tmp/swiftenv-build-2.2.1/llvm/include/llvm/ADT/DenseMap.h:17:
In file included from /Users/username/.swiftenv/tmp/swiftenv-build-2.2.1/llvm/include/llvm/ADT/DenseMapInfo.h:17:
In file included from /Users/username/.swiftenv/tmp/swiftenv-build-2.2.1/llvm/include/llvm/ADT/ArrayRef.h:13:
In file included from /Users/username/.swiftenv/tmp/swiftenv-build-2.2.1/llvm/include/llvm/ADT/Hashing.h:48:
In file included from /Users/username/.swiftenv/tmp/swiftenv-build-2.2.1/build/Ninja-ReleaseAssert/llvm-macosx-x86_64/include/llvm/Support/DataTypes.h:35:
In file included from /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include/c++/v1/cmath:305:
In file included from /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include/c++/v1/math.h:309:
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include/c++/v1/type_traits:1301:38: error: incomplete type 'swift::Expr' used in type trait expression
    : public integral_constant<bool, __is_abstract(_Tp)> {};
                                     ^
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include/c++/v1/type_traits:1374:39: note: in instantiation of template class 'std::__1::is_abstract<swift::Expr>' requested here
                                     !is_abstract<_T2>::value> {};
                                      ^
/Users/username/.swiftenv/tmp/swiftenv-build-2.2.1/swift/include/swift/Basic/NullablePtr.h:40:22: note: in instantiation of template class 'std::__1::is_convertible<swift::Expr, swift::Expr>' requested here
                std::is_convertible<OtherT, T>::value,
                     ^
/Users/username/.swiftenv/tmp/swiftenv-build-2.2.1/swift/include/swift/Basic/NullablePtr.h:30:7: note: while substituting deduced template arguments into function template 'NullablePtr' [with OtherT = swift::Expr]
class NullablePtr {
      ^
/Users/username/.swiftenv/tmp/swiftenv-build-2.2.1/swift/include/swift/AST/ASTNode.h:24:9: note: forward declaration of 'swift::Expr'
  class Expr;
        ^
1 error generated.
[137/665] Building CXX object lib/SILGen/CMakeFiles/swiftSILGen.dir/SILGenExpr.cpp.o
[138/665] Building CXX object lib/SILGen/CMakeFiles/swiftSILGen.dir/SILGenLValue.cpp.o
[139/665] Building CXX object lib/SILGen/CMakeFiles/swiftSILGen.dir/SILGenPoly.cpp.o
[140/665] Building CXX object lib/SILGen/CMakeFiles/swiftSILGen.dir/SILGenProlog.cpp.o
[141/665] Building CXX object lib/SILGen/CMakeFiles/swiftSILGen.dir/SILGenStmt.cpp.o
[142/665] Building CXX object lib/SILGen/CMakeFiles/swiftSILGen.dir/SILGenType.cpp.o
[143/665] Building CXX object lib/SILGen/CMakeFiles/swiftSILGen.dir/SILGenPattern.cpp.o
ninja: build stopped: subcommand failed.
./utils/build-script: command terminated with a non-zero exit status 1, aborting

Kyle says he's able to reproduce this, and since swiftenv is a minimal wrapper around the Swift build process, he believes it to be a Swift/High Sierra issue (Swift 2.2.1 build fails on MacOS High Sierra · Issue #103 · kylef/swiftenv · GitHub).

Any thoughts on what we might do to fix this so I can build Swift 2.2.1 on High Sierra?

- leanne
_______________________________________________
swift-dev mailing list
swift-dev@swift.org
https://lists.swift.org/mailman/listinfo/swift-dev

Yes, I could, Slava. I was hoping not to, though. That's the point of using
swiftenv.

···

On Sat, Nov 18, 2017 at 6:24 PM, Slava Pestov <spestov@apple.com> wrote:

Instead of building Swift yourself, can you download and run Xcode 7
instead?

Slava

On Nov 18, 2017, at 7:19 PM, leanne via swift-dev <swift-dev@swift.org> > wrote:

I'm using swiftenv (https://github.com/kylef/swiftenv\) to install Swift
versions 2 and 3, so I can work with some older projects.

Swift 3.1.1 installed perfectly first try. Been through a few iterations,
though, trying to install 2.2.1.

Installed CMake 3.9.4, Ninja 1.8.2, then Python 3.6.3. Seemed to almost
make it through - then failed again, and I'm not sure what's happening with
this one.

I'd appreciate any help you can offer! Here is the end of my log, starting
with the failure:

[136/665] Building CXX object lib/SILGen/CMakeFiles/swiftSILGen.dir/SILGenProfiling.cpp.o
FAILED: lib/SILGen/CMakeFiles/swiftSILGen.dir/SILGenProfiling.cpp.o
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang++ -DGTEST_HAS_RTTI=0 -D_DEBUG -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -D__STDC_LIMIT_MACROS -Ilib/SILGen -I/Users/username/.swiftenv/tmp/swiftenv-build-2.2.1/swift/lib/SILGen -I/Users/username/.swiftenv/tmp/swiftenv-build-2.2.1/swift/include -Iinclude -I/Users/username/.swiftenv/tmp/swiftenv-build-2.2.1/build/Ninja-ReleaseAssert/llvm-macosx-x86_64/include -I/Users/username/.swiftenv/tmp/swiftenv-build-2.2.1/llvm/include -I/Users/username/.swiftenv/tmp/swiftenv-build-2.2.1/build/Ninja-ReleaseAssert/llvm-macosx-x86_64/tools/clang/include -I/Users/username/.swiftenv/tmp/swiftenv-build-2.2.1/llvm/tools/clang/include -I/Users/username/.swiftenv/tmp/swiftenv-build-2.2.1/cmark/src -I/Users/username/.swiftenv/tmp/swiftenv-build-2.2.1/build/Ninja-ReleaseAssert/cmark-macosx-x86_64/src -fno-stack-protector -stdlib=libc++ -fPIC -fvisibility-inlines-hidden -Wall -W -Wno-unused-parameter -Wwrite-strings -Wcast-qual -Wmissing-field-initializers -Wcovered-switch-default -Wnon-virtual-dtor -Werror=date-time -std=c++11 -fcolor-diagnostics -Wdocumentation -Wimplicit-fallthrough -Wunreachable-code -Woverloaded-virtual -O3 -UNDEBUG -fno-exceptions -fno-rtti -target x86_64-apple-macosx10.9 -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.13.sdk -arch x86_64 -F /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.13.sdk/../../../Developer/Library/Frameworks -mmacosx-version-min=10.9 -O2 -momit-leaf-frame-pointer -g0 -UNDEBUG -MD -MT lib/SILGen/CMakeFiles/swiftSILGen.dir/SILGenProfiling.cpp.o -MF lib/SILGen/CMakeFiles/swiftSILGen.dir/SILGenProfiling.cpp.o.d -o lib/SILGen/CMakeFiles/swiftSILGen.dir/SILGenProfiling.cpp.o -c /Users/username/.swiftenv/tmp/swiftenv-build-2.2.1/swift/lib/SILGen/SILGenProfiling.cpp
In file included from /Users/username/.swiftenv/tmp/swiftenv-build-2.2.1/swift/lib/SILGen/SILGenProfiling.cpp:13:
In file included from /Users/username/.swiftenv/tmp/swiftenv-build-2.2.1/swift/lib/SILGen/SILGenProfiling.h:16:
In file included from /Users/username/.swiftenv/tmp/swiftenv-build-2.2.1/llvm/include/llvm/ADT/DenseMap.h:17:
In file included from /Users/username/.swiftenv/tmp/swiftenv-build-2.2.1/llvm/include/llvm/ADT/DenseMapInfo.h:17:
In file included from /Users/username/.swiftenv/tmp/swiftenv-build-2.2.1/llvm/include/llvm/ADT/ArrayRef.h:13:
In file included from /Users/username/.swiftenv/tmp/swiftenv-build-2.2.1/llvm/include/llvm/ADT/Hashing.h:48:
In file included from /Users/username/.swiftenv/tmp/swiftenv-build-2.2.1/build/Ninja-ReleaseAssert/llvm-macosx-x86_64/include/llvm/Support/DataTypes.h:35:
In file included from /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include/c++/v1/cmath:305:
In file included from /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include/c++/v1/math.h:309:
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include/c++/v1/type_traits:1301:38: error: incomplete type 'swift::Expr' used in type trait expression
    : public integral_constant<bool, __is_abstract(_Tp)> {};
                                     ^
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include/c++/v1/type_traits:1374:39: note: in instantiation of template class 'std::__1::is_abstract<swift::Expr>' requested here
                                     !is_abstract<_T2>::value> {};
                                      ^
/Users/username/.swiftenv/tmp/swiftenv-build-2.2.1/swift/include/swift/Basic/NullablePtr.h:40:22: note: in instantiation of template class 'std::__1::is_convertible<swift::Expr, swift::Expr>' requested here
                std::is_convertible<OtherT, T>::value,
                     ^
/Users/username/.swiftenv/tmp/swiftenv-build-2.2.1/swift/include/swift/Basic/NullablePtr.h:30:7: note: while substituting deduced template arguments into function template 'NullablePtr' [with OtherT = swift::Expr]
class NullablePtr {
      ^
/Users/username/.swiftenv/tmp/swiftenv-build-2.2.1/swift/include/swift/AST/ASTNode.h:24:9: note: forward declaration of 'swift::Expr'
  class Expr;
        ^
1 error generated.
[137/665] Building CXX object lib/SILGen/CMakeFiles/swiftSILGen.dir/SILGenExpr.cpp.o
[138/665] Building CXX object lib/SILGen/CMakeFiles/swiftSILGen.dir/SILGenLValue.cpp.o
[139/665] Building CXX object lib/SILGen/CMakeFiles/swiftSILGen.dir/SILGenPoly.cpp.o
[140/665] Building CXX object lib/SILGen/CMakeFiles/swiftSILGen.dir/SILGenProlog.cpp.o
[141/665] Building CXX object lib/SILGen/CMakeFiles/swiftSILGen.dir/SILGenStmt.cpp.o
[142/665] Building CXX object lib/SILGen/CMakeFiles/swiftSILGen.dir/SILGenType.cpp.o
[143/665] Building CXX object lib/SILGen/CMakeFiles/swiftSILGen.dir/SILGenPattern.cpp.o
ninja: build stopped: subcommand failed.
./utils/build-script: command terminated with a non-zero exit status 1, aborting

Kyle says he's able to reproduce this, and since swiftenv is a minimal
wrapper around the Swift build process, he believes it to be a Swift/High
Sierra issue (Swift 2.2.1 build fails on MacOS High Sierra · Issue #103 · kylef/swiftenv · GitHub
issuecomment-345432864).

Any thoughts on what we might do to fix this so I can build Swift 2.2.1 on
High Sierra?

- leanne
_______________________________________________
swift-dev mailing list
swift-dev@swift.org
https://lists.swift.org/mailman/listinfo/swift-dev

What version of Xcode are you using to _build_ Swift 2.2? You might need an older Xcode for that.

Slava

···

On Nov 19, 2017, at 11:24 AM, leanne <leanne63.dev@gmail.com> wrote:

Yes, I could, Slava. I was hoping not to, though. That's the point of using swiftenv.

On Sat, Nov 18, 2017 at 6:24 PM, Slava Pestov <spestov@apple.com <mailto:spestov@apple.com>> wrote:
Instead of building Swift yourself, can you download and run Xcode 7 instead?

Slava

On Nov 18, 2017, at 7:19 PM, leanne via swift-dev <swift-dev@swift.org <mailto:swift-dev@swift.org>> wrote:

I'm using swiftenv (https://github.com/kylef/swiftenv\) to install Swift versions 2 and 3, so I can work with some older projects.

Swift 3.1.1 installed perfectly first try. Been through a few iterations, though, trying to install 2.2.1.

Installed CMake 3.9.4, Ninja 1.8.2, then Python 3.6.3. Seemed to almost make it through - then failed again, and I'm not sure what's happening with this one.

I'd appreciate any help you can offer! Here is the end of my log, starting with the failure:

[136/665] Building CXX object lib/SILGen/CMakeFiles/swiftSILGen.dir/SILGenProfiling.cpp.o
FAILED: lib/SILGen/CMakeFiles/swiftSILGen.dir/SILGenProfiling.cpp.o
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang++ -DGTEST_HAS_RTTI=0 -D_DEBUG -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -D__STDC_LIMIT_MACROS -Ilib/SILGen -I/Users/username/.swiftenv/tmp/swiftenv-build-2.2.1/swift/lib/SILGen -I/Users/username/.swiftenv/tmp/swiftenv-build-2.2.1/swift/include -Iinclude -I/Users/username/.swiftenv/tmp/swiftenv-build-2.2.1/build/Ninja-ReleaseAssert/llvm-macosx-x86_64/include -I/Users/username/.swiftenv/tmp/swiftenv-build-2.2.1/llvm/include -I/Users/username/.swiftenv/tmp/swiftenv-build-2.2.1/build/Ninja-ReleaseAssert/llvm-macosx-x86_64/tools/clang/include -I/Users/username/.swiftenv/tmp/swiftenv-build-2.2.1/llvm/tools/clang/include -I/Users/username/.swiftenv/tmp/swiftenv-build-2.2.1/cmark/src -I/Users/username/.swiftenv/tmp/swiftenv-build-2.2.1/build/Ninja-ReleaseAssert/cmark-macosx-x86_64/src -fno-stack-protector -stdlib=libc++ -fPIC -fvisibility-inlines-hidden -Wall -W -Wno-unused-parameter -Wwrite-strings -Wcast-qual -Wmissing-field-initializers -Wcovered-switch-default -Wnon-virtual-dtor -Werror=date-time -std=c++11 -fcolor-diagnostics -Wdocumentation -Wimplicit-fallthrough -Wunreachable-code -Woverloaded-virtual -O3 -UNDEBUG -fno-exceptions -fno-rtti -target x86_64-apple-macosx10.9 -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.13.sdk -arch x86_64 -F /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.13.sdk/../../../Developer/Library/Frameworks -mmacosx-version-min=10.9 -O2 -momit-leaf-frame-pointer -g0 -UNDEBUG -MD -MT lib/SILGen/CMakeFiles/swiftSILGen.dir/SILGenProfiling.cpp.o -MF lib/SILGen/CMakeFiles/swiftSILGen.dir/SILGenProfiling.cpp.o.d -o lib/SILGen/CMakeFiles/swiftSILGen.dir/SILGenProfiling.cpp.o -c /Users/username/.swiftenv/tmp/swiftenv-build-2.2.1/swift/lib/SILGen/SILGenProfiling.cpp
In file included from /Users/username/.swiftenv/tmp/swiftenv-build-2.2.1/swift/lib/SILGen/SILGenProfiling.cpp:13:
In file included from /Users/username/.swiftenv/tmp/swiftenv-build-2.2.1/swift/lib/SILGen/SILGenProfiling.h:16:
In file included from /Users/username/.swiftenv/tmp/swiftenv-build-2.2.1/llvm/include/llvm/ADT/DenseMap.h:17:
In file included from /Users/username/.swiftenv/tmp/swiftenv-build-2.2.1/llvm/include/llvm/ADT/DenseMapInfo.h:17:
In file included from /Users/username/.swiftenv/tmp/swiftenv-build-2.2.1/llvm/include/llvm/ADT/ArrayRef.h:13:
In file included from /Users/username/.swiftenv/tmp/swiftenv-build-2.2.1/llvm/include/llvm/ADT/Hashing.h:48:
In file included from /Users/username/.swiftenv/tmp/swiftenv-build-2.2.1/build/Ninja-ReleaseAssert/llvm-macosx-x86_64/include/llvm/Support/DataTypes.h:35:
In file included from /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include/c++/v1/cmath:305:
In file included from /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include/c++/v1/math.h:309:
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include/c++/v1/type_traits:1301:38: error: incomplete type 'swift::Expr' used in type trait expression
    : public integral_constant<bool, __is_abstract(_Tp)> {};
                                     ^
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include/c++/v1/type_traits:1374:39: note: in instantiation of template class 'std::__1::is_abstract<swift::Expr>' requested here
                                     !is_abstract<_T2>::value> {};
                                      ^
/Users/username/.swiftenv/tmp/swiftenv-build-2.2.1/swift/include/swift/Basic/NullablePtr.h:40:22: note: in instantiation of template class 'std::__1::is_convertible<swift::Expr, swift::Expr>' requested here
                std::is_convertible<OtherT, T>::value,
                     ^
/Users/username/.swiftenv/tmp/swiftenv-build-2.2.1/swift/include/swift/Basic/NullablePtr.h:30:7: note: while substituting deduced template arguments into function template 'NullablePtr' [with OtherT = swift::Expr]
class NullablePtr {
      ^
/Users/username/.swiftenv/tmp/swiftenv-build-2.2.1/swift/include/swift/AST/ASTNode.h:24:9: note: forward declaration of 'swift::Expr'
  class Expr;
        ^
1 error generated.
[137/665] Building CXX object lib/SILGen/CMakeFiles/swiftSILGen.dir/SILGenExpr.cpp.o
[138/665] Building CXX object lib/SILGen/CMakeFiles/swiftSILGen.dir/SILGenLValue.cpp.o
[139/665] Building CXX object lib/SILGen/CMakeFiles/swiftSILGen.dir/SILGenPoly.cpp.o
[140/665] Building CXX object lib/SILGen/CMakeFiles/swiftSILGen.dir/SILGenProlog.cpp.o
[141/665] Building CXX object lib/SILGen/CMakeFiles/swiftSILGen.dir/SILGenStmt.cpp.o
[142/665] Building CXX object lib/SILGen/CMakeFiles/swiftSILGen.dir/SILGenType.cpp.o
[143/665] Building CXX object lib/SILGen/CMakeFiles/swiftSILGen.dir/SILGenPattern.cpp.o
ninja: build stopped: subcommand failed.
./utils/build-script: command terminated with a non-zero exit status 1, aborting

Kyle says he's able to reproduce this, and since swiftenv is a minimal wrapper around the Swift build process, he believes it to be a Swift/High Sierra issue (Swift 2.2.1 build fails on MacOS High Sierra · Issue #103 · kylef/swiftenv · GitHub).

Any thoughts on what we might do to fix this so I can build Swift 2.2.1 on High Sierra?

- leanne
_______________________________________________
swift-dev mailing list
swift-dev@swift.org <mailto:swift-dev@swift.org>
https://lists.swift.org/mailman/listinfo/swift-dev

I'm using swiftenv (https://github.com/kylef/swiftenv\) at the command line.
Kyle says he's just using a minimal wrapper around the normal command line
Swift build process. Here's a quote from Kyle's response to an issue I
posted at the swiftenv repo:

"All swiftenv is currently doing is a ./utils/build-script -R --
--install-prefix="$destination"after downloading the source code(s)."

If I get where you're going, though, Slava, does building Swift 2.2.1
require an older version of the Xcode Command Line Tools, then??? Is that
why I might need an older Xcode?

···

On Sun, Nov 19, 2017 at 4:02 PM, Slava Pestov <spestov@apple.com> wrote:

What version of Xcode are you using to _build_ Swift 2.2? You might need
an older Xcode for that.

Slava

On Nov 19, 2017, at 11:24 AM, leanne <leanne63.dev@gmail.com> wrote:

Yes, I could, Slava. I was hoping not to, though. That's the point of
using swiftenv.

On Sat, Nov 18, 2017 at 6:24 PM, Slava Pestov <spestov@apple.com> wrote:

Instead of building Swift yourself, can you download and run Xcode 7
instead?

Slava

On Nov 18, 2017, at 7:19 PM, leanne via swift-dev <swift-dev@swift.org> >> wrote:

I'm using swiftenv (https://github.com/kylef/swiftenv\) to install Swift
versions 2 and 3, so I can work with some older projects.

Swift 3.1.1 installed perfectly first try. Been through a few iterations,
though, trying to install 2.2.1.

Installed CMake 3.9.4, Ninja 1.8.2, then Python 3.6.3. Seemed to almost
make it through - then failed again, and I'm not sure what's happening with
this one.

I'd appreciate any help you can offer! Here is the end of my log,
starting with the failure:

[136/665] Building CXX object lib/SILGen/CMakeFiles/swiftSILGen.dir/SILGenProfiling.cpp.o
FAILED: lib/SILGen/CMakeFiles/swiftSILGen.dir/SILGenProfiling.cpp.o
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang++ -DGTEST_HAS_RTTI=0 -D_DEBUG -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -D__STDC_LIMIT_MACROS -Ilib/SILGen -I/Users/username/.swiftenv/tmp/swiftenv-build-2.2.1/swift/lib/SILGen -I/Users/username/.swiftenv/tmp/swiftenv-build-2.2.1/swift/include -Iinclude -I/Users/username/.swiftenv/tmp/swiftenv-build-2.2.1/build/Ninja-ReleaseAssert/llvm-macosx-x86_64/include -I/Users/username/.swiftenv/tmp/swiftenv-build-2.2.1/llvm/include -I/Users/username/.swiftenv/tmp/swiftenv-build-2.2.1/build/Ninja-ReleaseAssert/llvm-macosx-x86_64/tools/clang/include -I/Users/username/.swiftenv/tmp/swiftenv-build-2.2.1/llvm/tools/clang/include -I/Users/username/.swiftenv/tmp/swiftenv-build-2.2.1/cmark/src -I/Users/username/.swiftenv/tmp/swiftenv-build-2.2.1/build/Ninja-ReleaseAssert/cmark-macosx-x86_64/src -fno-stack-protector -stdlib=libc++ -fPIC -fvisibility-inlines-hidden -Wall -W -Wno-unused-parameter -Wwrite-strings -Wcast-qual -Wmissing-field-initializers -Wcovered-switch-default -Wnon-virtual-dtor -Werror=date-time -std=c++11 -fcolor-diagnostics -Wdocumentation -Wimplicit-fallthrough -Wunreachable-code -Woverloaded-virtual -O3 -UNDEBUG -fno-exceptions -fno-rtti -target x86_64-apple-macosx10.9 -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.13.sdk -arch x86_64 -F /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.13.sdk/../../../Developer/Library/Frameworks -mmacosx-version-min=10.9 -O2 -momit-leaf-frame-pointer -g0 -UNDEBUG -MD -MT lib/SILGen/CMakeFiles/swiftSILGen.dir/SILGenProfiling.cpp.o -MF lib/SILGen/CMakeFiles/swiftSILGen.dir/SILGenProfiling.cpp.o.d -o lib/SILGen/CMakeFiles/swiftSILGen.dir/SILGenProfiling.cpp.o -c /Users/username/.swiftenv/tmp/swiftenv-build-2.2.1/swift/lib/SILGen/SILGenProfiling.cpp
In file included from /Users/username/.swiftenv/tmp/swiftenv-build-2.2.1/swift/lib/SILGen/SILGenProfiling.cpp:13:
In file included from /Users/username/.swiftenv/tmp/swiftenv-build-2.2.1/swift/lib/SILGen/SILGenProfiling.h:16:
In file included from /Users/username/.swiftenv/tmp/swiftenv-build-2.2.1/llvm/include/llvm/ADT/DenseMap.h:17:
In file included from /Users/username/.swiftenv/tmp/swiftenv-build-2.2.1/llvm/include/llvm/ADT/DenseMapInfo.h:17:
In file included from /Users/username/.swiftenv/tmp/swiftenv-build-2.2.1/llvm/include/llvm/ADT/ArrayRef.h:13:
In file included from /Users/username/.swiftenv/tmp/swiftenv-build-2.2.1/llvm/include/llvm/ADT/Hashing.h:48:
In file included from /Users/username/.swiftenv/tmp/swiftenv-build-2.2.1/build/Ninja-ReleaseAssert/llvm-macosx-x86_64/include/llvm/Support/DataTypes.h:35:
In file included from /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include/c++/v1/cmath:305:
In file included from /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include/c++/v1/math.h:309:
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include/c++/v1/type_traits:1301:38: error: incomplete type 'swift::Expr' used in type trait expression
    : public integral_constant<bool, __is_abstract(_Tp)> {};
                                     ^
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include/c++/v1/type_traits:1374:39: note: in instantiation of template class 'std::__1::is_abstract<swift::Expr>' requested here
                                     !is_abstract<_T2>::value> {};
                                      ^
/Users/username/.swiftenv/tmp/swiftenv-build-2.2.1/swift/include/swift/Basic/NullablePtr.h:40:22: note: in instantiation of template class 'std::__1::is_convertible<swift::Expr, swift::Expr>' requested here
                std::is_convertible<OtherT, T>::value,
                     ^
/Users/username/.swiftenv/tmp/swiftenv-build-2.2.1/swift/include/swift/Basic/NullablePtr.h:30:7: note: while substituting deduced template arguments into function template 'NullablePtr' [with OtherT = swift::Expr]
class NullablePtr {
      ^
/Users/username/.swiftenv/tmp/swiftenv-build-2.2.1/swift/include/swift/AST/ASTNode.h:24:9: note: forward declaration of 'swift::Expr'
  class Expr;
        ^
1 error generated.
[137/665] Building CXX object lib/SILGen/CMakeFiles/swiftSILGen.dir/SILGenExpr.cpp.o
[138/665] Building CXX object lib/SILGen/CMakeFiles/swiftSILGen.dir/SILGenLValue.cpp.o
[139/665] Building CXX object lib/SILGen/CMakeFiles/swiftSILGen.dir/SILGenPoly.cpp.o
[140/665] Building CXX object lib/SILGen/CMakeFiles/swiftSILGen.dir/SILGenProlog.cpp.o
[141/665] Building CXX object lib/SILGen/CMakeFiles/swiftSILGen.dir/SILGenStmt.cpp.o
[142/665] Building CXX object lib/SILGen/CMakeFiles/swiftSILGen.dir/SILGenType.cpp.o
[143/665] Building CXX object lib/SILGen/CMakeFiles/swiftSILGen.dir/SILGenPattern.cpp.o
ninja: build stopped: subcommand failed.
./utils/build-script: command terminated with a non-zero exit status 1, aborting

Kyle says he's able to reproduce this, and since swiftenv is a minimal
wrapper around the Swift build process, he believes it to be a Swift/High
Sierra issue (Swift 2.2.1 build fails on MacOS High Sierra · Issue #103 · kylef/swiftenv · GitHub
345432864).

Any thoughts on what we might do to fix this so I can build Swift 2.2.1
on High Sierra?

- leanne
_______________________________________________
swift-dev mailing list
swift-dev@swift.org
https://lists.swift.org/mailman/listinfo/swift-dev

That’s my theory, yeah.

Slava

···

On Nov 19, 2017, at 6:12 PM, leanne <leanne63.dev@gmail.com> wrote:

If I get where you're going, though, Slava, does building Swift 2.2.1 require an older version of the Xcode Command Line Tools, then??? Is that why I might need an older Xcode?

Yep, that worked, Slava. I installed Xcode 7.3.1 and its Command Line
Tools, and Swift 2.2.1 built successfully. Thanks!

···

On Sun, Nov 19, 2017 at 5:17 PM, Slava Pestov <spestov@apple.com> wrote:

On Nov 19, 2017, at 6:12 PM, leanne <leanne63.dev@gmail.com> wrote:

If I get where you're going, though, Slava, does building Swift 2.2.1
require an older version of the Xcode Command Line Tools, then??? Is that
why I might need an older Xcode?

That’s my theory, yeah.

Slava

Ah, and one more comment: even after installing Xcode 7.3.1 and its Tools,
my attempt to build Swift 2,2,1 failed. I had renamed Xcode 7.3.1, then
used `xcode-select --switch` to switch to its correct path. However, I
noticed in the build log that the new path wasn't being used.

Apparently, the script doesn't use `xcrun` to select the correct version of
the Tools - it has the path hard-coded to Xcode.app/... As a result, to
make it work, I had to rename my current Xcode to somethig else, then
rename my copy of Xcode 7.3.1 back to Xcode.app.

···

On Sun, Nov 19, 2017 at 6:54 PM, leanne via swift-dev <swift-dev@swift.org> wrote:

Yep, that worked, Slava. I installed Xcode 7.3.1 and its Command Line
Tools, and Swift 2.2.1 built successfully. Thanks!

On Sun, Nov 19, 2017 at 5:17 PM, Slava Pestov <spestov@apple.com> wrote:

On Nov 19, 2017, at 6:12 PM, leanne <leanne63.dev@gmail.com> wrote:

If I get where you're going, though, Slava, does building Swift 2.2.1
require an older version of the Xcode Command Line Tools, then??? Is that
why I might need an older Xcode?

That’s my theory, yeah.

Slava

_______________________________________________
swift-dev mailing list
swift-dev@swift.org
https://lists.swift.org/mailman/listinfo/swift-dev

You may need to blow away your CMakeCache.txt and re-run CMake from scratch to reconfigure your build directory when changing xcodes. The CMake build system ought to use xcrun to sniff out the system compiler paths, but I believe it only does so during configuration time, and won't pick up changes made after the fact.

-Joe

···

On Nov 19, 2017, at 5:11 PM, leanne via swift-dev <swift-dev@swift.org> wrote:

Ah, and one more comment: even after installing Xcode 7.3.1 and its Tools, my attempt to build Swift 2,2,1 failed. I had renamed Xcode 7.3.1, then used `xcode-select --switch` to switch to its correct path. However, I noticed in the build log that the new path wasn't being used.

Apparently, the script doesn't use `xcrun` to select the correct version of the Tools - it has the path hard-coded to Xcode.app/... As a result, to make it work, I had to rename my current Xcode to somethig else, then rename my copy of Xcode 7.3.1 back to Xcode.app.