I have the latest gnuradio release and I think the phase error
in gr_pll_carriertracking.cc might be wrong.
In Line 107 the phase error is calculated as,
error = phase_detector(iptr[i],d_phase);
whereas, I think it should be as shown below as the phase error is
calculated from the signal that has been corrected in phase.
error = phase_detector(optr[i],d_phase);
Am I right?