Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Java: Support CompileTimeConstantExpr for constant fields from compiled classes #8650

Marcono1234 started this conversation in Ideas
Discussion options

When compiled classes have constant fields, source code referencing them uses the constant value. A simple example for this is the following:

class ConstantTest {
 static final int VALUE = Integer.MAX_VALUE;
}

Compiling this class and inspecting it with javap -v shows that the value of Integer.MAX_VALUE, that is 2147483647, has been stored in the class file (instead of performing a field read). This is also explicitly mentioned in JLS 17 §13.4.9.

Currently CodeQL's CompileTimeConstantExpr does not support this; I assume because the information is missing from the database. Would it be possible to store this information in the database during extraction?

You must be logged in to vote

Replies: 1 comment

Comment options

This is definitely something that would be nice to have. I don't currently know how easy it would be to extend the extractor to capture this information.

You must be logged in to vote
0 replies
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Category
Ideas
Labels
None yet

AltStyle によって変換されたページ (->オリジナル) /