microsoft / microsoft/TypeScript
Report error if code precedes /// reference
未关闭
还没有人认领这个 Issue。
Bug
Domain: Something Else
Help Wanted
- 主要语言
- Go
- 星标
- 111k
- 派生
- 14.4k
- 平均合并
- 1 天 19 小时
- 30 天内合并 PR
- 117
描述
a.ts:
'use strict'
/// <reference path='b.d.ts'/>
var x: Foo;
b.d.ts:
interface Foo { x: string; }
declare module "b" {
export = Foo;
}
D:\test\refs\a> tsc a.ts
a.ts(4,8): error TS2304: Cannot find name 'Foo'.
There's no mention in section 11.1.1 of the spec that /// references must be the first thing in a file in order to work, although I do remember us deciding that was the case at one point. If that is the rule we should update the spec appropriately. We should also add an error to the compiler or else you may spend awhile trying to figure this out since we don't provide much (read: anything) in the way of diagnostics for debugging reference resolution.
贡献指南
从这里开始
- 先读完整个 Issue,再读项目的贡献指南。
- 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
- Fork 仓库,在一个分支上完成修改。
- 提交 Pull Request,并在描述里引用这个 Issue 编号。
调研方向
使用 a.ts、b.d.ts 和 tsc a.ts 重现该案例,然后阅读规范第 11.1.1 节以及编译器的引用解析诊断信息。确定文档化规则是否要求引用必须位于前面,并将 done 定义为更新规范和/或针对顺序错误报告明确的编译器错误。
由索引模型根据 Issue 内容生成。
评估
- 技术栈
- typescript
- 领域
- compilers
- Issue 类型
- 缺陷
- 难度
- 4/5
- 预计耗时
- 3-5 天
- 活跃度
- 停滞
- 描述清晰度
- 基本清楚
- 新手友好度
- 35/100