HI everyone!
When trying to compile my c++17 project with ROOT, I get this:
cd /home/cburgard/Physics/hww/HWWAnalysisCode/build/CAFCore/QFramework && /usr/bin/c++ -DQFramework_EXPORTS -I/home/cburgard/Physics/hww/HWWAnalysisCode -I/home/cburgard/Physics/hww/HWWAnalysisCode/CAFCore/QFramework -I/home/cburgard/Physics/hww/HWWAnalysisCode/CAFCore/SFramework -I/home/cburgard/Physics/root/build/include -I/usr/include/libxml2 -I/home/cburgard/Physics/hww/HWWAnalysisCode/build/CAFCore/QFramework -g -std=c++14 -pipe -fsigned-char -pthread -std=c++14 -pipe -fsigned-char -pthread -std=c++17 -g -std=c++14 -pipe -fsigned-char -pthread -fPIC -std=c++17 -o CMakeFiles/QFramework.dir/Root/TQABCDCalculator.cxx.o -c /home/cburgard/Physics/hww/HWWAnalysisCode/CAFCore/QFramework/Root/TQABCDCalculator.cxx
In file included from /home/cburgard/Physics/root/build/include/TString.h:28,
from /home/cburgard/Physics/hww/HWWAnalysisCode/CAFCore/QFramework/QFramework/TQNFBase.h:5,
from /home/cburgard/Physics/hww/HWWAnalysisCode/CAFCore/QFramework/QFramework/TQABCDCalculator.h:5,
from /home/cburgard/Physics/hww/HWWAnalysisCode/CAFCore/QFramework/Root/TQABCDCalculator.cxx:1:
/home/cburgard/Physics/root/build/include/ROOT/RStringView.hxx:32:10: error: conflicting declaration of template ‘template using basic_string_view = std::experimental::fundamentals_v1::basic_string_view<_CharT, _Traits>’
32 | using basic_string_view = ::std::experimental::basic_string_view<_CharT,_Traits>;
| ^~~~~~~~~~~~~~~~~
In file included from /usr/include/c++/9.1.0/bits/basic_string.h:48,
from /usr/include/c++/9.1.0/string:55,
from /home/cburgard/Physics/root/build/include/TSchemaHelper.h:17,
from /home/cburgard/Physics/root/build/include/TGenericClassInfo.h:16,
from /home/cburgard/Physics/root/build/include/Rtypes.h:193,
from /home/cburgard/Physics/root/build/include/TMathBase.h:29,
from /home/cburgard/Physics/root/build/include/TString.h:26,
from /home/cburgard/Physics/hww/HWWAnalysisCode/CAFCore/QFramework/QFramework/TQNFBase.h:5,
from /home/cburgard/Physics/hww/HWWAnalysisCode/CAFCore/QFramework/QFramework/TQABCDCalculator.h:5,
from /home/cburgard/Physics/hww/HWWAnalysisCode/CAFCore/QFramework/Root/TQABCDCalculator.cxx:1:
/usr/include/c++/9.1.0/string_view:90:11: note: previous declaration ‘template class std::basic_string_view’
90 | class basic_string_view
This does not happen if I don’t include c++17. Is this a known bug, and is there anything I can do about this?
ROOT Version: e21189cc32893288986b7cf4f499afe0a0515126
Platform: Archlinux
Compiler: gcc 9.1