mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-02-05 08:06:56 +07:00
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