a03227d60e
* Avoid a crash with `@typedef` in a script file. Scripts (as opposed to modules) do not have a symbol object. If a script contains a `@typdef` defined on a namespace called `exports`, TypeScript crashes because it attempts to create an exported symbol on the (non-existent) symbol of the SourceFile. This change avoids the crash by explicitly checking if the source file has a symbol object, i.e. whether it is a module. * Add usage of exports.SomeName typedef. * Fix bug at bind site rather than in declare func
16 lines
209 B
TypeScript
16 lines
209 B
TypeScript
// @allowJS: true
|
|
// @suppressOutputPathCheck: true
|
|
|
|
// @filename: 0.js
|
|
// @ts-check
|
|
|
|
var exports = {};
|
|
|
|
/**
|
|
* @typedef {string}
|
|
*/
|
|
exports.SomeName;
|
|
|
|
/** @type {exports.SomeName} */
|
|
const myString = 'str';
|