False positive for java 21 switch case with null, default
まだ誰も着手していません。
評価
調査の方向性
最小限の Java 21 の switch 例と、参照されている PrintixService.java のケースを使って、CodeQL の Java 抽出の失敗を再現します。まず、null と default を含む switch ラベルについて、Java extractor による解析を追跡します。正常な Java 21 ソースが正常に抽出され、finalization で報告されたエラーなしに Java コードが処理されれば完了です。
索引モデルが issue の本文から書いたものです。
説明
Version
CodeQL CLI: 2.25.6
github/codeql-action: v3
JDK: 21
OS: ubuntu-latest
What happened?
CodeQL Java extraction fails on valid Java 21 switch syntax.
Error:
- Unable to parse source file:
.../PrintixService.java - Parse error at line 84 column 23: Syntax error on token "default", invalid Expression
Then finalize fails with:
- "CodeQL detected code written in Java/Kotlin but could not process any of it."
- exit code 32
Minimal reproducible example
static String f(Object x) {
return switch (x) {
case null, default -> "v";
};
}
- 主要言語
- CodeQL
- スター
- 10.1k
- フォーク
- 2.1k
- 平均マージ
- 2日 10時間
- マージ済み PR(30日)
- 134
コントリビューションガイド
はじめの一歩
- issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
- 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
- リポジトリをフォークし、ブランチを切って変更します。
- issue 番号を参照したプルリクエストを送ります。
github/codeql のほかの issue
-
難易度 2/5 1〜3時間 初心者へのやさしさ 84/100
-
C#: cs/simplifiable-boolean-expression false positive on Nullable<bool> compared with a literal オープン
難易度 2/5 1〜3時間 初心者へのやさしさ 82/100
-
難易度 2/5 1〜3時間 初心者へのやさしさ 78/100
-
false-positive
難易度 2/5 1〜3時間 初心者へのやさしさ 70/100
-
false-positive
難易度 3/5 1〜2日 初心者へのやさしさ 68/100
似ている issue
-
compiler/runtime
難易度 2/5 1〜3時間 初心者へのやさしさ 76/100
-
難易度 2/5 1〜3時間 初心者へのやさしさ 82/100
objectionary/eo#8869 · コメント 1 件 ·
-
難易度 2/5 1〜3時間 初心者へのやさしさ 88/100
EricSpencer00/Resilient#4824 · コメント 1 件 ·
-
bug
難易度 2/5 1〜3時間 初心者へのやさしさ 76/100
objectionary/jeo-maven-plugin#1758 ·
-
generics
難易度 2/5 1〜3時間 初心者へのやさしさ 82/100