Some php 5.1 extensions are not built as shared with USE="sharedext" because the eclass function enable_extension_disable, used in php5_1-sapi.eclass, do not pass "enable shared" flag to configure script if the extension is enabled. php 5.0 ebuilds have the same problem. The example of such extensions are openssl, pdo.
That's not a bug, it's intentional. They either can't be built as shared (pdo) or break other things when built as shared (ssl). For pdo, set USE=pdo-external instead. Sorry, WONTFIX.