Skip to content

[test] Add tests for previously failing interactive sessions#22900

Open
dpiparo wants to merge 1 commit into
root-project:masterfrom
dpiparo:test_for_6439
Open

[test] Add tests for previously failing interactive sessions#22900
dpiparo wants to merge 1 commit into
root-project:masterfrom
dpiparo:test_for_6439

Conversation

@dpiparo

@dpiparo dpiparo commented Jul 23, 2026

Copy link
Copy Markdown
Member

fixes #6439

@dpiparo dpiparo self-assigned this Jul 23, 2026
@dpiparo
dpiparo requested a review from bellenot as a code owner July 23, 2026 09:37
@dpiparo dpiparo changed the title [test] Add test for 6439, now solved [test] Add test for #6439, now solved Jul 23, 2026

@ferdymercury ferdymercury left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

Thanks for the test!

There was another potential test case mentioned that could be added

size_t al(size_t p, size_t alignment) { return ((p + (alignment - 1)) & ~(alignment - 1)); } 
void printextra(size_t use, size_t p, size_t alignment) { auto realstart = al(p+use, alignment); std::cout << "alloc: " << p << " data: " << realstart << " waste: " << realstart - p - use << '\n' };
void printextra(size_t use, size_t p, size_t alignment) { auto realstart = al(p+use, alignment); std::cout << "alloc: " << p << " data: " << realstart << " waste: " << realstart - p - use << '\n'; };
printextra(24, 56, 64)

that lead to cling JIT session error: Failed to materialize symbols: { (main, { __ZNSt3__1lsB7v160006INS_11char_traitsIcEEEERNS_13basic_ostreamIcT_EES6_c }) }

which is also now solved in master.

@dpiparo dpiparo changed the title [test] Add test for #6439, now solved [test] Add tests for previously failing interactive sessions Jul 23, 2026
@github-actions

github-actions Bot commented Jul 23, 2026

Copy link
Copy Markdown

Test Results

    23 files      23 suites   3d 12h 56m 10s ⏱️
 3 876 tests  3 876 ✅ 0 💤 0 ❌
78 926 runs  78 926 ✅ 0 💤 0 ❌

Results for commit eb0f9b9.

♻️ This comment has been updated with latest results.

@dpiparo

dpiparo commented Jul 23, 2026

Copy link
Copy Markdown
Member Author

Thanks a lot @ferdymercury . Just to be sure: what is the expected output of that snippet?

@ferdymercury

ferdymercury commented Jul 23, 2026

Copy link
Copy Markdown
Collaborator

Just to be sure: what is the expected output of that snippet?

It's coming from #14788

but I believe the expected output should be:

ROOT_prompt_1:1:196: error: expected ';' after expression
alloc: 56 data: 128 waste: 48

instead of

cling JIT session error: Failed to materialize symbols: { (main, { __ZNSt3__1lsB7v160006INS_11char_traitsIcEEEERNS_13basic_ostreamIcT_EES6_c }) }

and or in macos

You are probably missing the definition of std::__1::basic_ostream<char, std::__1::char_traits<char>>& std::__1::operator<<[abi:ne190102]<std::__1::char_traits<char>>(std::__1::basic_ostream<char, std::__1::char_traits<char>>&, char)
Maybe you need to load the corresponding shared library?
IncrementalExecutor::executeFunction: symbol '_ZNKSt3__18io

@dpiparo

dpiparo commented Jul 23, 2026

Copy link
Copy Markdown
Member Author

Thanks. I wanted to make sure I got it right.
This is interesting: I see your producing the expected output on linux, however not on macos26.

IncrementalExecutor::executeFunction: symbol '_ZNKSt3__18ios_base5flagsB9nqe210106Ev' unresolved while linking [cling interface function]!
You are probably missing the definition of std::__1::ios_base::flags[abi:nqe210106]() const
Maybe you need to load the corresponding shared library?
IncrementalExecutor::executeFunction: symbol '_ZNSt3__1lsB9nqe210106INS_11char_traitsIcEEEERNS_13basic_ostreamIcT_EES6_c' unresolved while linking [cling interface function]!
You are probably missing the definition of std::__1::basic_ostream<char, std::__1::char_traits<char>>& std::__1::operator<<[abi:nqe210106]<std::__1::char_traits<char>>(std::__1::basic_ostream<char, std::__1::char_traits<char>>&, char)
Maybe you need to load the corresponding shared library?
IncrementalExecutor::executeFunction: symbol '_ZNSt3__116__pad_and_outputB9nqe210106IcNS_11char_traitsIcEEEENS_19ostreambuf_iteratorIT_T0_EES6_PKS4_S8_S8_RNS_8ios_baseES4_' unresolved while linking [cling interface function]!
You are probably missing the definition of std::__1::ostreambuf_iterator<char, std::__1::char_traits<char>> std::__1::__pad_and_output[abi:nqe210106]<char, std::__1::char_traits<char>>(std::__1::ostreambuf_iterator<char, std::__1::char_traits<char>>, char const*, char const*, char const*, std::__1::ios_base&, char)
Maybe you need to load the corresponding shared library?

This might potentially be a different problem.

@ferdymercury

ferdymercury commented Jul 23, 2026

Copy link
Copy Markdown
Collaborator

This might potentially be a different problem.

Ahh, then maybe we should reopen #14788 to decouple it from #6439 ?

Btw #19260 still fails on Linux and looks similarish to your mac26 failure

@dpiparo

dpiparo commented Jul 23, 2026

Copy link
Copy Markdown
Member Author

Ahh, then maybe we should reopen #14788 to decouple it from #6439 ?

That is a smart proposal: why not. Let's see how the tests go though before doing anything. Clearly we are dealing with some sort of platform dependent issues, and the battery of the CI could be of help to gather more information.

@dpiparo

dpiparo commented Jul 23, 2026

Copy link
Copy Markdown
Member Author

Windows deserves some special attention. For what concerns #6439, I think the CI pass proves that the problem is fixed. However, #7970 is not yet fixed. It's early for me to formulate a comprehensive analysis behind the failure.

@dpiparo

dpiparo commented Jul 23, 2026

Copy link
Copy Markdown
Member Author

The last change is an attempt to prove the point made above.

Moreover increase coverage on arm, now that exception trapping in
interpreted code is supported.

Fixes root-project#6439
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Failed compilation leaves cling in a "bad state"

2 participants