mirror of
https://github.com/apple/swift.git
synced 2025-12-14 20:36:38 +01:00
[Threading][Runtime] Separate threading error function to fix link on Linux.
On Linux it seems that the linker objects, probably because of link order, to the definition of `swift::threading::fatal()` being in both static libraries. Fix by moving `swift::threading::fatal()` to its own file in the main runtime as well as the Concurrency runtime. Fixes #59444.
This commit is contained in:
25
stdlib/public/runtime/ThreadingError.cpp
Normal file
25
stdlib/public/runtime/ThreadingError.cpp
Normal file
@@ -0,0 +1,25 @@
|
||||
//===--- ThreadingError.cpp - Error handling support code -----------------===//
|
||||
//
|
||||
// This source file is part of the Swift.org open source project
|
||||
//
|
||||
// Copyright (c) 2014 - 2017 Apple Inc. and the Swift project authors
|
||||
// Licensed under Apache License v2.0 with Runtime Library Exception
|
||||
//
|
||||
// See https://swift.org/LICENSE.txt for license information
|
||||
// See https://swift.org/CONTRIBUTORS.txt for the list of Swift project authors
|
||||
//
|
||||
//===----------------------------------------------------------------------===//
|
||||
|
||||
#include "swift/Runtime/Debug.h"
|
||||
#include "swift/Threading/Errors.h"
|
||||
#include <cstdio>
|
||||
|
||||
// Handle fatal errors from the threading library
|
||||
SWIFT_ATTRIBUTE_NORETURN
|
||||
SWIFT_FORMAT(1, 2)
|
||||
void swift::threading::fatal(const char *format, ...) {
|
||||
va_list val;
|
||||
|
||||
va_start(val, format);
|
||||
swift::fatalErrorv(0, format, val);
|
||||
}
|
||||
Reference in New Issue
Block a user