-
Notifications
You must be signed in to change notification settings - Fork 1.4k
[TCling] C++-use string,vector instead of std. #11027
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
base: master
Are you sure you want to change the base?
[TCling] C++-use string,vector instead of std. #11027
Conversation
|
Starting build on |
|
Build failed on ROOT-performance-centos8-multicore/cxx17. Failing tests: |
|
Note: this change obviously allows 'new' code to work better (allows use of user-defined |
|
Build failed on windows10/cxx14. Failing tests: |
|
Correct - and I wanted to start small ( |
ca81ff4 to
d83ea7b
Compare
|
Starting build on |
|
Build failed on ROOT-ubuntu18.04/nortcxxmod. Errors:
|
|
Build failed on ROOT-ubuntu2004/python3. Errors:
|
|
Build failed on mac12/noimt. Errors:
And 11 more |
|
Build failed on windows10/cxx14. Errors:
And 103 more |
|
Starting build on |
|
Build failed on ROOT-ubuntu18.04/nortcxxmod. Errors:
|
|
Build failed on ROOT-ubuntu2004/python3. Errors:
|
|
Build failed on ROOT-debian10-i386/soversion. |
|
Build failed on mac12/noimt. Errors:
And 11 more |
|
Build failed on windows10/cxx14. Errors:
And 103 more |
|
Build failed on ROOT-performance-centos8-multicore/cxx17. |
|
Build failed on mac11/cxx14. Errors:
And 11 more |
This prevents clashes e.g. of `std::data` ands `data` variables and alike.
1596e16 to
fbd0bc6
Compare
|
Starting build on |
|
Build failed on ROOT-ubuntu18.04/nortcxxmod. |
|
Build failed on ROOT-debian10-i386/soversion. |
|
Build failed on ROOT-performance-centos8-multicore/cxx17. |
|
Build failed on mac11/cxx14. Errors:
And 56 more Failing tests:
And 241 more |
This prevents TClass getting confused about normalized names in std:: which will likely be implementation details
|
Starting build on |
|
Build failed on ROOT-performance-centos8-multicore/cxx17. Errors:
And 57 more Failing tests:
And 256 more |
|
Build failed on mac11/cxx14. Errors:
And 56 more Failing tests:
And 263 more |
|
Starting build on |
|
Build failed on windows10/cxx14. |
|
Build failed on ROOT-performance-centos8-multicore/cxx17. Errors:
Failing tests:
And 97 more |
|
Build failed on ROOT-ubuntu2004/python3. Failing tests:
And 47 more |
|
Build failed on mac11/cxx14. Errors:
Failing tests:
And 107 more |
|
Build failed on ROOT-debian10-i386/soversion. Failing tests:
And 51 more |
Current state:
std::std::where "needed", to the normalized name, to make identifiers "compilable" (in dictionary source).The last point requires to have an authoritative list of "things in the std namespace", to prepend
std::to them. This does not scale - any stdlib implementation might have any non-public identifier that might be needed also for public types, e.g. some libstdc++ havestd::thread::idas type alias tostd::__thread_id.Alternatively, this PR could implement a "if lookup fails, try again with prepending
std::". This is an issue for types such asfoo<bar, baz<boo,boz>>where either any type must be tested for std-ization separately or all possible permutations (std::foo<bar, baz<boo,boz>>,foo<std::bar, baz<boo,boz>>,std::foo<std::bar, baz<boo,boz>>...) must be tried.