Sara Golemon has a bit of a warning for those extension developers moving between PHP 5.2 and 5.3 - the Module API isn't 100 percent compatible.
Unlike PHP, C generally resolves function calls at compile time. When you introduce dynamically loadable shared objects, the ability to know their exact address ahead of time goes out the window [...] One of the things that makes this unnecessarily slower is libraries which export a lot of symbols which aren't needed outside of the file they were defined in.Because of some of the lazy ways of extension developers (well, some of them) there's been issues with some extensions not making things static when they should be. To counteract the problems this can cause, the PHP 5.3 developers changed the macros to expand out to static instead of const.