swiftlang/swift-source-compat-suite

[Source compatibility suite] swift-power-assert failing to build - Undefined symbols

xymus opened this issue · 4 comments

xymus commented

The swift-power-assert fails to build in the source-combat-suite against main: https://ci.swift.org/job/swift-main-source-compat-suite-debug/487/

The error is on missing symbols, a lot of missing symbols:

/Users/ec2-user/jenkins/workspace-private/swift-main-source-compat-suite-debug/build/compat_macos/install/toolchain/usr/bin/clang /Users/ec2-user/jenkins/workspace/swift-main-source-compat-suite-debug/swift-source-compat-suite/project_cache/swift-power-assert/.build/x86_64-apple-macosx/debug/PowerAssertPlugin.build/PowerAssertMacro.swift.o /Users/ec2-user/jenkins/workspace/swift-main-source-compat-suite-debug/swift-source-compat-suite/project_cache/swift-power-assert/.build/x86_64-apple-macosx/debug/PowerAssertPlugin.build/PowerAssertPlugin.swift.o /Users/ec2-user/jenkins/workspace/swift-main-source-compat-suite-debug/swift-source-compat-suite/project_cache/swift-power-assert/.build/x86_64-apple-macosx/debug/PowerAssertPlugin.build/PowerAssertRewriter.swift.o /Users/ec2-user/jenkins/workspace/swift-main-source-compat-suite-debug/swift-source-compat-suite/project_cache/swift-power-assert/.build/x86_64-apple-macosx/debug/PowerAssertPlugin.build/SingleLineFormatter.swift.o -F /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/Library/Frameworks --sysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX13.1.sdk --target=x86_64-apple-macosx13.0 /Users/ec2-user/jenkins/workspace-private/swift-main-source-compat-suite-debug/build/compat_macos/install/toolchain/usr/lib/swift/macosx/libswiftCompatibilityPacks.a -L /Users/ec2-user/jenkins/workspace-private/swift-main-source-compat-suite-debug/build/compat_macos/install/toolchain/usr/lib/swift/macosx -L /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX13.1.sdk/usr/lib/swift -L /Users/ec2-user/jenkins/workspace/swift-main-source-compat-suite-debug/swift-source-compat-suite/project_cache/swift-power-assert/.build/x86_64-apple-macosx/debug -L /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/usr/lib -L /Users/ec2-user/jenkins/workspace-private/swift-main-source-compat-suite-debug/build/compat_macos/install/toolchain/usr/lib -Xlinker -alias -Xlinker _PowerAssertPlugin_main -Xlinker _main -Xlinker -rpath -Xlinker @loader_path -Xlinker -add_ast_path -Xlinker /Users/ec2-user/jenkins/workspace/swift-main-source-compat-suite-debug/swift-source-compat-suite/project_cache/swift-power-assert/.build/x86_64-apple-macosx/debug/PowerAssertPlugin.swiftmodule -o /Users/ec2-user/jenkins/workspace/swift-main-source-compat-suite-debug/swift-source-compat-suite/project_cache/swift-power-assert/.build/x86_64-apple-macosx/debug/PowerAssertPlugin
error: link command failed with exit code 1 (use -v to see invocation)
Undefined symbols for architecture x86_64:
  "_$s11StringWidth06stringB0ySiSSF", referenced from:
      _$s17PowerAssertPlugin0aB8RewriterC14graphemeColumn33_B676B0649EA1307B1860CA0ABF455ABBLLySi11SwiftSyntax0O8Protocol_pF in PowerAssertRewriter.swift.o
  "_$s11SwiftParser15SyntaxParseableP0aC7BuilderE19stringInterpolationxAD0c6StringG0V_tcfC", referenced from:
      _$s17PowerAssertPlugin0aB8RewriterC5visity11SwiftSyntax04ExprG0VAE010IdentifierhG0VF in PowerAssertRewriter.swift.o
      _$s17PowerAssertPlugin0aB8RewriterC5visity11SwiftSyntax04ExprG0VAE012MemberAccesshG0VF in PowerAssertRewriter.swift.o
      _$s17PowerAssertPlugin0aB8RewriterC5visity11SwiftSyntax04ExprG0VAE08SuperRefhG0VF in PowerAssertRewriter.swift.o
...

FAIL_swift-power-assert_5.0_BuildSwiftPackage.log

@neonichu Since this is not a compiler issue and was fixed in swiftpm, could you transfer it there please?

This should actually stay open and be transferred to wherever we track compat suite issues. I guess GH automation closed it because I mentioned this issue, that wasn't my intent.

Specifically we need:

Then I believe it should be moved to the compat suite repository. We used to, but I don’t think we want to keep tracking compat suite source/specification issues here.

cc @shahmishal