Recursive mangling should use all existing substitutions and newly created substitutions should be copied outer mangler.
This patch should fix PR30401 and related cases but unfortunately it is ABI breaking change for Clang backward compatibility (I hope it is rare case in practice). Perhaps this patch will have to be back ported to 3.9.
Maybe it'd be simpler to just override the output stream here rather than creating a new mangler?