clang++ -DHAVE_CONFIG_H -I. -I.. -I"/usr/include/clang" -I/usr/include -std=c++14 -fno-exceptions -D_GNU_SOURCE -DSTDC_CONSTANT_MACROS -DSTDC_FORMAT_MACROS -DSTDC_LIMIT_MACROS -fno-rtti -fno-exceptions -g -O3 -fno-strict-aliasing -Wall -Wextra -Wno-long-long -Wno-unused-parameter -Wno-missing-field-initializers -MT clang_delta-RemoveBaseClass.o -MD -MP -MF .deps/clang_delta-RemoveBaseClass.Tpo -c -o clang_delta-RemoveBaseClass.o test -f 'RemoveBaseClass.cpp' || echo './'RemoveBaseClass.cpp
In file included from RemoveBaseClass.cpp:19:
./CommonRenameClassRewriteVisitor.h:101:15: error: no viable conversion from 'llvm::StringRef' to 'std::string' (aka 'basic_string')
std::string IdName = IdInfo->getName();
^ ~~~~~
/usr/bin/../lib64/gcc/x86_64-suse-linux/10/../../../../include/c++/10/bits/basic_string.h:448:7: note: candidate constructor not viable: no known conversion from 'llvm::StringRef' to 'const std::cxx11::basic_string &' for 1st argument
basic_string(const basic_string& str)
^
/usr/bin/../lib64/gcc/x86_64-suse-linux/10/../../../../include/c++/10/bits/basic_string.h:525:7: note: candidate constructor not viable: no known conversion from 'llvm::StringRef' to 'const char ' for 1st argument
basic_string(const _CharTs, const _Alloc& a = _Alloc())
^
/usr/bin/../lib64/gcc/x86_64-suse-linux/10/../../../../include/c++/10/bits/basic_string.h:552:7: note: candidate constructor not viable: no known conversion from 'llvm::StringRef' to 'std::__cxx11::basic_string &&' for 1st argument
basic_string(basic_string&& str) noexcept
^
/usr/bin/../lib64/gcc/x86_64-suse-linux/10/../../../../include/c++/10/bits/basic_string.h:579:7: note: candidate constructor not viable: no known conversion from 'llvm::StringRef' to 'initializer_list' for 1st argument
basic_string(initializer_list<_CharT> l, const _Alloc& __a = _Alloc())
^
/usr/bin/../lib64/gcc/x86_64-suse-linux/10/../../../../include/c++/10/bits/basic_string.h:440:7: note: explicit constructor is not a candidate
basic_string(const _Alloc& a) _GLIBCXX_NOEXCEPT
^
/usr/include/llvm/ADT/StringRef.h:275:14: note: explicit conversion function is not a candidate
explicit operator std::string() const { return str(); }
^
In file included from RemoveBaseClass.cpp:19:
./CommonRenameClassRewriteVisitor.h:340:15: error: no viable conversion from 'llvm::StringRef' to 'std::string' (aka 'basic_string')
std::string IdName = IdInfo->getName();
^ ~~~~~
/usr/bin/../lib64/gcc/x86_64-suse-linux/10/../../../../include/c++/10/bits/basic_string.h:448:7: note: candidate constructor not viable: no known conversion from 'llvm::StringRef' to 'const std::cxx11::basic_string &' for 1st argument
basic_string(const basic_string& str)
^
/usr/bin/../lib64/gcc/x86_64-suse-linux/10/../../../../include/c++/10/bits/basic_string.h:525:7: note: candidate constructor not viable: no known conversion from 'llvm::StringRef' to 'const char ' for 1st argument
basic_string(const _CharTs, const _Alloc& a = _Alloc())
^
/usr/bin/../lib64/gcc/x86_64-suse-linux/10/../../../../include/c++/10/bits/basic_string.h:552:7: note: candidate constructor not viable: no known conversion from 'llvm::StringRef' to 'std::cxx11::basic_string &&' for 1st argument
basic_string(basic_string&& str) noexcept
^
/usr/bin/../lib64/gcc/x86_64-suse-linux/10/../../../../include/c++/10/bits/basic_string.h:579:7: note: candidate constructor not viable: no known conversion from 'llvm::StringRef' to 'initializer_list' for 1st argument
basic_string(initializer_list<_CharT> l, const _Alloc& a = _Alloc())
^
/usr/bin/../lib64/gcc/x86_64-suse-linux/10/../../../../include/c++/10/bits/basic_string.h:440:7: note: explicit constructor is not a candidate
basic_string(const _Alloc& __a) _GLIBCXX_NOEXCEPT
^
/usr/include/llvm/ADT/StringRef.h:275:14: note: explicit conversion function is not a candidate
explicit operator std::string() const { return str(); }
^
2 errors generated.
git commit 575986abefbb80b1fd2e7e7fc573935fc56c7bd8 (but I get similar error with creduce 2.10.0 )
Configured with CXX=clang++ ./configure
The same happens with g++ (i.e. configuring with ./configure)
marco@spark:~/TT/creduce (master=)> clang++ --version clang version 11.0.0 Target: x86_64-unknown-linux-gnu Thread model: posix InstalledDir: /usr/bin
clang++ -DHAVE_CONFIG_H -I. -I.. -I"/usr/include/clang" -I/usr/include -std=c++14 -fno-exceptions -D_GNU_SOURCE -DSTDC_CONSTANT_MACROS -DSTDC_FORMAT_MACROS -DSTDC_LIMIT_MACROS -fno-rtti -fno-exceptions -g -O3 -fno-strict-aliasing -Wall -Wextra -Wno-long-long -Wno-unused-parameter -Wno-missing-field-initializers -MT clang_delta-RemoveBaseClass.o -MD -MP -MF .deps/clang_delta-RemoveBaseClass.Tpo -c -o clang_delta-RemoveBaseClass.o')
std::string IdName = IdInfo->getName();
^ cxx11::basic_string &' for 1st argument
basic_string(const basic_string& str)
^
/usr/bin/../lib64/gcc/x86_64-suse-linux/10/../../../../include/c++/10/bits/basic_string.h:525:7: note: candidate constructor not viable: no known conversion from 'llvm::StringRef' to 'const char ' for 1st argument
basic_string(const _CharT s, const _Alloc& a = _Alloc())
^
/usr/bin/../lib64/gcc/x86_64-suse-linux/10/../../../../include/c++/10/bits/basic_string.h:552:7: note: candidate constructor not viable: no known conversion from 'llvm::StringRef' to 'std::__cxx11::basic_string &&' for 1st argument
basic_string(basic_string&& str) noexcept
^
/usr/bin/../lib64/gcc/x86_64-suse-linux/10/../../../../include/c++/10/bits/basic_string.h:579:7: note: candidate constructor not viable: no known conversion from 'llvm::StringRef' to 'initializer_list' for 1st argument
basic_string(initializer_list<_CharT> l, const _Alloc& __a = _Alloc())
^
/usr/bin/../lib64/gcc/x86_64-suse-linux/10/../../../../include/c++/10/bits/basic_string.h:440:7: note: explicit constructor is not a candidate
basic_string(const _Alloc& a) _GLIBCXX_NOEXCEPT
^
/usr/include/llvm/ADT/StringRef.h:275:14: note: explicit conversion function is not a candidate
explicit operator std::string() const { return str(); }
^
In file included from RemoveBaseClass.cpp:19:
./CommonRenameClassRewriteVisitor.h:340:15: error: no viable conversion from 'llvm::StringRef' to 'std::string' (aka 'basic_string')
std::string IdName = IdInfo->getName();
^ &' for 1st argument
basic_string(const basic_string& str)
^
/usr/bin/../lib64/gcc/x86_64-suse-linux/10/../../../../include/c++/10/bits/basic_string.h:525:7: note: candidate constructor not viable: no known conversion from 'llvm::StringRef' to 'const char ' for 1st argument
basic_string(const _CharT s, const _Alloc& a = _Alloc())
^
/usr/bin/../lib64/gcc/x86_64-suse-linux/10/../../../../include/c++/10/bits/basic_string.h:552:7: note: candidate constructor not viable: no known conversion from 'llvm::StringRef' to 'std::cxx11::basic_string &&' for 1st argument
basic_string(basic_string&& str) noexcept
^
/usr/bin/../lib64/gcc/x86_64-suse-linux/10/../../../../include/c++/10/bits/basic_string.h:579:7: note: candidate constructor not viable: no known conversion from 'llvm::StringRef' to 'initializer_list' for 1st argument
basic_string(initializer_list<_CharT> l, const _Alloc& a = _Alloc())
^
/usr/bin/../lib64/gcc/x86_64-suse-linux/10/../../../../include/c++/10/bits/basic_string.h:440:7: note: explicit constructor is not a candidate
basic_string(const _Alloc& __a) _GLIBCXX_NOEXCEPT
^
/usr/include/llvm/ADT/StringRef.h:275:14: note: explicit conversion function is not a candidate
explicit operator std::string() const { return str(); }
^
2 errors generated.
test -f 'RemoveBaseClass.cpp' || echo './'
RemoveBaseClass.cpp In file included from RemoveBaseClass.cpp:19: ./CommonRenameClassRewriteVisitor.h:101:15: error: no viable conversion from 'llvm::StringRef' to 'std::string' (aka 'basic_string~~~~~ /usr/bin/../lib64/gcc/x86_64-suse-linux/10/../../../../include/c++/10/bits/basic_string.h:448:7: note: candidate constructor not viable: no known conversion from 'llvm::StringRef' to 'const std::~~~~~ /usr/bin/../lib64/gcc/x86_64-suse-linux/10/../../../../include/c++/10/bits/basic_string.h:448:7: note: candidate constructor not viable: no known conversion from 'llvm::StringRef' to 'const std::cxx11::basic_string