since I hate sender() and pb->children().at(0) is even less robust I suggest (assuming you declared QMenu* MainWindow::m):
connect(sel, &QPushButton::released, [=]()->void{
const QSize size = m->sizeHint();
m->popup(sel->mapToGlobal(QPoint(0,-size.height())));
});
P.S.
Looking at this functionality, are you sure QToolButton is not a better choice? see QToolButton::setMenu