         x.params = try parameterClauses()
         x.throwType = throwType()
         x.returns = try functionResult()
-        if forProtocol {
+        if forModule {
             if case .LeftBrace = ts.look().kind {
                 try ts.error(.ProcedureInDeclarationOfProtocol)
             }

        return x
    }

    private func protocolSubscriptDeclaration(
        attrs: [Attribute], _ mods: [Modifier]
    ) throws -> SubscriptDeclaration {
        let x = SubscriptDeclaration(attrs, mods)

    }

    private func initializerDeclaration(
        attrs: [Attribute], _ mods: [Modifier], forModule: Bool = false
    ) throws -> InitializerDeclaration {
        let x = InitializerDeclaration(attrs, mods)
        switch ts.match([.PostfixQuestion, .PostfixExclamation]) {
