Use out instead of varying in builtins for DX9 (where supported). Also try to make the warning about gl_FragData go away on targets where it's deprecated.
Make the standalone GLSL validator also print out any possible warnings generated.