I think you forgot to remove the second condition.
if (FTI.NumArgs > 0 && D.getContext() != Declarator::ConditionContext) {
You already have this check "D.getContext() ==
Declarator::ConditionContext" few lines above.
Thanks for the quick reviews and your patience.