Open
Description
The following new test case causes an assertion failure
// IMPORTANT: Don’t add a newline at the end of this file
// RUN: %sourcekitd-test -req=cursor -pos=%(line + 1):23 %s -- %s
macro powerAssert() = #externalMacro
The following test case fails with the same stack trace
// IMPORTANT: Don’t add a newline at the end of this file
// RUN: %sourcekitd-test -req=cursor -pos=%(line + 1):38 %s -- %s
macro powerAssert() = #externalMacro(module
Stack trace:
0 libsystem_kernel.dylib 0x18fb9b11c __pthread_kill + 8
1 libsystem_pthread.dylib 0x18fbd2cc0 pthread_kill + 288
2 libsystem_c.dylib 0x18fae2b14 __abort + 128
3 libsystem_c.dylib 0x18fae2a94 abort + 192
4 libsystem_c.dylib 0x18fae1da4 __assert_rtn + 284
5 libsourcekitdInProc.dylib 0x117663fb8 swift::CharSourceRange::CharSourceRange(swift::SourceManager const&, swift::SourceLoc, swift::SourceLoc) (.cold.1) + 36
6 libsourcekitdInProc.dylib 0x1161d8898 swift::CharSourceRange::CharSourceRange(swift::SourceManager const&, swift::SourceLoc, swift::SourceLoc) + 88
7 libsourcekitdInProc.dylib 0x1129bacbc swift::InFlightDiagnostic::highlightChars(swift::SourceLoc, swift::SourceLoc) + 72
8 libsourcekitdInProc.dylib 0x11274c3b8 specialized SourceManager.diagnoseSingle<A>(message:severity:node:position:highlights:fixItChanges:) + 892
9 libsourcekitdInProc.dylib 0x11274ccb4 SourceManager.diagnose(diagnostic:messageSuffix:) + 700
10 libsourcekitdInProc.dylib 0x112759284 checkMacroDefinition(diagEnginePtr:sourceFilePtr:macroLocationPtr:externalMacroPointer:externalMacroLength:replacementsPtr:numReplacementsPtr:) + 3932
11 libsourcekitdInProc.dylib 0x112471c10 swift::MacroDefinitionRequest::evaluate(swift::Evaluator&, swift::MacroDecl*) const + 164
12 libsourcekitdInProc.dylib 0x1129a7e9c llvm::Expected<swift::MacroDefinitionRequest::OutputType> swift::Evaluator::getResultUncached<swift::MacroDefinitionRequest>(swift::MacroDefinitionRequest const&) + 284
13 libsourcekitdInProc.dylib 0x1129a7c00 llvm::Expected<swift::MacroDefinitionRequest::OutputType> swift::Evaluator::getResultCached<swift::MacroDefinitionRequest, (void*)0>(swift::MacroDefinitionRequest const&) + 396
14 libsourcekitdInProc.dylib 0x1128d4e9c swift::MacroDefinitionRequest::OutputType swift::evaluateOrDefault<swift::MacroDefinitionRequest>(swift::Evaluator&, swift::MacroDefinitionRequest, swift::MacroDefinitionRequest::OutputType) + 40
15 libsourcekitdInProc.dylib 0x1128d4e64 swift::MacroDecl::getDefinition() const + 100
16 libsourcekitdInProc.dylib 0x112443be8 (anonymous namespace)::DeclChecker::visit(swift::Decl*) + 2764
17 libsourcekitdInProc.dylib 0x112443104 swift::TypeChecker::typeCheckDecl(swift::Decl*, bool) + 148
18 libsourcekitdInProc.dylib 0x112500f2c swift::TypeCheckSourceFileRequest::evaluate(swift::Evaluator&, swift::SourceFile*) const + 164
19 libsourcekitdInProc.dylib 0x112503088 llvm::Expected<swift::TypeCheckSourceFileRequest::OutputType> swift::Evaluator::getResultUncached<swift::TypeCheckSourceFileRequest>(swift::TypeCheckSourceFileRequest const&) + 280
20 libsourcekitdInProc.dylib 0x112502ea0 llvm::Expected<swift::TypeCheckSourceFileRequest::OutputType> swift::Evaluator::getResultCached<swift::TypeCheckSourceFileRequest, (void*)0>(swift::TypeCheckSourceFileRequest const&) + 68
21 libsourcekitdInProc.dylib 0x112500dbc swift::TypeCheckSourceFileRequest::OutputType swift::evaluateOrDefault<swift::TypeCheckSourceFileRequest>(swift::Evaluator&, swift::TypeCheckSourceFileRequest, swift::TypeCheckSourceFileRequest::OutputType) + 28
22 libsourcekitdInProc.dylib 0x111656c34 bool llvm::function_ref<bool (swift::SourceFile&)>::callback_fn<swift::CompilerInstance::performSema()::$_7>(long, swift::SourceFile&) + 16
23 libsourcekitdInProc.dylib 0x11164fe0c swift::CompilerInstance::forEachFileToTypeCheck(llvm::function_ref<bool (swift::SourceFile&)>) + 76
24 libsourcekitdInProc.dylib 0x11164fda0 swift::CompilerInstance::performSema() + 76
25 libsourcekitdInProc.dylib 0x111459854 void SourceKit::WorkQueue::DispatchData::callAndDelete<(anonymous namespace)::ASTBuildOperation::schedule(SourceKit::WorkQueue)::$_9>(void*) + 2804
26 libdispatch.dylib 0x18fa25910 _dispatch_client_callout + 20
27 libdispatch.dylib 0x18fa29358 _dispatch_block_invoke_direct + 284
28 libsourcekitdInProc.dylib 0x1161bf9a8 executeBlock(void*) + 28
29 libsourcekitdInProc.dylib 0x1161bf9d8 void* llvm::thread::ThreadProxy<std::__1::tuple<void (*)(void*), void*>>(void*) + 24
30 libsystem_pthread.dylib 0x18fbd3034 _pthread_start + 136
31 libsystem_pthread.dylib 0x18fbcde3c thread_start + 8
rdar://111328832
Metadata
Metadata
Assignees
Labels
Feature → swift macro: The built-in `#externalMacro` macroBug → crash: An assertion failureBug: A crash, i.e., an abnormal termination of softwareArea → source tooling: cursor infoFeature: declarationsFlag: An issue found by the SourceKit stress testerArea: IDE support, SourceKit, and other source toolingFeature → declarations: Swift `macro` declarations