This one is a bit bizarre. Building dev-ruby/json-1.6.8 fails because the -combine flag is not recognized. However, I removed that flag from my CFLAG a while back during a GCC upgrade. Looking at the flags it is using it includes flags that I haven't used in quite a while. Is it somehow caching the flags it is built with, or getting them from somewhere other than make.conf or /etc/portage/env. Please note carefully the attached output of emerge --info '=dev-ruby/json-1.6.8' - that should pick up on any flags that portage is passing to the ebuild. Reproducible: Always
Created attachment 340070 [details] emerge --info '=dev-ruby/json-1.6.8'
Created attachment 340072 [details] build log
Created attachment 340074 [details] emerge -pqv '=dev-ruby/json-1.6.8'
This is by design, all ruby extensions are compiled with the same CFLAGS as the original ruby interpreter to maximize compatibility. You can re-install your version of dev-lang/ruby to make the new CFLAGS effective there as well.
Indeed, that worked. Thanks!