Reserved Future Keyword Identifier
ID |
java.reserved_future_keyword_identifier |
Severity |
info |
Remediation Complexity |
trivial |
Remediation Risk |
low |
Remediation Effort |
low |
Resource |
Reliability |
Language |
Java |
Tags |
naming, reliability |
Description
Reports identifiers (field names, method names) that use Java reserved future keywords such as var, yield, record, sealed, permits, or module.
Rationale
Java progressively promotes contextual keywords to full keywords. Code that uses these words as identifiers compiles today but may fail when upgrading to a newer Java version or when enabling preview features:
int var = 10; // Conflicts with local variable type inference (Java 10+)
String record = ""; // Conflicts with record types (Java 16+)
boolean sealed = true; // Conflicts with sealed classes (Java 17+)