Skip to content
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

Do not complain about the internal of unique_ptr. Do not complain about transient std::tuple. #13900

Merged
merged 15 commits into from
May 28, 2024

Conversation

pcanal
Copy link
Member

@pcanal pcanal commented Oct 19, 2023

This fixes #13574

This prevents complains about the internals of unique_ptr when we are just investigating its suitability for streaming.

Also do not complains about a transient std::tuple even if we can not stream it (for example if one of component is a private entity).

Test at root-project/roottest#1030

@pcanal pcanal requested a review from Axel-Naumann as a code owner October 19, 2023 23:18
@phsft-bot
Copy link
Collaborator

Starting build on ROOT-performance-centos8-multicore/soversion, ROOT-ubuntu2204/nortcxxmod, ROOT-ubuntu2004/python3, mac12arm/cxx20, windows10/default
How to customize builds

@pcanal pcanal requested review from jblomer and vepadulano October 19, 2023 23:18
@phsft-bot
Copy link
Collaborator

Build failed on ROOT-performance-centos8-multicore/soversion.
Running on olbdw-01.cern.ch:/data/sftnight/workspace/root-pullrequests-build
See console output.

Errors:

  • [2023-10-19T23:38:38.739Z] 1496/2456 Test TDataSource upgrade #1219: tutorial-roofit-rf105_funcbinding-py ..............................................................***Failed Error regular expression found in output. Regex=[: error:] 4.14 sec
  • [2023-10-19T23:38:50.115Z] 1575/2456 Test [cxxmodules] Multiplex the ExternalASTSource in cling #1284: tutorial-roofit-rf607_fitresult-py ................................................................***Failed Error regular expression found in output. Regex=[: error:] 5.06 sec
  • [2023-10-19T23:38:55.735Z] 1657/2456 Test [TDF] Extend gtest for friends in MT #1310: tutorial-roostats-FourBinInstructional-py .........................................................***Failed Error regular expression found in output. Regex=[: error:] 6.57 sec
  • [2023-10-19T23:38:56.000Z] 1667/2456 Test Add new general and sequential executors. #1312: tutorial-roostats-MultivariateGaussianTest-py .....................................................***Failed Error regular expression found in output. Regex=[: error:] 6.76 sec
  • [2023-10-19T23:39:15.276Z] 1856/2456 Test [cxxmodules] Work around an issue being resolved in PR #1306. #1314: tutorial-roostats-rs101_limitexample-py ...........................................................***Failed Error regular expression found in output. Regex=[: error:] 25.67 sec

Failing tests:

And 1 more

@github-actions
Copy link

github-actions bot commented Oct 20, 2023

Test Results

    12 files      12 suites   2d 15h 13m 12s ⏱️
 2 646 tests  2 646 ✅ 0 💤 0 ❌
30 025 runs  30 025 ✅ 0 💤 0 ❌

Results for commit 2f2c69e.

♻️ This comment has been updated with latest results.

@phsft-bot
Copy link
Collaborator

Build failed on mac12arm/cxx20.
Running on macphsft26.dyndns.cern.ch:/Users/sftnight/build/workspace/root-pullrequests-build
See console output.

Errors:

  • [2023-10-20T00:52:27.110Z] 1313/2453 Test Cleanup the core/zip code. #1223: tutorial-roofit-rf105_funcbinding-py ..............................................................***Failed Error regular expression found in output. Regex=[: error:] 2.47 sec
  • [2023-10-20T00:53:00.757Z] 1378/2453 Test Use Long64_t for "out of range" determination. #1288: tutorial-roofit-rf607_fitresult-py ................................................................***Failed Error regular expression found in output. Regex=[: error:] 2.79 sec
  • [2023-10-20T00:53:14.177Z] 1406/2453 Test [cxxmodules] Work around an issue being resolved in PR #1306. #1314: tutorial-roostats-FourBinInstructional-py .........................................................***Failed Error regular expression found in output. Regex=[: error:] 3.21 sec
  • [2023-10-20T00:53:14.748Z] 1407/2453 Test TMVA class Classification #1316: tutorial-roostats-MultivariateGaussianTest-py .....................................................***Failed Error regular expression found in output. Regex=[: error:] 3.51 sec
  • [2023-10-20T00:53:21.037Z] 1426/2453 Test [cxxmodules] Do not look for an overlay file on modules-aware systems. #1318: tutorial-roostats-rs101_limitexample-py ...........................................................***Failed Error regular expression found in output. Regex=[: error:] 8.94 sec

Failing tests:

And 1 more

@pcanal
Copy link
Member Author

pcanal commented Oct 20, 2023

@phsft-bot build just on ROOT-ubuntu2204/nortcxxmod

@phsft-bot
Copy link
Collaborator

Starting build on ROOT-ubuntu2204/nortcxxmod
How to customize builds

@phsft-bot
Copy link
Collaborator

Starting build on ROOT-performance-centos8-multicore/soversion, ROOT-ubuntu2204/nortcxxmod, ROOT-ubuntu2004/python3, mac12arm/cxx20, windows10/default
How to customize builds

@phsft-bot
Copy link
Collaborator

Build failed on ROOT-ubuntu2204/nortcxxmod.
Running on root-ubuntu-2204-2.cern.ch:/home/sftnight/build/workspace/root-pullrequests-build
See console output.

Failing tests:

@phsft-bot
Copy link
Collaborator

Build failed on ROOT-ubuntu2004/python3.
Running on root-ubuntu-2004-1.cern.ch:/home/sftnight/build/workspace/root-pullrequests-build
See console output.

Failing tests:

@phsft-bot
Copy link
Collaborator

Build failed on windows10/default.
Running on null:C:\build\workspace\root-pullrequests-build
See console output.

Errors:

  • [2023-10-23T21:20:02.836Z] C:\build\workspace\root-pullrequests-build\root\tree\ntuple\v7\test\ntuple_show.cxx(270,22): error C2440: '<function-style-cast>': cannot convert from 'initializer list' to 'CustomStruct' [C:\build\workspace\root-pullrequests-build\build\tree\ntuple\v7\test\ntuple_show.vcxproj]
  • [2023-10-23T21:20:02.836Z] C:\build\workspace\root-pullrequests-build\root\tree\ntuple\v7\test\ntuple_show.cxx(273,22): error C2440: '<function-style-cast>': cannot convert from 'initializer list' to 'CustomStruct' [C:\build\workspace\root-pullrequests-build\build\tree\ntuple\v7\test\ntuple_show.vcxproj]
  • [2023-10-23T21:20:02.836Z] C:\build\workspace\root-pullrequests-build\root\tree\ntuple\v7\test\ntuple_show.cxx(275,22): error C2440: '<function-style-cast>': cannot convert from 'initializer list' to 'CustomStruct' [C:\build\workspace\root-pullrequests-build\build\tree\ntuple\v7\test\ntuple_show.vcxproj]
  • [2023-10-23T21:20:02.836Z] C:\build\workspace\root-pullrequests-build\root\tree\ntuple\v7\test\ntuple_show.cxx(277,22): error C2440: '<function-style-cast>': cannot convert from 'initializer list' to 'CustomStruct' [C:\build\workspace\root-pullrequests-build\build\tree\ntuple\v7\test\ntuple_show.vcxproj]
  • [2023-10-23T21:20:02.836Z] C:\build\workspace\root-pullrequests-build\root\tree\ntuple\v7\test\ntuple_show.cxx(280,22): error C2440: '<function-style-cast>': cannot convert from 'initializer list' to 'CustomStruct' [C:\build\workspace\root-pullrequests-build\build\tree\ntuple\v7\test\ntuple_show.vcxproj]
  • [2023-10-23T21:20:02.836Z] C:\build\workspace\root-pullrequests-build\root\tree\ntuple\v7\test\ntuple_show.cxx(282,22): error C2440: '<function-style-cast>': cannot convert from 'initializer list' to 'CustomStruct' [C:\build\workspace\root-pullrequests-build\build\tree\ntuple\v7\test\ntuple_show.vcxproj]
  • [2023-10-23T21:20:02.836Z] C:\build\workspace\root-pullrequests-build\root\tree\ntuple\v7\test\ntuple_show.cxx(284,25): error C2679: binary '=': no operator found which takes a right-hand operand of type 'initializer list' (or there is no acceptable conversion) [C:\build\workspace\root-pullrequests-build\build\tree\ntuple\v7\test\ntuple_show.vcxproj]
  • [2023-10-23T21:20:02.836Z] C:\build\workspace\root-pullrequests-build\root\tree\ntuple\v7\test\ntuple_show.cxx(396,100): error C2440: '<function-style-cast>': cannot convert from 'initializer list' to 'ROOT::VecOps::RVec<CustomStruct>' [C:\build\workspace\root-pullrequests-build\build\tree\ntuple\v7\test\ntuple_show.vcxproj]
  • [2023-10-23T21:20:02.836Z] C:\build\workspace\root-pullrequests-build\root\tree\ntuple\v7\test\ntuple_show.cxx(401,94): error C2440: '<function-style-cast>': cannot convert from 'initializer list' to 'CustomStruct' [C:\build\workspace\root-pullrequests-build\build\tree\ntuple\v7\test\ntuple_show.vcxproj]
  • [2023-10-23T21:20:02.836Z] C:\build\workspace\root-pullrequests-build\root\tree\ntuple\v7\test\ntuple_show.cxx(401,27): error C2672: 'ROOT::Detail::VecOps::RVecImpl<T>::emplace_back': no matching overloaded function found [C:\build\workspace\root-pullrequests-build\build\tree\ntuple\v7\test\ntuple_show.vcxproj]

And 12 more

@phsft-bot
Copy link
Collaborator

@pcanal
Copy link
Member Author

pcanal commented Oct 24, 2023

@phsft-bot build

@phsft-bot
Copy link
Collaborator

Starting build on ROOT-performance-centos8-multicore/soversion, ROOT-ubuntu2204/nortcxxmod, ROOT-ubuntu2004/python3, mac12arm/cxx20, windows10/default
How to customize builds

@phsft-bot
Copy link
Collaborator

Build failed on windows10/default.
Running on null:C:\build\workspace\root-pullrequests-build
See console output.

Errors:

  • [2023-10-24T13:08:16.025Z] C:\build\workspace\root-pullrequests-build\root\tree\ntuple\v7\test\ntuple_show.cxx(270,22): error C2440: '<function-style-cast>': cannot convert from 'initializer list' to 'CustomStruct' [C:\build\workspace\root-pullrequests-build\build\tree\ntuple\v7\test\ntuple_show.vcxproj]
  • [2023-10-24T13:08:16.025Z] C:\build\workspace\root-pullrequests-build\root\tree\ntuple\v7\test\ntuple_show.cxx(273,22): error C2440: '<function-style-cast>': cannot convert from 'initializer list' to 'CustomStruct' [C:\build\workspace\root-pullrequests-build\build\tree\ntuple\v7\test\ntuple_show.vcxproj]
  • [2023-10-24T13:08:16.025Z] C:\build\workspace\root-pullrequests-build\root\tree\ntuple\v7\test\ntuple_show.cxx(275,22): error C2440: '<function-style-cast>': cannot convert from 'initializer list' to 'CustomStruct' [C:\build\workspace\root-pullrequests-build\build\tree\ntuple\v7\test\ntuple_show.vcxproj]
  • [2023-10-24T13:08:16.025Z] C:\build\workspace\root-pullrequests-build\root\tree\ntuple\v7\test\ntuple_show.cxx(277,22): error C2440: '<function-style-cast>': cannot convert from 'initializer list' to 'CustomStruct' [C:\build\workspace\root-pullrequests-build\build\tree\ntuple\v7\test\ntuple_show.vcxproj]
  • [2023-10-24T13:08:16.025Z] C:\build\workspace\root-pullrequests-build\root\tree\ntuple\v7\test\ntuple_show.cxx(280,22): error C2440: '<function-style-cast>': cannot convert from 'initializer list' to 'CustomStruct' [C:\build\workspace\root-pullrequests-build\build\tree\ntuple\v7\test\ntuple_show.vcxproj]
  • [2023-10-24T13:08:16.025Z] C:\build\workspace\root-pullrequests-build\root\tree\ntuple\v7\test\ntuple_show.cxx(282,22): error C2440: '<function-style-cast>': cannot convert from 'initializer list' to 'CustomStruct' [C:\build\workspace\root-pullrequests-build\build\tree\ntuple\v7\test\ntuple_show.vcxproj]
  • [2023-10-24T13:08:16.025Z] C:\build\workspace\root-pullrequests-build\root\tree\ntuple\v7\test\ntuple_show.cxx(284,25): error C2679: binary '=': no operator found which takes a right-hand operand of type 'initializer list' (or there is no acceptable conversion) [C:\build\workspace\root-pullrequests-build\build\tree\ntuple\v7\test\ntuple_show.vcxproj]
  • [2023-10-24T13:08:16.025Z] C:\build\workspace\root-pullrequests-build\root\tree\ntuple\v7\test\ntuple_show.cxx(396,100): error C2440: '<function-style-cast>': cannot convert from 'initializer list' to 'ROOT::VecOps::RVec<CustomStruct>' [C:\build\workspace\root-pullrequests-build\build\tree\ntuple\v7\test\ntuple_show.vcxproj]
  • [2023-10-24T13:08:16.025Z] C:\build\workspace\root-pullrequests-build\root\tree\ntuple\v7\test\ntuple_show.cxx(401,94): error C2440: '<function-style-cast>': cannot convert from 'initializer list' to 'CustomStruct' [C:\build\workspace\root-pullrequests-build\build\tree\ntuple\v7\test\ntuple_show.vcxproj]
  • [2023-10-24T13:08:16.025Z] C:\build\workspace\root-pullrequests-build\root\tree\ntuple\v7\test\ntuple_show.cxx(401,27): error C2672: 'ROOT::Detail::VecOps::RVecImpl<T>::emplace_back': no matching overloaded function found [C:\build\workspace\root-pullrequests-build\build\tree\ntuple\v7\test\ntuple_show.vcxproj]

And 12 more

@phsft-bot
Copy link
Collaborator

@phsft-bot
Copy link
Collaborator

Build failed on mac12arm/cxx20.
Running on macphsft26.dyndns.cern.ch:/Users/sftnight/build/workspace/root-pullrequests-build
See console output.

Failing tests:

@pcanal
Copy link
Member Author

pcanal commented Oct 25, 2023

@phsft-bot

@vepadulano
Copy link
Member

@phsft-bot build

@phsft-bot
Copy link
Collaborator

Starting build on ROOT-performance-centos8-multicore/soversion, ROOT-ubuntu2204/nortcxxmod, ROOT-ubuntu2004/python3, mac12arm/cxx20, windows10/default
How to customize builds

@phsft-bot
Copy link
Collaborator

Build failed on ROOT-performance-centos8-multicore/soversion.
Running on olbdw-01.cern.ch:/data/sftnight/workspace/root-pullrequests-build
See console output.

Failing tests:

@pcanal pcanal closed this Apr 11, 2024
@pcanal pcanal reopened this Apr 11, 2024
@ferdymercury ferdymercury changed the title Do not complains about the internal of unique_ptr. Do not complains about transient std::tuple. Do not complain about the internal of unique_ptr. Do not complain about transient std::tuple. Apr 15, 2024
@pcanal pcanal requested a review from jblomer April 29, 2024 21:45
Copy link
Member

@vepadulano vepadulano left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for this huge amount of work! I have some comments for discussion.

Also, I feel like before merging the PR the list of commits should be shrunk by some margin, not sure yet about the correct amount though.

core/base/src/TMemberInspector.cxx Show resolved Hide resolved
core/meta/src/TDataMember.cxx Outdated Show resolved Hide resolved
core/metacling/src/TCling.cxx Show resolved Hide resolved
core/metacling/src/TCling.cxx Outdated Show resolved Hide resolved
Comment on lines 85 to 87
// TODO: Is it not clear what situation we are checking for by checking if
// the unique_ptr class has any data members.
clm->BuildRealData(nullptr, true);
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I don't think this comment is clear if read out of context from this PR. It also makes me doubt, why are we introducing all this new logic if we don't know which situation it is addressing?

Copy link
Member Author

@pcanal pcanal May 23, 2024

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is not new logic (it was added as part of the original support for unique pointer 6f5934a) The comment is pondering why the code has been here for a while. The change made is to set it to ignore warning and errors related to the schema.

@guitargeek guitargeek removed their request for review May 20, 2024 14:33
pcanal added 14 commits May 23, 2024 20:12
We need to keep only the strictest access information between the member and its type.
//______________________________________________________________________________
// Return true if the DeclContext is representing an entity reacheable from the
// global namespace
bool IsCtxtReacheable(const clang::DeclContext &ctxt);

//______________________________________________________________________________
// Return true if the decl is representing an entity reacheable from the
// global namespace
bool IsDeclReacheable(const clang::TagDecl &decl);
@pcanal pcanal closed this May 24, 2024
@pcanal pcanal reopened this May 24, 2024
Copy link
Member

@vepadulano vepadulano left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I believe the changes look good overall, before merging it would be nice to apply the clang-format suggestions.

Thanks again for this large effort!

@pcanal pcanal merged commit 1024898 into root-project:master May 28, 2024
26 of 30 checks passed
@pcanal pcanal deleted the master-13574 branch May 28, 2024 20:07
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

rootcling/root-io error loading std::filesystem::path
6 participants