-
Notifications
You must be signed in to change notification settings - Fork 1.4k
Fix that rootcling magically passes with 256 errors #898
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
Fix that rootcling magically passes with 256 errors #898
Conversation
|
Starting build on |
core/dictgen/src/rootcling_impl.cxx
Outdated
| // FIXME: We shouldn't count errors at all via the rootcling return code. See the warning about this from the | ||
| // libc documentation: http://www.gnu.org/savannah-checkouts/gnu/libc/manual/html_node/Exit-Status.html | ||
| // This probably requires adapting roottest too as we check the exit code values there. | ||
| auto mainRetVal = nerrors + retVal; |
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.
I totally agree. I am not aware of roottest checking exit code values, except for "0 or not 0". Can you please set mainRetVal to 0 or 1, and see what roottest says about that?
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.
I can even point you to an example line where this breaks: https://github.com/root-project/roottest/blob/master/root/meta/genreflex/CMakeLists.txt#L88 :)
But let's indeed remove this error counting mechanic and follow libc recommendations.
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.
I stand corrected, but now I have no idea how we passed those tests :)
eb52d4e to
02d5d86
Compare
|
Starting build on |
02d5d86 to
a4fef1d
Compare
|
Starting build on |
We currently have a byte overflow in the exit code for rootcling, so with N*256 errors we actually return 0 from our process. This patch removes this functionality and rootcling now only returns 0 and 1.
|
Just for the record, all the Jenkins builds passed, but I just rewrote the commit message so Jenkins is rebuilding it without any changes. Any objections to get this merged? |
|
Do it! |
|
Build failed on slc6/gcc49. Errors:
|
No description provided.