1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135
|
//===----------------------------------------------------------------------===//
//
// This source file is part of the Swift.org open source project
//
// Copyright (c) 2014 - 2023 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
//
//===----------------------------------------------------------------------===//
// This test file has been translated from swift/test/Parse/builtin_word.swift
import XCTest
final class BuiltinWordTests: ParserTestCase {
func testBuiltinWord1() {
assertParse(
"""
precedencegroup AssignmentPrecedence { assignment: true }
"""
)
}
func testBuiltinWord2() {
assertParse(
"""
var word: Builtin.Word
var i16: Builtin.Int16
var i32: Builtin.Int32
var i64: Builtin.Int64
var i128: Builtin.Int128
"""
)
}
func testBuiltinWord3() {
assertParse(
"""
// Check that trunc/?ext operations are appropriately available given the
// abstract range of potential Word sizes.
"""
)
}
func testBuiltinWord4() {
assertParse(
"""
word = Builtin.truncOrBitCast_Int128_Word(i128)
word = Builtin.truncOrBitCast_Int64_Word(i64)
word = Builtin.truncOrBitCast_Int32_Word(i32)
word = Builtin.truncOrBitCast_Int16_Word(i16)
"""
)
}
func testBuiltinWord5() {
assertParse(
"""
i16 = Builtin.truncOrBitCast_Word_Int16(word)
i32 = Builtin.truncOrBitCast_Word_Int32(word)
i64 = Builtin.truncOrBitCast_Word_Int64(word)
i128 = Builtin.truncOrBitCast_Word_Int128(word)
"""
)
}
func testBuiltinWord6() {
assertParse(
"""
word = Builtin.zextOrBitCast_Int128_Word(i128)
word = Builtin.zextOrBitCast_Int64_Word(i64)
word = Builtin.zextOrBitCast_Int32_Word(i32)
word = Builtin.zextOrBitCast_Int16_Word(i16)
"""
)
}
func testBuiltinWord7() {
assertParse(
"""
i16 = Builtin.zextOrBitCast_Word_Int16(word)
i32 = Builtin.zextOrBitCast_Word_Int32(word)
i64 = Builtin.zextOrBitCast_Word_Int64(word)
i128 = Builtin.zextOrBitCast_Word_Int128(word)
"""
)
}
func testBuiltinWord8() {
assertParse(
"""
word = Builtin.trunc_Int128_Word(i128)
word = Builtin.trunc_Int64_Word(i64)
word = Builtin.trunc_Int32_Word(i32)
word = Builtin.trunc_Int16_Word(i16)
"""
)
}
func testBuiltinWord9() {
assertParse(
"""
i16 = Builtin.trunc_Word_Int16(word)
i32 = Builtin.trunc_Word_Int32(word)
i64 = Builtin.trunc_Word_Int64(word)
i128 = Builtin.trunc_Word_Int128(word)
"""
)
}
func testBuiltinWord10() {
assertParse(
"""
word = Builtin.zext_Int128_Word(i128)
word = Builtin.zext_Int64_Word(i64)
word = Builtin.zext_Int32_Word(i32)
word = Builtin.zext_Int16_Word(i16)
"""
)
}
func testBuiltinWord11() {
assertParse(
"""
i16 = Builtin.zext_Word_Int16(word)
i32 = Builtin.zext_Word_Int32(word)
i64 = Builtin.zext_Word_Int64(word)
i128 = Builtin.zext_Word_Int128(word)
"""
)
}
}
|