What I'm trying to do is find all explicit casts from type double or float to any other type in some source files I have. Is there a built-in gcc way to do this? Language is C.
Since casts are explicitly legal, and the right way to perform weird conversions, it's highly unlikely that gcc would contain an option to warn about them
Instead, depending on how huge your source is, you might be able to get away with:
grep '\(double|float\) ' *
to give you all of the double or float variables. Since c isn't a regular language, it's not trivial (with shell tools) to parse this into a list of double or float variables, but if your source is small enough, doing this by hand is easy.
grep '([^()]*)[ ()]*\(your list of variable names\)' *
From there would show you many of your casts.