microsoft / microsoft/TypeScript

Line break in module declaration causes compile time error

オープン
#11,167 コメント 5 件 リアクション 0 件 担当者 0 名 GitHub で見る

まだ誰も着手していません。

Bug Domain: Parser Help Wanted
主要言語
Go
スター
111k
フォーク
14.3k
平均マージ
2日 4時間
マージ済み PR(30日)
132

説明

TypeScript Version: 2.0.3

A line break in the declaration of a module causes a compile time error.
This could either be that the language specification isn't clear that this is illegal or a bug.

Code

// Example declaration with line break
declare module 
     my.very.long.name.foo.bar.baz.able.baker {}

Expected behavior:
I don't see anything in the language specification that would make this a compile time error, so I would expect the statement to work as if declaration was all on one line, ie:

// Example declaration with line break
declare module my.very.long.name.foo.bar.baz.able.baker {}

Actual behavior:

A compile time error, in particular: (1, 9): error TS1005: ';' expected.

コントリビューションガイド

コントリビューションガイドを開く

はじめの一歩

  1. issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
  2. 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
  3. リポジトリをフォークし、ブランチを切って変更します。
  4. issue 番号を参照したプルリクエストを送ります。

調査の方向性

まず、declare module の後に改行を入れた状態で、提供された TypeScript スニペットをコンパイルし、1 行のバージョンと比較します。モジュール宣言の parser による処理を追跡します。完了条件は、複数行の宣言が TS1005 なしでコンパイルされ、既存の動作が維持されることです。

索引モデルが issue の本文から書いたものです。

評価

技術スタック
typescript
領域
compilers
issue の種類
バグ
難易度
3/5
見積もり時間
1〜2日
活発さ
停滞
明瞭さ
明確に書かれている
初心者へのやさしさ
45/100

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。