Internal Error: Loop through function `.ResolveExpression`

IDE: Visual Studio X/Fire
Version: (develop)
Target (If relevant): OSX
This is a reduction that preserved a stack overflow.

Expected Behavior:
Compiler Errors.
Actual Behavior:
Stack overflow.

struct S {}

protocol P {}

extension S: ExpressibleByStringLiteral {
   typealias StringLiteralType = S
   public init(stringLiteral value: S) {
       self = value

extension P {
    public func foo(separator: S = "") {}

Thanks, logged as bugs://82795

bugs://82795 got closed with status fixed.