BUILD: bug: refine HA_LINK_ERROR() to only be used on gcc and derivatives

TCC happens to define __OPTIMIZE__ at -O2 but doesn't proceed with dead
code elimination, resulting in ha_free() to always reference the link
error symbol. Let's condition this test on __GCC__ which others like
Clang also define.
1 file changed