Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package cvise for openSUSE:Factory checked in at 2023-11-06 21:15:06 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/cvise (Old) and /work/SRC/openSUSE:Factory/.cvise.new.17445 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "cvise" Mon Nov 6 21:15:06 2023 rev:75 rq:1123668 version:2.9.0+git.20231106.cc76e98 Changes: -------- --- /work/SRC/openSUSE:Factory/cvise/cvise.changes 2023-09-15 22:10:08.199135417 +0200 +++ /work/SRC/openSUSE:Factory/.cvise.new.17445/cvise.changes 2023-11-06 21:15:21.777660158 +0100 @@ -1,0 +2,12 @@ +Mon Nov 06 18:36:00 UTC 2023 - [email protected] + +- Update to version 2.9.0+git.20231106.cc76e98: + * Bump to 2.9.0. + * Support LLVM 18: changes in ElaboratedTypeKeyword + * add .vscode to .gitignore + * add --shell argument + * LLVM 18: port to latest master + * add LLVM 17 CI target + * disable -Werror=non-template-friend in llvm/ADT/PagedVector.h:215:59 + +------------------------------------------------------------------- Old: ---- cvise-2.8.0+git.20230914.9f237d6.tar.xz New: ---- cvise-2.9.0+git.20231106.cc76e98.tar.xz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ cvise.spec ++++++ --- /var/tmp/diff_new_pack.hMMJXW/_old 2023-11-06 21:15:22.413683570 +0100 +++ /var/tmp/diff_new_pack.hMMJXW/_new 2023-11-06 21:15:22.413683570 +0100 @@ -17,7 +17,7 @@ Name: cvise -Version: 2.8.0+git.20230914.9f237d6 +Version: 2.9.0+git.20231106.cc76e98 Release: 0 Summary: Super-parallel Python port of the C-Reduce License: BSD-3-Clause ++++++ _service ++++++ --- /var/tmp/diff_new_pack.hMMJXW/_old 2023-11-06 21:15:22.453685042 +0100 +++ /var/tmp/diff_new_pack.hMMJXW/_new 2023-11-06 21:15:22.457685190 +0100 @@ -4,7 +4,7 @@ <param name="scm">git</param> <param name="changesgenerate">enable</param> <param name="filename">cvise</param> - <param name="versionformat">2.8.0+git.%cd.%h</param> + <param name="versionformat">2.9.0+git.%cd.%h</param> </service> <service mode="disabled" name="recompress"> <param name="file">*.tar</param> ++++++ _servicedata ++++++ --- /var/tmp/diff_new_pack.hMMJXW/_old 2023-11-06 21:15:22.473685779 +0100 +++ /var/tmp/diff_new_pack.hMMJXW/_new 2023-11-06 21:15:22.477685926 +0100 @@ -1,6 +1,6 @@ <servicedata> <service name="tar_scm"> <param name="url">https://github.com/marxin/cvise</param> - <param name="changesrevision">9f237d6619f08e85784e5356869f48f81678815f</param></service></servicedata> + <param name="changesrevision">cc76e98d7fa3f1abe0d4897560258d12b65eb6eb</param></service></servicedata> (No newline at EOF) ++++++ cvise-2.8.0+git.20230914.9f237d6.tar.xz -> cvise-2.9.0+git.20231106.cc76e98.tar.xz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/cvise-2.8.0+git.20230914.9f237d6/.github/workflows/build.yml new/cvise-2.9.0+git.20231106.cc76e98/.github/workflows/build.yml --- old/cvise-2.8.0+git.20230914.9f237d6/.github/workflows/build.yml 2023-09-14 17:00:04.000000000 +0200 +++ new/cvise-2.9.0+git.20231106.cc76e98/.github/workflows/build.yml 2023-11-06 19:26:40.000000000 +0100 @@ -16,21 +16,21 @@ strategy: matrix: - llvm: [13, 14, 15, 16] + llvm: [13, 14, 15, 16, 17] build-type: [DEBUG] docker: [opensuse/tumbleweed] include: - - llvm: 16 + - llvm: 17 build-type: ASAN docker: opensuse/tumbleweed - - llvm: 16 + - llvm: 17 build-type: UBSAN docker: opensuse/tumbleweed - - llmv: 16 + - llmv: 17 build-type: RelWithDebInfo extra-flags: -flto=auto docker: opensuse/tumbleweed - - llmv: 16 + - llmv: 17 build-type: RelWithDebInfo docker: opensuse/tumbleweed env: CC=clang CXX=clang++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/cvise-2.8.0+git.20230914.9f237d6/.gitignore new/cvise-2.9.0+git.20231106.cc76e98/.gitignore --- old/cvise-2.8.0+git.20230914.9f237d6/.gitignore 2023-09-14 17:00:04.000000000 +0200 +++ new/cvise-2.9.0+git.20231106.cc76e98/.gitignore 2023-11-06 19:26:40.000000000 +0100 @@ -22,6 +22,7 @@ *.vcxproj *.vcxproj.filters *.sln +.vscode ## Ignore Visual Studio temporary files, build results, and ## files generated by popular Visual Studio add-ons. diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/cvise-2.8.0+git.20230914.9f237d6/CMakeLists.txt new/cvise-2.9.0+git.20231106.cc76e98/CMakeLists.txt --- old/cvise-2.8.0+git.20230914.9f237d6/CMakeLists.txt 2023-09-14 17:00:04.000000000 +0200 +++ new/cvise-2.9.0+git.20231106.cc76e98/CMakeLists.txt 2023-11-06 19:26:40.000000000 +0100 @@ -122,11 +122,11 @@ set(cvise_PACKAGE "cvise") set(cvise_PACKAGE_BUGREPORT "https://github.com/marxin/cvise/issues") set(cvise_PACKAGE_NAME "cvise") -set(cvise_PACKAGE_STRING "cvise 2.8.0") +set(cvise_PACKAGE_STRING "cvise 2.9.0") set(cvise_PACKAGE_TARNAME "cvise") set(cvise_PACKAGE_URL "https://github.com/marxin/cvise/") -set(cvise_PACKAGE_VERSION "2.8.0") -set(cvise_VERSION "2.8.0") +set(cvise_PACKAGE_VERSION "2.9.0") +set(cvise_VERSION "2.9.0") set(cvise_LLVM_VERSION "${LLVM_PACKAGE_VERSION}") configure_file("cmake_config.h.in" "${PROJECT_BINARY_DIR}/config.h") @@ -152,12 +152,17 @@ SUPPORTS_MAYBE_UNINITIALIZED ) -# XXX remove in the future once LLVM 17 gets released check_cxx_compiler_flag( "-Wclass-memaccess" SUPPORTS_CLASS_MEMACCESS ) +check_cxx_compiler_flag( + "-Wnon-template-friend" + SUPPORTS_NON_TEMPLATE_FRIEND +) + + if(CMAKE_CXX_COMPILER_ID STREQUAL "GNU" OR CMAKE_CXX_COMPILER_ID STREQUAL "Clang") # XXX figure out how to get "-std=c++17 -fno-rtti" from LLVM. That's how we @@ -179,6 +184,10 @@ set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wno-error=class-memaccess") set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wno-error=class-memaccess") endif() + if(SUPPORTS_NON_TEMPLATE_FRIEND) + set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wno-error=non-template-friend") + set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wno-error=non-template-friend") + endif() set(CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} -O3") set(CMAKE_CXX_FLAGS_RELWITHDEBINFO "${CMAKE_CXX_FLAGS_RELEASE} -O3 -g") diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/cvise-2.8.0+git.20230914.9f237d6/clang_delta/RemoveUnusedFunction.cpp new/cvise-2.9.0+git.20231106.cc76e98/clang_delta/RemoveUnusedFunction.cpp --- old/cvise-2.8.0+git.20230914.9f237d6/clang_delta/RemoveUnusedFunction.cpp 2023-09-14 17:00:04.000000000 +0200 +++ new/cvise-2.9.0+git.20231106.cc76e98/clang_delta/RemoveUnusedFunction.cpp 2023-11-06 19:26:40.000000000 +0100 @@ -215,11 +215,23 @@ FD->getDependentSpecializationInfo(); // don't need to track all specs, just associate FD with one // of those + const FunctionDecl *Member = nullptr; + +#if LLVM_VERSION_MAJOR >= 18 + ArrayRef<FunctionTemplateDecl *> members = Info->getCandidates(); + if (!members.empty()) { + Member = members[0]->getTemplatedDecl(); + } +#else if (Info->getNumTemplates() > 0) { - const FunctionDecl *Member = + Member = Info->getTemplate(0)->getTemplatedDecl(); - ConsumerInstance->addOneMemberSpecialization(FD, Member); } +#endif + + if (Member != nullptr) + ConsumerInstance->addOneMemberSpecialization(FD, Member); + return true; } @@ -921,11 +933,21 @@ TheFD->getDependentSpecializationInfo(); // don't need to track all specs, just associate FD with one // of those + const FunctionDecl *Member = nullptr; + +#if LLVM_VERSION_MAJOR >= 18 + ArrayRef<FunctionTemplateDecl *> members = Info->getCandidates(); + if (!members.empty()) { + Member = members[0]->getTemplatedDecl(); + } +#else if (Info->getNumTemplates() > 0) { - const FunctionDecl *Member = - Info->getTemplate(0)->getTemplatedDecl(); - createFuncToExplicitSpecs(Member); + Member = Info->getTemplate(0)->getTemplatedDecl(); } +#endif + + if (Member != nullptr) + createFuncToExplicitSpecs(Member); return; } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/cvise-2.8.0+git.20230914.9f237d6/clang_delta/ReplaceDependentName.cpp new/cvise-2.9.0+git.20231106.cc76e98/clang_delta/ReplaceDependentName.cpp --- old/cvise-2.8.0+git.20230914.9f237d6/clang_delta/ReplaceDependentName.cpp 2023-09-14 17:00:04.000000000 +0200 +++ new/cvise-2.9.0+git.20231106.cc76e98/clang_delta/ReplaceDependentName.cpp 2023-11-06 19:26:40.000000000 +0100 @@ -120,8 +120,14 @@ return; const ElaboratedType *ET = TLoc.getTypePtr(); + +#if LLVM_VERSION_MAJOR >= 18 + if ((ET->getKeyword() != ElaboratedTypeKeyword::Typename) && (ET->getKeyword() != ElaboratedTypeKeyword::None)) + return; +#else if ((ET->getKeyword() != ETK_Typename) && (ET->getKeyword() != ETK_None)) return; +#endif if (TLoc.getQualifierLoc().getBeginLoc().isInvalid()) return; @@ -155,8 +161,14 @@ const DependentNameType *DNT = dyn_cast<DependentNameType>(TLoc.getTypePtr()); TransAssert(DNT && "NULL DependentNameType!"); + +#if LLVM_VERSION_MAJOR >= 18 + if (DNT->getKeyword() != ElaboratedTypeKeyword::Typename) + return; +#else if (DNT->getKeyword() != ETK_Typename) return; +#endif std::string Str = ""; bool Typename = false; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/cvise-2.8.0+git.20230914.9f237d6/clang_delta/ReplaceDependentTypedef.cpp new/cvise-2.9.0+git.20231106.cc76e98/clang_delta/ReplaceDependentTypedef.cpp --- old/cvise-2.8.0+git.20230914.9f237d6/clang_delta/ReplaceDependentTypedef.cpp 2023-09-14 17:00:04.000000000 +0200 +++ new/cvise-2.9.0+git.20231106.cc76e98/clang_delta/ReplaceDependentTypedef.cpp 2023-11-06 19:26:40.000000000 +0100 @@ -114,7 +114,12 @@ case Type::Elaborated: { const ElaboratedType *ETy = dyn_cast<ElaboratedType>(Ty); ElaboratedTypeKeyword Keyword = ETy->getKeyword(); + +#if LLVM_VERSION_MAJOR >= 18 + return ((Keyword == ElaboratedTypeKeyword::Typename) || (Keyword == ElaboratedTypeKeyword::None)); +#else return ((Keyword == ETK_Typename) || (Keyword == ETK_None)); +#endif } default: diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/cvise-2.8.0+git.20230914.9f237d6/cvise.py new/cvise-2.9.0+git.20231106.cc76e98/cvise.py --- old/cvise-2.8.0+git.20230914.9f237d6/cvise.py 2023-09-14 17:00:04.000000000 +0200 +++ new/cvise-2.9.0+git.20231106.cc76e98/cvise.py 2023-11-06 19:26:40.000000000 +0100 @@ -193,7 +193,8 @@ parser.add_argument('--renaming', action='store_true', help='Enable all renaming passes (that are disabled by default)') parser.add_argument('--list-passes', action='store_true', help='Print all available passes and exit') parser.add_argument('--version', action='version', version=CVise.Info.PACKAGE_STRING + (' (%s)' % CVise.Info.GIT_VERSION if CVise.Info.GIT_VERSION != 'unknown' else '')) - parser.add_argument('--commands', '-c', help='Use bash commands instead of an interestingness test case') + parser.add_argument('--commands', '-c', help='Use shell commands instead of an interestingness test case') + parser.add_argument('--shell', default='bash', help='Use selected shell for the --commands option') parser.add_argument('--to-utf8', action='store_true', help='Convert any non-UTF-8 encoded input file to UTF-8') parser.add_argument('--skip-after-n-transforms', type=int, help='Skip each pass after N successful transformations') parser.add_argument('interestingness_test', metavar='INTERESTINGNESS_TEST', nargs='?', help='Executable to check interestingness of test cases') @@ -290,7 +291,7 @@ script = None if args.commands: with tempfile.NamedTemporaryFile(mode='w', delete=False, suffix='.sh') as script: - script.write('#!/bin/bash\n\n') + script.write(f'#!/bin/{args.shell}\n\n') script.write(args.commands + '\n') os.chmod(script.name, 0o744) logging.info('Using temporary interestingness test: %s' % script.name)
