Make c++ defer looks like a swift one

This commit is contained in:
Bartosz Przybylski
2015-12-04 11:03:39 +01:00
parent b08610bc3e
commit 0e5c7ddfb8
6 changed files with 30 additions and 23 deletions

View File

@@ -3643,7 +3643,7 @@ ParserStatus Parser::parseDeclVar(ParseDeclOptions Flags,
// No matter what error path we take, make sure the
// PatternBindingDecl/TopLevel code block are added.
defer([&]{
defer {
// If we didn't parse any patterns, don't create the pattern binding decl.
if (PBDEntries.empty())
return;
@@ -3683,7 +3683,7 @@ ParserStatus Parser::parseDeclVar(ParseDeclOptions Flags,
// specific spot to get it in before any accessors, which SILGen seems to
// want.
Decls.insert(Decls.begin()+NumDeclsInResult, PBD);
});
};
do {
Pattern *pattern;