It wasn't complaining about structs or refs but wanted LINQ everywhere, anonymous lambdas and other high level constructs in place of high-performing but harder to read ones.
I wasn't using reflection either, it was something like this simplified pseudocode (off the top of my head, I haven't touched that codebase in over a year):
var completed = false
for each line in timeline do completed = completed || tick(line)
if completed // here it complained its always false
There was more to it (to handle time offsets and multipliers, disabled lines and whatnot) but thats the gist of the algorithm.
After disabling or tweaking rules every day I just decided to uninstall it, and as I said its a wonderful tool - just not for that specific task at that specific point in time :)