semantic: Correctly handle struct literals.