* Properly handle control flows from returns in try/catch within IIFE
* Accept new baselines
* Add tests
* Accept new baselines
* When end of finally is unreachable, end of try statement is too
* Add additional test case
* Fix tests when there are project references but has disableSourceOfProjectReferenceRedirect
* Handle getScriptVersion correctly to ensure program structure is checked correctly
Fixes#36748
* Harness's language service host doesnt have getProjectVersion.
This means earlier we were creating fresh program everytime we did LS operation
Now we reuse same program, so quick info depends on order of quickinfo demands
* Because same program is used, it unvails a bug that if `export=` is evaluated before finding references, it cant find all definitions from the merge
* Update src/server/project.ts
Co-Authored-By: Nathan Shively-Sanders <293473+sandersn@users.noreply.github.com>
* Make clearSourceMapperCache required
Co-authored-by: Nathan Shively-Sanders <293473+sandersn@users.noreply.github.com>
* Adds floating block comments to the outlining spans response
* Only use one route for grabbing outline nodes, which now includes special casing the EOF token
THe code to bind `@enum` and `@typedef` didn't handle the case that the
`@enum` was on a property assignment to an alias of module.exports.
Specifically, `x` needs to be correctly aliased to the file's symbol in
the example below:
```
var x = module.exports = {};
/** @enum {string} */
x.E = {
A: "A"
};
```
* use getters to define live export bindings
* fix scoping in export* helper
* Object.defineProperty cannot be used in ES3 target
* Accept changed baselines
* Use function expression, not arrow function
* Update importStarHelper to match export helper in binding-making
* Fix whitespace
* Adjust whitespace in edited helpers
* Use new helper for setting bindings, use unscoped __exportStar helper for exports so helpers get reused more
* Accept updated baselines
* Use __createBinding for individual reexports when target is es3
* Remove unneeded type assertion
* Singeline the helpers
* Add check for createBinding helper, accept updated baselines with shortened helper
Co-authored-by: Michael Rawlings <mirawlings@ebay.com>
JSDocNamepaths span a lot of identifiers that we don't actually care
about, so it's incorrect for createChildren to add its children as
synthetic nodes.