Factor File::addAtom out to MutableFile::addAtom.
This removes a bunch of llvm_unreachables and makes a File's mutability part of the type system.
llvm-svn: 172297
diff --git a/lld/lib/ReaderWriter/YAML/ReaderWriterYAML.cpp b/lld/lib/ReaderWriter/YAML/ReaderWriterYAML.cpp
index 93dcf21..a899585 100644
--- a/lld/lib/ReaderWriter/YAML/ReaderWriterYAML.cpp
+++ b/lld/lib/ReaderWriter/YAML/ReaderWriterYAML.cpp
@@ -614,10 +614,7 @@
const lld::File *denormalize(IO &io) {
return this;
}
-
- virtual void addAtom(const lld::Atom&) {
- llvm_unreachable("cannot add atoms to yaml .o files");
- }
+
virtual const atom_collection<lld::DefinedAtom> &defined() const {
return _noDefinedAtoms;
}
@@ -672,11 +669,7 @@
_absoluteAtoms.push_back(a);
}
const lld::File *denormalize(IO &io);
-
-
- virtual void addAtom(const lld::Atom&) {
- llvm_unreachable("cannot add atoms to yaml .o files");
- }
+
virtual const atom_collection<lld::DefinedAtom> &defined() const {
return _definedAtoms;
}