Try with ROOT 5 or ROOT 6:
if (!TMath::Finite(*genWeight)) {
std::cout << "Entry = " << myReader.GetCurrentEntry() << " *genWeight = " << *genWeight << std::endl;
continue;
}
if (!TMath::Finite(sum_pt)) {
std::cout << "Entry = " << myReader.GetCurrentEntry() << " sum_pt = " << sum_pt << std::endl;
} else {
h_sumpt->Fill(sum_pt, *genWeight);
}
or with ROOT 6:
#include <cmath>
// ...
if (!std::isfinite(*genWeight)) {
std::cout << "Entry = " << myReader.GetCurrentEntry() << " *genWeight = " << *genWeight << std::endl;
continue;
}
if (!std::isfinite(sum_pt)) {
std::cout << "Entry = " << myReader.GetCurrentEntry() << " sum_pt = " << sum_pt << std::endl;
} else {
h_sumpt->Fill(sum_pt, *genWeight);
}