WIP: AmpGen fixes to compile with gcc 6.2
Added includes for various STL classes, mostly for std::vector
which was only implicitly included from algorithm
. This worked fine for gcc 4.8 and 4.9 but does not work anymore for gcc 6.2.
Also added plenty of override
keywords where applicable to get the extreme number of warnings down due to the -Wsuggest-override
flag. Probably missed quite a few and will keep looking.
This is marked as WIP because there seems to be other active AmpGen branches and I am not sure yet which is the smartest way to merge all of them.
Merge request reports
Activity
mentioned in merge request !221 (merged)
This should be no longer needed after !221 (merged) was merged. Let me know if there are any issues!Nevermind, I see you are merging into a different branch.Edited by Henry Fredrick SchreinerI assume you plan to merge LHCBGAUSS-1058.AmpGenDev into master/Sim09/Sim09-upgrade (Or the Sim10 equivalents once released) eventually? I suspect that this will not the only reason why the x86_64-centos7-gcc62 builds in the nightlies will fail, but it will definitely be one of them. It would be great to get that fixed.
Just tested the content of !227 (merged) and it compiles fine on x86_64-centos7-gcc62 (with the exception of a lot of warnings due to missing override).
@dmuller - yes - we do plan on merging AmpGenDev into the production environment relatively soon as MC productions are required with some of these changes included. Exactly how we do this is a little tricky as some changes have potential impact on models used in previous productions - and it isn't clear the best strategy to avoid these problems - will keep you informed on exactly what is decided.
- [2018-01-24 00:04] Automatic merge failed in lhcb-gauss-dev#1524
- [2018-01-25 00:04] Automatic merge failed in lhcb-gauss-dev#1525
- [2018-01-26 00:04] Automatic merge failed in lhcb-gauss-dev#1526
- [2018-01-27 00:05] Automatic merge failed in lhcb-gauss-dev#1527
- [2018-01-28 00:05] Automatic merge failed in lhcb-gauss-dev#1528
- [2018-01-29 00:05] Automatic merge failed in lhcb-gauss-dev#1529
- [2018-01-30 00:04] Automatic merge failed in lhcb-gauss-dev#1530
- [2018-01-31 00:05] Automatic merge failed in lhcb-gauss-dev#1531
- [2018-02-01 00:04] Automatic merge failed in lhcb-gauss-dev#1532
- [2018-02-02 00:04] Automatic merge failed in lhcb-gauss-dev#1533
- [2018-02-03 00:04] Automatic merge failed in lhcb-gauss-dev#1534
- [2018-02-04 00:04] Automatic merge failed in lhcb-gauss-dev#1535
- [2018-02-05 00:05] Automatic merge failed in lhcb-gauss-dev#1536
- [2018-02-06 00:04] Automatic merge failed in lhcb-gauss-dev#1537
- [2018-02-07 00:05] Automatic merge failed in lhcb-gauss-dev#1538
- [2018-02-07 16:04] Automatic merge failed in lhcb-gauss-dev#1539
Edited by Software for LHCbIs there anything wrong with !227 (merged)? I think it has the same fixes as this.Sorry, just realized that this is to a different branch.
Edited by Henry Fredrick SchreinerBtw, there are many conflicts when the build system tries to merge this MR automatically in the nightlies:
merged commit 30f18043743dd25e51d0c9a11e314f8f1782dfbe (lhcb/Gauss!113) not merged commit 146880f9a567943d1236c7dec1781db65ce8a4e1 (lhcb/Gauss!226) merged commit 1374eb7d201f5cbc20a0c90fdebb220dcab1bcfb (lhcb/Gauss!236) merged commit 4cbe8aeba0b4f4eae435df10c7f7e89cb2a55991 (lhcb/Gauss!237) merged commit 0d07f0bdf19a2e42c26e07baefc39c1760fc51a2 (lhcb/Gauss!238) merged commit 1872bfcefe56c63ee37acfd25b709da3bdb4c215 (lhcb/Gauss!239) merged commit 2de4c2e4f59349009f7adae89143af51cce25d29 (lhcb/Gauss!240)
It is marked as WIP, I thought the build system skips those? Anyway, this merge request was intended as a fix but if !227 (merged) already does the same changes this MR can also be closed I guess. Those fixes to compile with gcc6.2 should in the end go to master and sim09 as well I assume?
We are explicitly trying to pick it up in
lhcb-gauss-dev
that is built with the master branch. One can force picking up specific MR in the nightly even when marked with WIP.The fixes for gcc 6.2. are needed in master and possibly for sim09-upgrade but NOT for sim09 since that will always be build on gcc 4.8 for production.
Maybe I am mistaken, but !227 (merged) implements the same fixes that are required to have it work with gcc62. Hence, could we go with !227 (merged) and close this merge request?
Yes but they are supposed to go into different branches :) On the other hand we do not need gcc62 compatibility in Sim09-upgrade because the version of G4 we use does not compile on gcc62. Hence we can close this and once LHCBGAUSS-1058.AmpGenDev will be merged to the branch it was originating from and cherry picked to the other branches the fixes will be picked up. Note that gcc62 minimal compilation fixes will already be put in master via !113 (merged)