False positive for java 21 switch case with null, default

Ouverte
#22,040 2 commentaires 0 réactions 0 personnes assignées Voir sur GitHub

Personne n'a encore pris cette issue.

Évaluation

Difficulté
3/5
Temps estimé
1-2 jours
Accessibilité débutants
55/100
Type d'issue
Bug
Clarté
Plutôt claire
Activité
Calme
Stack technique
java
Domaine
compilers

Piste de recherche

Reproduisez l’échec de l’extraction Java de CodeQL avec l’exemple minimal de switch Java 21 et le cas référencé de PrintixService.java. Commencez par suivre l’analyse par l’extracteur Java des labels de switch impliquant null et default. Le travail est terminé lorsque du code source Java 21 valide est extrait avec succès et que la finalisation traite le code Java sans les erreurs signalées.

Rédigé par le modèle d'indexation à partir du texte de l'issue.

Description

false-positive Stale
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";
  };
}
Langage dominant
CodeQL
Étoiles
10.1k
Forks
2.1k
Merge moyen
2 j 10 h
PR mergées (30 j)
134

Guide de contribution

Ouvrir le guide de contribution

Par où commencer

  1. Lisez l'issue en entier, puis le guide de contribution du projet.
  2. Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
  3. Forkez le dépôt et travaillez sur une branche.
  4. Ouvrez une pull request qui référence le numéro de l'issue.

Autres issues de github/codeql

Toutes les issues de github/codeql

Issues similaires

Plus d'issues Compilers

Recevez les nouvelles issues par e-mail

Un résumé court des issues GitHub adaptées aux débutants.