revert #16672 for incorrect semantics