Merge pull request #12187 from colemanw/recursive