> Using the autoloader protects you from WSOD should the ancestor class > move to a new file, because it will not attempt to set up the classes > the moment the module is enabled in the bootstrap.
This is not true, actually it's the exact opposite - which happens to be the topic of this thread. Try moving around modules and files in D7. Try early alpha versions of Entity module and update to later ones. Just try it. And see how Drupal blows up and leaves you with an almost unrecoverable state. The root of this problem is that Drupal requires a full bootstrap to flush all caches and/or to rebuild the class registry. However, a full bootstrap means that all .module files are loaded. Loading all .module files may contain classes already: class Foo extends Bar { } In case Bar was previously contained in sites/all/modules/bar/includes/controller.inc and now got moved into sites/all/modules/bar/bar.controller.inc, PHP is unable to find/autoload Bar, so you get a fatal error upon the class definition of Foo. Once you manually resolved the class registry problem, you still won't be able to bootstrap, due to http://drupal.org/node/996236 sun