boolean isOptimizedFailing; if (passOnTrue) { assertWhenPassInfo = conditionFlowInfo.initsWhenTrue().unconditionalInits(); assertWhenFailInfo = conditionFlowInfo.initsWhenFalse(); isOptimizedPassing = isOptimizedTrueAssertion; } else { assertWhenPassInfo = conditionFlowInfo.initsWhenFalse().unconditionalInits(); assertWhenFailInfo = conditionFlowInfo.initsWhenTrue(); isOptimizedPassing = isOptimizedFalseAssertion; isOptimizedFailing = isOptimizedTrueAssertion;
boolean isOptimizedFailing; if (passOnTrue) { assertWhenPassInfo = conditionFlowInfo.initsWhenTrue().unconditionalInits(); assertWhenFailInfo = conditionFlowInfo.initsWhenFalse(); isOptimizedPassing = isOptimizedTrueAssertion; } else { assertWhenPassInfo = conditionFlowInfo.initsWhenFalse().unconditionalInits(); assertWhenFailInfo = conditionFlowInfo.initsWhenTrue(); isOptimizedPassing = isOptimizedFalseAssertion; isOptimizedFailing = isOptimizedTrueAssertion;
boolean isOptimizedFailing; if (passOnTrue) { assertWhenPassInfo = conditionFlowInfo.initsWhenTrue().unconditionalInits(); assertWhenFailInfo = conditionFlowInfo.initsWhenFalse(); isOptimizedPassing = isOptimizedTrueAssertion; } else { assertWhenPassInfo = conditionFlowInfo.initsWhenFalse().unconditionalInits(); assertWhenFailInfo = conditionFlowInfo.initsWhenTrue(); isOptimizedPassing = isOptimizedFalseAssertion; isOptimizedFailing = isOptimizedTrueAssertion;
boolean isOptimizedFailing; if (passOnTrue) { assertWhenPassInfo = conditionFlowInfo.initsWhenTrue().unconditionalInits(); assertWhenFailInfo = conditionFlowInfo.initsWhenFalse(); isOptimizedPassing = isOptimizedTrueAssertion; } else { assertWhenPassInfo = conditionFlowInfo.initsWhenFalse().unconditionalInits(); assertWhenFailInfo = conditionFlowInfo.initsWhenTrue(); isOptimizedPassing = isOptimizedFalseAssertion; isOptimizedFailing = isOptimizedTrueAssertion;
boolean isOptimizedFailing; if (passOnTrue) { assertWhenPassInfo = conditionFlowInfo.initsWhenTrue().unconditionalInits(); assertWhenFailInfo = conditionFlowInfo.initsWhenFalse(); isOptimizedPassing = isOptimizedTrueAssertion; } else { assertWhenPassInfo = conditionFlowInfo.initsWhenFalse().unconditionalInits(); assertWhenFailInfo = conditionFlowInfo.initsWhenTrue(); isOptimizedPassing = isOptimizedFalseAssertion; isOptimizedFailing = isOptimizedTrueAssertion;
boolean isOptimizedFailing; if (passOnTrue) { assertWhenPassInfo = conditionFlowInfo.initsWhenTrue().unconditionalInits(); assertWhenFailInfo = conditionFlowInfo.initsWhenFalse(); isOptimizedPassing = isOptimizedTrueAssertion; } else { assertWhenPassInfo = conditionFlowInfo.initsWhenFalse().unconditionalInits(); assertWhenFailInfo = conditionFlowInfo.initsWhenTrue(); isOptimizedPassing = isOptimizedFalseAssertion; isOptimizedFailing = isOptimizedTrueAssertion;
boolean isOptimizedFailing; if (passOnTrue) { assertWhenPassInfo = conditionFlowInfo.initsWhenTrue().unconditionalInits(); assertWhenFailInfo = conditionFlowInfo.initsWhenFalse(); isOptimizedPassing = isOptimizedTrueAssertion; } else { assertWhenPassInfo = conditionFlowInfo.initsWhenFalse().unconditionalInits(); assertWhenFailInfo = conditionFlowInfo.initsWhenTrue(); isOptimizedPassing = isOptimizedFalseAssertion; isOptimizedFailing = isOptimizedTrueAssertion;
FlowInfo rightInfo = leftInfo.initsWhenTrue().unconditionalCopy(); this.rightInitStateIndex = currentScope.methodScope().recordInitializationStates(rightInfo); flowContext.expireNullCheckedFieldInfo(); this.left.checkNPEbyUnboxing(currentScope, flowContext, flowInfo); this.right.checkNPEbyUnboxing(currentScope, flowContext, leftInfo.initsWhenTrue()); FlowInfo mergedInfo = FlowInfo.conditional( rightInfo.safeInitsWhenTrue(),
FlowInfo rightInfo = leftInfo.initsWhenTrue().unconditionalCopy(); this.rightInitStateIndex = currentScope.methodScope().recordInitializationStates(rightInfo); flowContext.expireNullCheckedFieldInfo(); this.left.checkNPEbyUnboxing(currentScope, flowContext, flowInfo); this.right.checkNPEbyUnboxing(currentScope, flowContext, leftInfo.initsWhenTrue()); FlowInfo mergedInfo = FlowInfo.conditional( rightInfo.safeInitsWhenTrue(),
FlowInfo rightInfo = leftInfo.initsWhenTrue().unconditionalCopy(); this.rightInitStateIndex = currentScope.methodScope().recordInitializationStates(rightInfo); flowContext.expireNullCheckedFieldInfo(); this.left.checkNPEbyUnboxing(currentScope, flowContext, flowInfo); this.right.checkNPEbyUnboxing(currentScope, flowContext, leftInfo.initsWhenTrue()); FlowInfo mergedInfo = FlowInfo.conditional( rightInfo.safeInitsWhenTrue(),
FlowInfo rightInfo = leftInfo.initsWhenTrue().unconditionalCopy(); this.rightInitStateIndex = currentScope.methodScope().recordInitializationStates(rightInfo); flowContext.expireNullCheckedFieldInfo(); this.left.checkNPEbyUnboxing(currentScope, flowContext, flowInfo); this.right.checkNPEbyUnboxing(currentScope, flowContext, leftInfo.initsWhenTrue()); FlowInfo mergedInfo = FlowInfo.conditional( rightInfo.safeInitsWhenTrue(),
FlowInfo rightInfo = leftInfo.initsWhenTrue().unconditionalCopy(); this.rightInitStateIndex = currentScope.methodScope().recordInitializationStates(rightInfo); flowContext.expireNullCheckedFieldInfo(); this.left.checkNPEbyUnboxing(currentScope, flowContext, flowInfo); this.right.checkNPEbyUnboxing(currentScope, flowContext, leftInfo.initsWhenTrue()); FlowInfo mergedInfo = FlowInfo.conditional( rightInfo.safeInitsWhenTrue(),
FlowInfo rightInfo = leftInfo.initsWhenTrue().unconditionalCopy(); this.rightInitStateIndex = currentScope.methodScope().recordInitializationStates(rightInfo); flowContext.expireNullCheckedFieldInfo(); this.left.checkNPEbyUnboxing(currentScope, flowContext, flowInfo); this.right.checkNPEbyUnboxing(currentScope, flowContext, leftInfo.initsWhenTrue()); FlowInfo mergedInfo = FlowInfo.conditional( rightInfo.safeInitsWhenTrue(),
FlowInfo rightInfo = leftInfo.initsWhenTrue().unconditionalCopy(); this.rightInitStateIndex = currentScope.methodScope().recordInitializationStates(rightInfo); flowContext.expireNullCheckedFieldInfo(); this.left.checkNPEbyUnboxing(currentScope, flowContext, flowInfo); this.right.checkNPEbyUnboxing(currentScope, flowContext, leftInfo.initsWhenTrue()); FlowInfo mergedInfo = FlowInfo.conditional( rightInfo.safeInitsWhenTrue(),
UnconditionalFlowInfo assertWhenTrueInfo = conditionFlowInfo.initsWhenTrue().unconditionalInits(); FlowInfo assertInfo = conditionFlowInfo.initsWhenFalse(); if (isOptimizedTrueAssertion) {
FlowInfo rightInfo = leftInfo.initsWhenTrue().unconditionalCopy(); this.rightInitStateIndex = currentScope.methodScope().recordInitializationStates(rightInfo);
FlowInfo mergedInfo = FlowInfo.conditional( leftInfo.initsWhenTrue().unconditionalInits().mergedWith( rightInfo.safeInitsWhenTrue().setReachMode(previousMode).unconditionalInits()), rightInfo.initsWhenFalse());
flowContext.extendTimeToLiveForNullCheckedField(1); // survive this assert as a Statement flowContext.tagBits &= ~FlowContext.HIDE_NULL_COMPARISON_WARNING; UnconditionalFlowInfo assertWhenTrueInfo = conditionFlowInfo.initsWhenTrue().unconditionalInits(); FlowInfo assertInfo = conditionFlowInfo.initsWhenFalse(); if (isOptimizedTrueAssertion) {
FlowInfo rightInfo = leftInfo.initsWhenTrue().unconditionalCopy(); this.rightInitStateIndex = currentScope.methodScope().recordInitializationStates(rightInfo);
FlowInfo rightInfo = leftInfo.initsWhenTrue().unconditionalCopy(); this.rightInitStateIndex = currentScope.methodScope().recordInitializationStates(rightInfo);