Hi.
The 64 bit version of this library is in a different directory :
[root@zone3 etc]$ file /opt/gcc/lib/libssp.so.0
/opt/gcc/lib/libssp.so.0: ELF 32-bit MSB dynamic lib SPARC32PLUS Version 1, V8+ Required, dynamically linked, not stripped
[root@zone3 etc]$ file /opt/gcc/lib/sparcv9/libssp.so.0.0.0
/opt/gcc/lib/sparcv9/libssp.so.0.0.0: ELF 64-bit MSB dynamic lib SPARCV9 Version 1, dynamically linked, not stripped
So for the record yes I'm bootstrapping in 32 bits on Solaris 10. I'm using my own home build GCC 8. At this point, I'm only able to make it work that way. As Jonathan said, It should work and I will eventually investigate (maybe with his help if he doesn't mind) and I'll try to provide a working procedure to make a 64 bits bootstrap on Solaris 10.
Concerning shells, as I said on Solaris 10, sh and bash are pretty much broken. ksh should be fine but, if I remember correctly, I faced some compatibility issues with some packages. So my quick workaround was to replace the "system" bash (/usr/bin/bash ) with one provided by pkgsrc. You might want to try ksh before doing what I did.
About Solaris 11, that's great. I have a Netra T100 and a SunFire V100. Both a pretty much capped to Solaris 10. Never tried Solaris 11 but from what I read it seems much more compatible with pkgsrc and a lot of software. I'd say if your hardware is Solaris 11 compatible it might be a good idea to upgrade. Solaris 10 is starting to get old and I think we will eventually start to face more and more issues related to its age. In my case, I'll stick to Solaris 10 for my SPARC as long as NetBSD doesn't have any zone/jail/container like technology.