Files
swift-mirror/benchmark/single-source/NopDeinit.swift
2016-02-08 10:47:58 -08:00

37 lines
1017 B
Swift

//===--- NopDeinit.swift --------------------------------------------------===//
//
// This source file is part of the Swift.org open source project
//
// Copyright (c) 2014 - 2016 Apple Inc. and the Swift project authors
// Licensed under Apache License v2.0 with Runtime Library Exception
//
// See http://swift.org/LICENSE.txt for license information
// See http://swift.org/CONTRIBUTORS.txt for the list of Swift project authors
//
//===----------------------------------------------------------------------===//
// <rdar://problem/17838787>
import TestsUtils
class X<T : Comparable> {
let deinitIters = 10000
var elem : T
init(_ x : T) {elem = x}
deinit {
for _ in 1...deinitIters {
if (elem > elem) { };
}
}
}
public func run_NopDeinit(N: Int) {
for _ in 1...N {
var arr :[X<Int>] = []
let size = 500
for i in 1...size { arr.append(X(i)) }
arr.removeAll()
CheckResults(arr.count == 0,
"Incorrect results in NopDeinit: \(arr.count) != 0.")
}
}