やっと解決したので注意喚起(自分が知らないだけ?).
問題
1行目*1にtype: ignore
という文字列を含むコメント行を追加すると構文エラー等が出なくなってしまう(ただし補完機能は正常に動作する).VSCodeを再インストールしても直らなかったのでおそらく仕様.
発生環境
経緯
Pylanceによる型ヒントでどうしてもエラー・警告が出てしまう箇所がある場合,その文の末尾に#type: ignore
とコメントすることで型チェックを回避できる.
しかしこの機能を知らない人からすれば#type: ignore
が何を意味するかわからないだろうと思ったため,プログラムの冒頭に
# ところどころに #type: ignore とコメントが書かれていますが,Pylanceの型チェックの仕様上どうしてもwarningが出る箇所に書いているだけです.プログラム上の意味はありません.
と書いた.
しかしこれが原因で,当該プログラムで発生している全エラーが表示されなくなってしまった.当然動作させるまでエラーに気づかないので大惨事になりかけた.
*1:2行目以降であっても,その行以前に空白行やコメント行しかないのであれば,この問題は発生する.