[Serialization] Remove a hack around serializing 'final'

We used to track final-ness separately from FinalAttr, but
serialization didn't know how to handle that, so we synthesized a fake
FinalAttr. However, final-ness (finality, I guess) is always kept in
sync with FinalAttr now, so this check is no longer necessary.

No functionality change.
This commit is contained in:
Jordan Rose
2019-08-19 17:34:29 -07:00
parent c6f033d400
commit 31d58029b4

View File

@@ -2814,13 +2814,6 @@ public:
for (auto Attr : D->getAttrs())
writeDeclAttribute(Attr);
if (auto VD = dyn_cast<ValueDecl>(D)) {
// Hack: synthesize a 'final' attribute if finality was inferred.
if (VD->isFinal() && !D->getAttrs().hasAttribute<FinalAttr>())
writeDeclAttribute(
new (D->getASTContext()) FinalAttr(/*Implicit=*/false));
}
if (auto *value = dyn_cast<ValueDecl>(D))
writeDiscriminatorsIfNeeded(value);