Hi Jason,
First - this isn't the appropriate forum for this kind of question. It's off topic to the discussion of GCC.
(Please respond to me off-list, thanks.)
Second: please provide a short compilable example code that replicates the problem.
Third: there are multiple return points within Throttle. The log messages are all the same, so the output doesn't help discern which return path was followed. I suggest changing the log messages to something that distinguishes the different return points, that may shed some light on where things are going awry.
HTH, --Eljay