Files
openide/java/java-tests/testSrc
Tagir Valeev 13845dd38c [java-dfa] Call restrictFromState when we track chained qualified value as well
It's possible that we track chained qualifier value only. E.g., under if (!str.trim().isEmpty()) we store nothing about str.trim, but we know that str.trim.length is 'int >= 1'. So if later we get a new fact about str, like if (str.equals("\n")), we still should call restrictFromState, as this fact implies that str.trim == "" and str.trim.length == 0, contradicting the current memory state, so we should not apply such a fact.

Fixes IDEA-357897 DFA produces exception: Precalculated value description.trim mismatches with method handler
Should fix at least partially EA-1080132 ISE: MethodCallInstruction.getMethodResultValue (String.trim, Enum.name)

GitOrigin-RevId: 47849768da15f2878957a0fcce9e358152fbd7e4
2024-08-28 17:54:26 +00:00
..