The goal of this enhancement is to deduplicate lambda implementation methods for lambda expressions declared in the same file that have the same target type, captured state, and body. This change adds a
utility for hashing and comparing trees that is used to perform the
deduplication. Deduplication is not performed if debug info is enabled, to preserve the accuracy of local variable and line number debug info. Serializable lambdas are not considered for deduplication.
utility for hashing and comparing trees that is used to perform the
deduplication. Deduplication is not performed if debug info is enabled, to preserve the accuracy of local variable and line number debug info. Serializable lambdas are not considered for deduplication.
- relates to
-
JDK-8318712 Lambda deduplication does not work when debugging info is generated
-
- Closed
-
-
JDK-8201194 Handle local variable declarations in lambda deduplication
-
- Resolved
-
-
JDK-8202141 Unique symbols for .class
-
- Closed
-
-
JDK-8275233 Incorrect line number reported in exception stack trace thrown from a lambda expression
-
- Resolved
-