Pierre Joye wrote: > > A VC6 extension is not compatible with a VC9 build (or the other way > round). It crashes randomly depending on what the extension does > (xdebug for one is really good for this test :).
This is only true for specific combinations of extensions and 3p libs based on what resources the one grabs that the other releases. E.g. if the 3p lib calls malloc and expects the ext to call free(), those two must use the same msvcr. Similarly, an extension that close()'s a file handle allocated by php core, then those two must use the same. For most well partitioned API's this is simply not a problem. (e.g. for mod_perl which is anything but partitioned, it's a horrible situation.) If the additional info were a diagnostic form, that would be nice. As a roadblock to loading an extension? That's a nonstarter. The day after you ship Studio 9 builds (quit saying VC9 already! Studio 6 shipped VC12 a very long time ago) you recognize people will be also building with Studio 10? That's just the way these things go. So +1 for extra information; I can find that with the forever-distributed depends.exe tool anyways, but -1 to some blanket "enforcement" or for building this into the enforced "fingerprint" of php. And +1 for enforcing things such as zts by way of such a fingerprint. -- PHP Internals - PHP Runtime Development Mailing List To unsubscribe, visit: http://www.php.net/unsub.php