It's a convoluted process, but you can indirectly buy
BTC with credit cards using Virwox:
https://www.virwox.com/Basically, the process is deposit USD instantaneously through credit card using Skrill/Moneybookers. Exchange $ for SLL (Second Life Linden dollars). Exchange SLL for
BTC. YMMV on what the final USD/
BTC exchange rate will turn out to be.
**EDIT 4/21/2013: My credit card company (Citi in this case) charged a foreign transaction fee of around $2.50 for each payment using Skrill/Moneybookers. Seems that although Skrill has a NYC office, they are an international payment processor and as such are subject to the foreign transaction fee by some credit card companies. Citi wouldn't budge on this. I haven't tried instead using PayPal to fund the VirWox account, but that might be an option.**
The only catch is there's a daily and monthly credit card deposit limit in Virwox, but this increases over time.
You can get around the limits by buying SLL at any online retailer who accepts credit cards for SLL. The problem is the only way to transfer SLL to Virwox is through the in-game Virwox ATMs, and this functionality is only available once your character is more than 30 days old (it's free to download and install the game and create a character).
**EDIT again: Even after my character being 30 days old, the Second Life Risk API wouldn't let me deposit SLL into Virwox through the in-game ATMs. I emailed Virwox and they were able to manually put in an exception for me which allows me to deposit up to SLL 5000 per week.**
Told you it was convoluted.