--- a/js/src/frontend/BinSource.cpp
+++ b/js/src/frontend/BinSource.cpp
@@ -2289,16 +2289,36 @@ ASTReader::parseSwitchCase(SimpleTokenRe
Unused << test.release();
Unused << statements.release();
out = Move(result);
return true;
}
bool
+ASTReader::readString(SimpleTokenReader* reader, MutableHandle<PropertyName*> out) {
+ if (out) {
+ return this->raiseError();
+ }
+
+ RootedAtom atom(cx);
+
+ if (!this->readString(reader, &atom)) {
+ return false;
+ }
+
+ if (!atom) {
+ out.set(nullptr);
+ } else {
+ out.set(atom->asPropertyName());
+ }
+ return true;
+}
+
+bool
ASTReader::readString(SimpleTokenReader* reader, Maybe<std::string>& out) {
if (out) {
return this->raiseError();
}
if (!reader->readMaybeString(&out)) {
return false;
}