Skip to content

Commit 0eaa576

Browse files
committed
Minor fixes for SE-0095
1 parent 67dccb2 commit 0eaa576

File tree

3 files changed

+6
-6
lines changed

3 files changed

+6
-6
lines changed

lib/Parse/ParseType.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -408,7 +408,7 @@ ParserResult<TypeRepr> Parser::parseTypeIdentifier() {
408408
ParserResult<TypeRepr> Parser::parseTypeIdentifierOrTypeComposition() {
409409

410410
// Handle deprecated case
411-
if (Tok.getKind() == tok::kw_protocol) {
411+
if (Tok.getKind() == tok::kw_protocol && startsWithLess(peekToken())) {
412412
SourceLoc ProtocolLoc = consumeToken(tok::kw_protocol);
413413

414414
// Check for the starting '<'.

test/Parse/recovery.swift

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -286,7 +286,7 @@ struct ErrorTypeInVarDecl8 {
286286
}
287287

288288
struct ErrorTypeInVarDecl9 {
289-
var v1 : protocol // expected-error {{expected '<' in protocol composition type}}
289+
var v1 : protocol // expected-error {{expected identifier for type name}}
290290
var v2 : Int
291291
}
292292

test/attr/attr_objc.swift

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1049,10 +1049,10 @@ class infer_instanceVar1 {
10491049
var var_ExistentialMetatype9: (Protocol_ObjC1 & Protocol_ObjC2).Type
10501050
// CHECK-LABEL: {{^}} var var_ExistentialMetatype0: Any.Type
10511051
// CHECK-LABEL: {{^}} var var_ExistentialMetatype1: PlainProtocol.Type
1052-
// CHECK-LABEL: {{^}} var var_ExistentialMetatype2: PlainProtocol.Type
1052+
// CHECK-LABEL: {{^}} var var_ExistentialMetatype2: (PlainProtocol).Type
10531053
// CHECK-LABEL: {{^}} var var_ExistentialMetatype3: (PlainProtocol & Protocol_Class1).Type
10541054
// CHECK-LABEL: {{^}} var var_ExistentialMetatype4: (PlainProtocol & Protocol_ObjC1).Type
1055-
// CHECK-LABEL: {{^}} var var_ExistentialMetatype5: Protocol_Class1.Type
1055+
// CHECK-LABEL: {{^}} var var_ExistentialMetatype5: (Protocol_Class1).Type
10561056
// CHECK-LABEL: {{^}} var var_ExistentialMetatype6: (Protocol_Class1 & Protocol_Class2).Type
10571057
// CHECK-LABEL: {{^}} var var_ExistentialMetatype7: (Protocol_Class1 & Protocol_ObjC1).Type
10581058
// CHECK-LABEL: @objc var var_ExistentialMetatype8: Protocol_ObjC1.Type
@@ -1187,7 +1187,7 @@ class infer_instanceVar1 {
11871187
// CHECK-LABEL: @objc weak var var_Weak2: @sil_weak Protocol_ObjC1
11881188
// CHECK-LABEL: @objc weak var var_Weak5: @sil_weak AnyObject
11891189
// CHECK-LABEL: @objc weak var var_Weak7: @sil_weak Protocol_ObjC1
1190-
// CHECK-LABEL: @objc weak var var_Weak8: @sil_weak Protocol_ObjC1 & Protocol_ObjC2
1190+
// CHECK-LABEL: @objc weak var var_Weak8: @sil_weak (Protocol_ObjC1 & Protocol_ObjC2)?
11911191

11921192
weak var var_Weak_fail1: PlainClass?
11931193
weak var var_Weak_bad2: PlainStruct?
@@ -1361,7 +1361,7 @@ class infer_instanceVar1 {
13611361
// expected-error @-1{{property cannot be marked @objc because its type cannot be represented in Objective-C}}
13621362

13631363
var var_ArrayType9: [Protocol_ObjC1 & PlainProtocol]
1364-
// CHECK-LABEL: {{^}} var var_ArrayType9: [Protocol_ObjC1 & PlainProtocol]
1364+
// CHECK-LABEL: {{^}} var var_ArrayType9: [PlainProtocol & Protocol_ObjC1]
13651365

13661366
@objc var var_ArrayType9_: [Protocol_ObjC1 & PlainProtocol]
13671367
// expected-error @-1{{property cannot be marked @objc because its type cannot be represented in Objective-C}}

0 commit comments

Comments
 (0)