Merge pull request #5091 from practicalswift/swiftc-28431-swift-lexer-lexoperatoridentifier

diff --git a/validation-test/compiler_crashers/28431-swift-lexer-lexoperatoridentifier.swift b/validation-test/compiler_crashers/28431-swift-lexer-lexoperatoridentifier.swift
new file mode 100644
index 0000000..cb18ec9
--- /dev/null
+++ b/validation-test/compiler_crashers/28431-swift-lexer-lexoperatoridentifier.swift
@@ -0,0 +1,12 @@
+// 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
+
+// RUN: not --crash %target-swift-frontend %s -parse
+// REQUIRES: asserts
+class a{struct b{{}
+protocol a{typealias e:protocol<
+case.