The only comment NOT addressed by this version is: Peter Rosin doesn't want this code activated for msvc, but I'm not sure this patch should be modified to guard against a compiler, whose support (in Peter's branch) has not itself yet been merged into master. And I don't know what symbol to use; maybe Peter's branch has a special variable that should be tested?
I was thinking that a _LT_DECL variable should be added to libtool.m4 that instructed ltmain to enable this code branch instead of adding more compiler/system checks to ltmain. That would make it trivial to disable it where appropriate. And cl is already (allegedly) supported by libtool via the cccl script, this code will add further rot to that "support" if some kind of tool chain discrimination is not added. Cheers, Peter