-
Notifications
You must be signed in to change notification settings - Fork 4.3k
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
Added noexcept to methods called by async functions #44902
Conversation
cms-bot internal usage |
+code-checks Logs: https://cmssdt.cern.ch/SDT/code-checks/cms-sw-PR-44902/40169
|
A new Pull Request was created by @Dr15Jones for master. It involves the following packages:
@Dr15Jones, @makortel, @smuzaffar, @cmsbuild can you please review it and eventually sign? Thanks. cms-bot commands are listed here |
please test |
Does this PR address #44881 fully? Was there anything suspicious being called by the "leaf |
-1 Failed Tests: Build The following merge commits were also included on top of IB + this PR after doing git cms-merge-topic:
You can see more details here: BuildI found compilation error when building: >> Compiling edm plugin src/CondCore/CondHDF5ESSource/plugins/h5_File.cc /cvmfs/cms-ib.cern.ch/sw/x86_64/nweek-02835/el8_amd64_gcc12/external/gcc/12.3.1-40d504be6370b5a30e3947a6e575ca28/bin/c++ -c -DGNU_GCC -D_GNU_SOURCE -DTBB_USE_GLIBCXX_VERSION=120301 -DTBB_SUPPRESS_DEPRECATED_MESSAGES -DTBB_PREVIEW_RESUMABLE_TASKS=1 -DTBB_PREVIEW_TASK_GROUP_EXTENSIONS=1 -DBOOST_SPIRIT_THREADSAFE -DPHOENIX_THREADSAFE -DBOOST_MATH_DISABLE_STD_FPCLASSIFY -DBOOST_UUID_RANDOM_PROVIDER_FORCE_POSIX -DCMSSW_GIT_HASH='CMSSW_14_1_X_2024-05-03-1100' -DPROJECT_NAME='CMSSW' -DPROJECT_VERSION='CMSSW_14_1_X_2024-05-03-1100' -Isrc -Ipoison -I/cvmfs/cms-ib.cern.ch/sw/x86_64/nweek-02835/el8_amd64_gcc12/cms/cmssw-patch/CMSSW_14_1_X_2024-05-03-1100/src -I/cvmfs/cms-ib.cern.ch/sw/x86_64/nweek-02835/el8_amd64_gcc12/external/pcre/8.43-37eb2e8b73bab83d6645ecfd5d73dcaa/include -isystem/cvmfs/cms-ib.cern.ch/sw/x86_64/nweek-02835/el8_amd64_gcc12/external/boost/1.80.0-60a217837b5db1cff00c7d88ec42f53a/include -I/cvmfs/cms-ib.cern.ch/sw/x86_64/nweek-02835/el8_amd64_gcc12/external/bz2lib/1.0.6-d065ccd79984efc6d4660f410e4c81de/include -I/cvmfs/cms-ib.cern.ch/sw/x86_64/nweek-02835/el8_amd64_gcc12/external/hdf5/1.14.1-ad021c660c3b0cd29382d3e80a6db159/include -I/cvmfs/cms-ib.cern.ch/sw/x86_64/nweek-02835/el8_amd64_gcc12/external/libuuid/2.34-27ce4c3579b5b1de2808ea9c4cd8ed29/include -isystem/cvmfs/cms-ib.cern.ch/sw/x86_64/nweek-02835/el8_amd64_gcc12/lcg/root/6.30.07-af9aa5891b3bdefde46d3b3a76481356/include -isystem/cvmfs/cms-ib.cern.ch/sw/x86_64/nweek-02835/el8_amd64_gcc12/external/tbb/v2021.9.0-5849be8e21b090e14f1b189539cee138/include -I/cvmfs/cms-ib.cern.ch/sw/x86_64/nweek-02835/el8_amd64_gcc12/external/xz/5.2.5-6f3f49b07db84e10c9be594a1176c114/include -I/cvmfs/cms-ib.cern.ch/sw/x86_64/nweek-02835/el8_amd64_gcc12/external/zlib/1.2.11-51072030b7f93c3ac6c4235f21e413cb/include -I/cvmfs/cms-ib.cern.ch/sw/x86_64/nweek-02835/el8_amd64_gcc12/external/fmt/8.0.1-786658da8424a36fd9daec568588b7aa/include -I/cvmfs/cms-ib.cern.ch/sw/x86_64/nweek-02835/el8_amd64_gcc12/external/md5/1.0.0-5b594b264e04ae51e893b1d69a797ec6/include -I/cvmfs/cms-ib.cern.ch/sw/x86_64/nweek-02835/el8_amd64_gcc12/external/openmpi/4.1.6-700b2cef7d1a94593f87779f3bebe620/include -I/cvmfs/cms-ib.cern.ch/sw/x86_64/nweek-02835/el8_amd64_gcc12/external/tinyxml2/6.2.0-b248972f299359d73b1605c96291455f/include -O2 -pthread -pipe -Werror=main -Werror=pointer-arith -Werror=overlength-strings -Wno-vla -Werror=overflow -std=c++17 -ftree-vectorize -Werror=array-bounds -Werror=format-contains-nul -Werror=type-limits -fvisibility-inlines-hidden -fno-math-errno --param vect-max-version-for-alias-checks=50 -Xassembler --compress-debug-sections -Wno-error=array-bounds -Warray-bounds -fuse-ld=bfd -msse3 -felide-constructors -fmessage-length=0 -Wall -Wno-non-template-friend -Wno-long-long -Wreturn-type -Wextra -Wpessimizing-move -Wclass-memaccess -Wno-cast-function-type -Wno-unused-but-set-parameter -Wno-ignored-qualifiers -Wno-unused-parameter -Wunused -Wparentheses -Werror=return-type -Werror=missing-braces -Werror=unused-value -Werror=unused-label -Werror=address -Werror=format -Werror=sign-compare -Werror=write-strings -Werror=delete-non-virtual-dtor -Werror=strict-aliasing -Werror=narrowing -Werror=unused-but-set-variable -Werror=reorder -Werror=unused-variable -Werror=conversion-null -Werror=return-local-addr -Wnon-virtual-dtor -Werror=switch -fdiagnostics-show-option -Wno-unused-local-typedefs -Wno-attributes -Wno-psabi -Wno-error=unused-variable -DBOOST_DISABLE_ASSERTS -flto=auto -fipa-icf -flto-odr-type-merging -fno-fat-lto-objects -Wodr -fPIC -MMD -MF tmp/el8_amd64_gcc12/src/CondCore/CondHDF5ESSource/plugins/CondCoreCondHDF5ESSource/h5_File.cc.d src/CondCore/CondHDF5ESSource/plugins/h5_File.cc -o tmp/el8_amd64_gcc12/src/CondCore/CondHDF5ESSource/plugins/CondCoreCondHDF5ESSource/h5_File.cc.o >> Compiling edm plugin src/CondCore/CondHDF5ESSource/plugins/h5_Group.cc /cvmfs/cms-ib.cern.ch/sw/x86_64/nweek-02835/el8_amd64_gcc12/external/gcc/12.3.1-40d504be6370b5a30e3947a6e575ca28/bin/c++ -c -DGNU_GCC -D_GNU_SOURCE -DTBB_USE_GLIBCXX_VERSION=120301 -DTBB_SUPPRESS_DEPRECATED_MESSAGES -DTBB_PREVIEW_RESUMABLE_TASKS=1 -DTBB_PREVIEW_TASK_GROUP_EXTENSIONS=1 -DBOOST_SPIRIT_THREADSAFE -DPHOENIX_THREADSAFE -DBOOST_MATH_DISABLE_STD_FPCLASSIFY -DBOOST_UUID_RANDOM_PROVIDER_FORCE_POSIX -DCMSSW_GIT_HASH='CMSSW_14_1_X_2024-05-03-1100' -DPROJECT_NAME='CMSSW' -DPROJECT_VERSION='CMSSW_14_1_X_2024-05-03-1100' -Isrc -Ipoison -I/cvmfs/cms-ib.cern.ch/sw/x86_64/nweek-02835/el8_amd64_gcc12/cms/cmssw-patch/CMSSW_14_1_X_2024-05-03-1100/src -I/cvmfs/cms-ib.cern.ch/sw/x86_64/nweek-02835/el8_amd64_gcc12/external/pcre/8.43-37eb2e8b73bab83d6645ecfd5d73dcaa/include -isystem/cvmfs/cms-ib.cern.ch/sw/x86_64/nweek-02835/el8_amd64_gcc12/external/boost/1.80.0-60a217837b5db1cff00c7d88ec42f53a/include -I/cvmfs/cms-ib.cern.ch/sw/x86_64/nweek-02835/el8_amd64_gcc12/external/bz2lib/1.0.6-d065ccd79984efc6d4660f410e4c81de/include -I/cvmfs/cms-ib.cern.ch/sw/x86_64/nweek-02835/el8_amd64_gcc12/external/hdf5/1.14.1-ad021c660c3b0cd29382d3e80a6db159/include -I/cvmfs/cms-ib.cern.ch/sw/x86_64/nweek-02835/el8_amd64_gcc12/external/libuuid/2.34-27ce4c3579b5b1de2808ea9c4cd8ed29/include -isystem/cvmfs/cms-ib.cern.ch/sw/x86_64/nweek-02835/el8_amd64_gcc12/lcg/root/6.30.07-af9aa5891b3bdefde46d3b3a76481356/include -isystem/cvmfs/cms-ib.cern.ch/sw/x86_64/nweek-02835/el8_amd64_gcc12/external/tbb/v2021.9.0-5849be8e21b090e14f1b189539cee138/include -I/cvmfs/cms-ib.cern.ch/sw/x86_64/nweek-02835/el8_amd64_gcc12/external/xz/5.2.5-6f3f49b07db84e10c9be594a1176c114/include -I/cvmfs/cms-ib.cern.ch/sw/x86_64/nweek-02835/el8_amd64_gcc12/external/zlib/1.2.11-51072030b7f93c3ac6c4235f21e413cb/include -I/cvmfs/cms-ib.cern.ch/sw/x86_64/nweek-02835/el8_amd64_gcc12/external/fmt/8.0.1-786658da8424a36fd9daec568588b7aa/include -I/cvmfs/cms-ib.cern.ch/sw/x86_64/nweek-02835/el8_amd64_gcc12/external/md5/1.0.0-5b594b264e04ae51e893b1d69a797ec6/include -I/cvmfs/cms-ib.cern.ch/sw/x86_64/nweek-02835/el8_amd64_gcc12/external/openmpi/4.1.6-700b2cef7d1a94593f87779f3bebe620/include -I/cvmfs/cms-ib.cern.ch/sw/x86_64/nweek-02835/el8_amd64_gcc12/external/tinyxml2/6.2.0-b248972f299359d73b1605c96291455f/include -O2 -pthread -pipe -Werror=main -Werror=pointer-arith -Werror=overlength-strings -Wno-vla -Werror=overflow -std=c++17 -ftree-vectorize -Werror=array-bounds -Werror=format-contains-nul -Werror=type-limits -fvisibility-inlines-hidden -fno-math-errno --param vect-max-version-for-alias-checks=50 -Xassembler --compress-debug-sections -Wno-error=array-bounds -Warray-bounds -fuse-ld=bfd -msse3 -felide-constructors -fmessage-length=0 -Wall -Wno-non-template-friend -Wno-long-long -Wreturn-type -Wextra -Wpessimizing-move -Wclass-memaccess -Wno-cast-function-type -Wno-unused-but-set-parameter -Wno-ignored-qualifiers -Wno-unused-parameter -Wunused -Wparentheses -Werror=return-type -Werror=missing-braces -Werror=unused-value -Werror=unused-label -Werror=address -Werror=format -Werror=sign-compare -Werror=write-strings -Werror=delete-non-virtual-dtor -Werror=strict-aliasing -Werror=narrowing -Werror=unused-but-set-variable -Werror=reorder -Werror=unused-variable -Werror=conversion-null -Werror=return-local-addr -Wnon-virtual-dtor -Werror=switch -fdiagnostics-show-option -Wno-unused-local-typedefs -Wno-attributes -Wno-psabi -Wno-error=unused-variable -DBOOST_DISABLE_ASSERTS -flto=auto -fipa-icf -flto-odr-type-merging -fno-fat-lto-objects -Wodr -fPIC -MMD -MF tmp/el8_amd64_gcc12/src/CondCore/CondHDF5ESSource/plugins/CondCoreCondHDF5ESSource/h5_Group.cc.d src/CondCore/CondHDF5ESSource/plugins/h5_Group.cc -o tmp/el8_amd64_gcc12/src/CondCore/CondHDF5ESSource/plugins/CondCoreCondHDF5ESSource/h5_Group.cc.o In file included from src/CondCore/CondHDF5ESSource/plugins/HDF5ProductResolver.cc:21: src/CondCore/CondHDF5ESSource/plugins/HDF5ProductResolver.h:51:8: error: looser exception specification on overriding virtual function 'virtual void HDF5ProductResolver::prefetchAsyncImpl(edm::WaitingTaskHolder, const edm::eventsetup::EventSetupRecordImpl&, const edm::eventsetup::DataKey&, const edm::EventSetupImpl*, const edm::ServiceToken&, const edm::ESParentContext&)' 51 | void prefetchAsyncImpl(edm::WaitingTaskHolder iTask, | ^~~~~~~~~~~~~~~~~ In file included from src/FWCore/Framework/interface/ESSourceProductResolverBase.h:28, from src/CondCore/CondHDF5ESSource/plugins/HDF5ProductResolver.h:24: src/FWCore/Framework/interface/ESProductResolver.h:81:20: note: overridden function is 'virtual void edm::eventsetup::ESProductResolver::prefetchAsyncImpl(edm::WaitingTaskHolder, const edm::eventsetup::EventSetupRecordImpl&, const edm::eventsetup::DataKey&, const edm::EventSetupImpl*, const edm::ServiceToken&, const edm::ESParentContext&) noexcept' |
The frameworks internal async functions assume that no exceptions happen during the call. By adding noexcept to methods they call the C++ runtime will enforce this requirement.
1b00d84
to
5b1d5a1
Compare
please test |
+code-checks Logs: https://cmssdt.cern.ch/SDT/code-checks/cms-sw-PR-44902/40172
|
Pull request #44902 was updated. @saumyaphor4252, @consuegs, @Dr15Jones, @perrotta, @smuzaffar, @makortel, @francescobrivio can you please check and sign again. |
+1 Summary: https://cmssdt.cern.ch/SDT/jenkins-artifacts/pull-request-integration/PR-a7c826/39235/summary.html Comparison SummarySummary:
|
I didn't notice anything, but wasn't looking super closely. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Noted a few places we could continue noexcept
percolation (in subsequent PR(s)).
+core |
+db
|
This pull request is fully signed and it will be integrated in one of the next master IBs (tests are also fine). This pull request will now be reviewed by the release team before it's merged. @sextonkennedy, @rappoccio, @antoniovilela (and backports should be raised in the release meeting by the corresponding L2) |
+1 |
PR description:
The frameworks internal async functions assume that no exceptions happen during the call. By adding noexcept to methods they call the C++ runtime will enforce this requirement.
PR validation:
Framework tests pass.