mirror of
https://github.com/apple/swift.git
synced 2025-12-14 20:36:38 +01:00
Currently, when we reference a (non-generic) typealias within a generic context, we would completely lose type sugar for the typealias, replacing it with the underlying type. Instead, use BoundNameAliasType for this purpose, which allows us to maintain all of the type sugar as well as storing complete substitutions for later use.
14 lines
454 B
Swift
14 lines
454 B
Swift
// 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
|
|
|
|
|
|
// RUN: not %target-swift-frontend %s -emit-ir
|
|
class a<a{{}
|
|
let d=a
|
|
& a
|
|
P{{{}}}typealias a:A protocol A
|