Guarantee static_method_of uses the right this (#1795)

This came up during #1760 where `Promise.resolve` must be invoked with
`this` as the `Promise` object, but we were erroneously importing it in
such a way that it didn't have a shim and `this` was `undefined`.
This commit is contained in:
Alex Crichton
2019-09-26 12:33:04 -05:00
committed by GitHub
parent 025b1d8bca
commit 0b1a764f8a
6 changed files with 32 additions and 2 deletions

View File

@ -2269,6 +2269,11 @@ impl<'a> Context<'a> {
}
},
AuxImport::ValueWithThis(class, name) => {
let class = self.import_name(class)?;
Ok(format!("{}.{}({})", class, name, variadic_args(&args)?))
}
AuxImport::Instanceof(js) => {
assert!(webidl_ty.kind == ast::WebidlFunctionKind::Static);
assert!(!variadic);