<unknown>:0: error: symbol '_T04test013PublicPrivateB6StructV13privateVarGetSivfi' (test.PublicPrivatePublicStruct.(privateVarGet : Swift.Int).(variable initialization expression)) is in generated IR file, but not in TBD file
<unknown>:0: error: symbol '_T04test013PublicPrivateB6StructV16privateVarGetSetSivfi' (test.PublicPrivatePublicStruct.(privateVarGetSet : Swift.Int).(variable initialization expression)) is in generated IR file, but not in TBD file
<unknown>:0: error: symbol '_T04test014PublicInternalB6StructV14internalVarGetSivfi' (test.PublicInternalPublicStruct.(internalVarGet : Swift.Int).(variable initialization expression)) is in generated IR file, but not in TBD file
<unknown>:0: error: symbol '_T04test014PublicInternalB6StructV17internalVarGetSetSivfi' (test.PublicInternalPublicStruct.(internalVarGetSet : Swift.Int).(variable initialization expression)) is in generated IR file, but not in TBD file
<unknown>:0: error: symbol '_T04test06PublicbB6StructV12publicVarGetSivfi' (test.PublicPublicPublicStruct.(publicVarGet : Swift.Int).(variable initialization expression)) is in generated IR file, but not in TBD file
<unknown>:0: error: symbol '_T04test06PublicbB6StructV15publicVarGetSetSivfi' (test.PublicPublicPublicStruct.(publicVarGetSet : Swift.Int).(variable initialization expression)) is in generated IR file, but not in TBD file
<unknown>:0: error: symbol '_T04test013PublicPrivateB6StructV13privateVarGetSifg' (test.PublicPrivatePublicStruct.privateVarGet.getter : Swift.Int) is in TBD file, but not in generated IR
<unknown>:0: error: symbol '_T04test013PublicPrivateB6StructV16privateVarGetSetSifg' (test.PublicPrivatePublicStruct.privateVarGetSet.getter : Swift.Int) is in TBD file, but not in generated IR
<unknown>:0: error: symbol '_T04test013PublicPrivateB6StructV16privateVarGetSetSifm' (test.PublicPrivatePublicStruct.privateVarGetSet.materializeForSet : Swift.Int) is in TBD file, but not in generated IR
<unknown>:0: error: symbol '_T04test013PublicPrivateB6StructV16privateVarGetSetSifs' (test.PublicPrivatePublicStruct.privateVarGetSet.setter : Swift.Int) is in TBD file, but not in generated IR
<unknown>:0: error: symbol '_T04test014PublicInternalB6StructV14internalVarGetSifg' (test.PublicInternalPublicStruct.internalVarGet.getter : Swift.Int) is in TBD file, but not in generated IR
<unknown>:0: error: symbol '_T04test014PublicInternalB6StructV17internalVarGetSetSifg' (test.PublicInternalPublicStruct.internalVarGetSet.getter : Swift.Int) is in TBD file, but not in generated IR
<unknown>:0: error: symbol '_T04test014PublicInternalB6StructV17internalVarGetSetSifm' (test.PublicInternalPublicStruct.internalVarGetSet.materializeForSet : Swift.Int) is in TBD file, but not in generated IR
<unknown>:0: error: symbol '_T04test014PublicInternalB6StructV17internalVarGetSetSifs' (test.PublicInternalPublicStruct.internalVarGetSet.setter : Swift.Int) is in TBD file, but not in generated IR
<unknown>:0: error: symbol '_T04test06PublicbB6StructV12publicVarGetSifg' (test.PublicPublicPublicStruct.publicVarGet.getter : Swift.Int) is in TBD file, but not in generated IR
<unknown>:0: error: symbol '_T04test06PublicbB6StructV15publicVarGetSetSifg' (test.PublicPublicPublicStruct.publicVarGetSet.getter : Swift.Int) is in TBD file, but not in generated IR
<unknown>:0: error: symbol '_T04test06PublicbB6StructV15publicVarGetSetSifm' (test.PublicPublicPublicStruct.publicVarGetSet.materializeForSet : Swift.Int) is in TBD file, but not in generated IR
<unknown>:0: error: symbol '_T04test06PublicbB6StructV15publicVarGetSetSifs' (test.PublicPublicPublicStruct.publicVarGetSet.setter : Swift.Int) is in TBD file, but not in generated IR
