// Distributed under the terms of the MIT license
// Test case submitted to project by https://github.com/practicalswift (practicalswift)
// Test case found by fuzzing

enum S{
var d=[]as a
struct B{
struct B{
enum a<T where g:a{
enum S<T where g:w