Files
swift-mirror/test/stdlib/tgmath_optimized.swift
3405691582 4a36a4b6c5 [test] Setup testing for OpenBSD.
This commit focuses the basics: setting up the relevant stanzas in
lit.cfg and adding platform conditionals for importing Glibc. Future
commits will deal with other portability fixes.
2020-03-23 20:47:31 -04:00

42 lines
981 B
Swift

// RUN: %empty-directory(%t)
// RUN: %target-build-swift %s -o %t/a.out -Ounchecked
// RUN: %target-codesign %t/a.out
// RUN: %target-run %t/a.out
// REQUIRES: executable_test
#if os(macOS) || os(iOS) || os(tvOS) || os(watchOS)
import Darwin
#elseif os(Linux) || os(FreeBSD) || os(OpenBSD) || os(PS4) || os(Android) || os(Cygwin) || os(Haiku) || os(WASI)
import Glibc
#elseif os(Windows)
import MSVCRT
#else
#error("Unsupported platform")
#endif
import StdlibUnittest
var TGMathTestSuite = TestSuite("tgmath")
let minusOneDouble = Double(-1.0)
let minusOneFloat = Float(-1.0)
@inline(never)
func minusOneDoubleFunction() -> Double{
return minusOneDouble
}
@inline(never)
func minusOneFloatFunction() -> Float {
return minusOneFloat
}
TGMathTestSuite.test("sqrt") {
expectTrue(sqrt(minusOneFloat).isNaN)
expectTrue(sqrt(minusOneFloatFunction()).isNaN)
expectTrue(sqrt(minusOneDouble).isNaN)
expectTrue(sqrt(minusOneDoubleFunction()).isNaN)
}
runAllTests()