-
Notifications
You must be signed in to change notification settings - Fork 38.7k
qt: define QT_NO_KEYWORDS #6433
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
|
code-review ACK. |
|
Quick glance utACK. Nice fix. IMO it's more readable this way anyway, since it makes it more obvious to the casual reader that signals/slots are just sugary macros and not some c++ functionality they're not aware of. |
|
utACK |
QT_NO_KEYWORDS prevents Qt from defining the `foreach`, `signals`, `slots` and `emit` macros. Avoid overlap between Qt macros and boost - for example #undef hackiness in bitcoin#6421.
27fc6c7 to
d29ec6c
Compare
|
Fixed some unmeant changes of emit in sentences to Q_EMIT in comments (but left the ones where it makes sense) |
d29ec6c qt: define QT_NO_KEYWORDS (Wladimir J. van der Laan)
|
Should be fairly risk-free to do in older major releases as well in case we want to backport #6421 |
|
Cherry-picked to 0.11 as e092f22 |
QT_NO_KEYWORDS prevents Qt from defining the `foreach`, `signals`, `slots` and `emit` macros. Avoid overlap between Qt macros and boost - for example #undef hackiness in #6421. Conflicts: src/qt/addressbookpage.cpp src/qt/peertablemodel.cpp src/qt/receivecoinsdialog.cpp src/qt/rpcconsole.cpp Rebased-From: d29ec6c Github-Pull: #6433
3c7ec95 [Qt] Define QT_NO_KEYWORDS (Fuzzbawls) Pull request description: QT_NO_KEYWORDS prevents Qt from defining the `foreach`, `signals`, `slots` and `emit` macros. This avoids overlap between Qt macros and boost, and enforces the standard. Marked as [WIP] for the time being so as to not merge and create conflicts with existing open PRs. Can still be reviewed however. Ported mostly from bitcoin#6433 ACKs for top commit: random-zebra: ACK 3c7ec95 furszy: utACK 3c7ec95 Tree-SHA512: 867498a1774ad0d3b1b987e82c5023bead62b2669af8f4343903651e49eab204f3444cbfbc1f9ce54d70546d3d7ea128705d8d46470a8a7bbe01ac82f76cefa9
3c7ec95db569fff8c5933632fce5f7e24f4c29ed [Qt] Define QT_NO_KEYWORDS (Fuzzbawls) Pull request description: QT_NO_KEYWORDS prevents Qt from defining the `foreach`, `signals`, `slots` and `emit` macros. This avoids overlap between Qt macros and boost, and enforces the standard. Marked as [WIP] for the time being so as to not merge and create conflicts with existing open PRs. Can still be reviewed however. Ported mostly from bitcoin/bitcoin#6433 ACKs for top commit: random-zebra: ACK 3c7ec95db569fff8c5933632fce5f7e24f4c29ed furszy: utACK 3c7ec95 Tree-SHA512: 867498a1774ad0d3b1b987e82c5023bead62b2669af8f4343903651e49eab204f3444cbfbc1f9ce54d70546d3d7ea128705d8d46470a8a7bbe01ac82f76cefa9 # Conflicts: # src/qt/clientmodel.cpp # src/qt/paymentserver.cpp # src/qt/rpcconsole.cpp # src/qt/transactiondesc.cpp # src/qt/vitae/masternodeswidget.h # src/qt/vitae/masternodewizarddialog.h # src/qt/vitae/mnmodel.cpp # src/qt/vitae/mnrow.h # src/qt/vitae/send.cpp # src/qt/vitae/send.h # src/qt/vitae/settings/settingswalletrepairwidget.cpp # src/qt/vitae/topbar.cpp # src/qt/walletmodel.cpp
QT_NO_KEYWORDS prevents Qt from defining the
foreach,signals,slotsandemitmacros.Avoid overlap between Qt macros and boost - for example #undef hackiness in #6421.
The drawback is that all uses of the macros have to be replace by Q_xxx, but at least this is easy to review.
Cc: @sipa @theuni