Hello community,

here is the log from the commit of package creduce for openSUSE:Factory checked 
in at 2020-04-22 20:57:36
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/creduce (Old)
 and      /work/SRC/openSUSE:Factory/.creduce.new.2738 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "creduce"

Wed Apr 22 20:57:36 2020 rev:23 rq:796230 version:2.10.0+git.20200420.d83cbda

Changes:
--------
--- /work/SRC/openSUSE:Factory/creduce/creduce.changes  2020-04-13 
12:53:30.648653978 +0200
+++ /work/SRC/openSUSE:Factory/.creduce.new.2738/creduce.changes        
2020-04-22 20:57:37.935939646 +0200
@@ -1,0 +2,21 @@
+Wed Apr 22 08:20:25 UTC 2020 - [email protected]
+
+- Update to version 2.10.0+git.20200420.d83cbda:
+  * fixed an issue of infinitely looking-up function decls
+  * added several tests for remove-unused-function
+  * Fixed issues for replacing decls with macro expansions
+  * Do `apt-key add` before adding the `apt.llvm.org` repository.
+  * Include newly added test in distribution tarball.
+  * skip AutoType for reduce-pointer-level at the moment
+  * workaround to skip invalid locations
+  * remove an assert that was too conservative
+  * handle an initializer of CXXOperatorCallExpr
+  * generate auto decl for callee expr with auto type
+
+-------------------------------------------------------------------
+Wed Apr 22 08:17:53 UTC 2020 - Martin Liška <[email protected]>
+
+- Move back to configure and make.
+- Remove not needed install-location.patch.
+
+-------------------------------------------------------------------

Old:
----
  creduce-2.10.0+git.20191010.8a67e69.tar.xz
  install-location.patch

New:
----
  creduce-2.10.0+git.20200420.d83cbda.tar.xz

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ creduce.spec ++++++
--- /var/tmp/diff_new_pack.XcDQV3/_old  2020-04-22 20:57:38.635941039 +0200
+++ /var/tmp/diff_new_pack.XcDQV3/_new  2020-04-22 20:57:38.639941047 +0200
@@ -17,7 +17,7 @@
 
 
 Name:           creduce
-Version:        2.10.0+git.20191010.8a67e69
+Version:        2.10.0+git.20200420.d83cbda
 Release:        0
 Summary:        C-Reduce, a C program reducer
 License:        BSD-3-Clause
@@ -25,13 +25,11 @@
 URL:            https://github.com/csmith-project/creduce
 Source:         %{name}-%{version}.tar.xz
 Patch0:         llvm9-libs-fix.patch
-Patch1:         install-location.patch
 Patch2:         binary-search-location.patch
 Patch3:         port-to-llvm10.patch
 Patch4:         std-cpp14.patch
 BuildRequires:  astyle
 BuildRequires:  clang9-devel
-BuildRequires:  cmake
 BuildRequires:  delta
 BuildRequires:  flex
 BuildRequires:  gcc-c++
@@ -70,22 +68,21 @@
 %autopatch -p1
 
 %build
-%cmake
+%configure
 %make_build
 
 %install
-cd build
 %make_install
 
-rm %{buildroot}/usr/libexec/topformflat
-rm %{buildroot}/usr/libexec/unifdef
+rm %{buildroot}%{_libexecdir}/topformflat
+rm %{buildroot}%{_libexecdir}/unifdef
 
 %files
 %license COPYING
 %{_bindir}/creduce
-%{_bindir}/clang_delta
-%{_bindir}/clex
-%{_bindir}/strlex
+%{_libexecdir}/clang_delta
+%{_libexecdir}/clex
+%{_libexecdir}/strlex
 %{_datadir}/creduce
 
 %changelog

++++++ _service ++++++
--- /var/tmp/diff_new_pack.XcDQV3/_old  2020-04-22 20:57:38.691941151 +0200
+++ /var/tmp/diff_new_pack.XcDQV3/_new  2020-04-22 20:57:38.691941151 +0200
@@ -5,7 +5,6 @@
     <param name="changesgenerate">enable</param>
     <param name="filename">creduce</param>
     <param name="versionformat">2.10.0+git.%cd.%h</param>
-    <param name="revision">8a67e69c49ef123a1c0a4898ac259249411a01dd</param>
   </service>
   <service mode="disabled" name="recompress">
     <param name="file">*.tar</param>

++++++ binary-search-location.patch ++++++
--- /var/tmp/diff_new_pack.XcDQV3/_old  2020-04-22 20:57:38.699941166 +0200
+++ /var/tmp/diff_new_pack.XcDQV3/_new  2020-04-22 20:57:38.703941174 +0200
@@ -11,45 +11,6 @@
  };
  
  our @EXPORT = qw();
-diff --git a/creduce/pass_clang.pm b/creduce/pass_clang.pm
-index 3bd8314..3b8085b 100644
---- a/creduce/pass_clang.pm
-+++ b/creduce/pass_clang.pm
-@@ -35,7 +35,7 @@ sub check_prereqs () {
-     if ((defined $abs_bindir) && ($FindBin::RealBin eq $abs_bindir)) {
-       # This script is in the installation directory.
-       # Use the installed `clang_delta'.
--      $path = libexecdir . "/clang_delta";
-+      $path = $abs_bindir . "/clang_delta";
-     } else {
-       # Assume that this script is in the C-Reduce build tree.
-       # Use the `clang_delta' that is also in the build tree.
-diff --git a/creduce/pass_clang_binsrch.pm b/creduce/pass_clang_binsrch.pm
-index 7470d51..b079214 100644
---- a/creduce/pass_clang_binsrch.pm
-+++ b/creduce/pass_clang_binsrch.pm
-@@ -47,7 +47,7 @@ sub check_prereqs () {
-     if ((defined $abs_bindir) && ($FindBin::RealBin eq $abs_bindir)) {
-       # This script is in the installation directory.
-       # Use the installed `clang_delta'.
--      $path = libexecdir . "/clang_delta";
-+      $path = $abs_bindir . "/clang_delta";
-     } else {
-       # Assume that this script is in the C-Reduce build tree.
-       # Use the `clang_delta' that is also in the build tree.
-diff --git a/creduce/pass_clex.pm b/creduce/pass_clex.pm
-index 66707bf..29ea764 100644
---- a/creduce/pass_clex.pm
-+++ b/creduce/pass_clex.pm
-@@ -35,7 +35,7 @@ sub check_prereqs () {
-     if ((defined $abs_bindir) && ($FindBin::RealBin eq $abs_bindir)) {
-       # This script is in the installation directory.
-       # Use the installed `clex'.
--      $path = libexecdir . "/clex";
-+      $path = $abs_bindir . "/clex";
-     } else {
-       # Assume that this script is in the C-Reduce build tree.
-       # Use the `clex' that is also in the build tree.
 diff --git a/creduce/pass_ifs.pm b/creduce/pass_ifs.pm
 index c8811a4..238f977 100644
 --- a/creduce/pass_ifs.pm

++++++ creduce-2.10.0+git.20191010.8a67e69.tar.xz -> 
creduce-2.10.0+git.20200420.d83cbda.tar.xz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/creduce-2.10.0+git.20191010.8a67e69/clang_delta/CommonRenameClassRewriteVisitor.h
 
new/creduce-2.10.0+git.20200420.d83cbda/clang_delta/CommonRenameClassRewriteVisitor.h
--- 
old/creduce-2.10.0+git.20191010.8a67e69/clang_delta/CommonRenameClassRewriteVisitor.h
       2019-10-11 05:30:08.000000000 +0200
+++ 
new/creduce-2.10.0+git.20200420.d83cbda/clang_delta/CommonRenameClassRewriteVisitor.h
       2020-04-21 08:19:57.000000000 +0200
@@ -191,7 +191,7 @@
     return true;
   VisitedLocs.insert(LocPtr);
 
-  if (ConsumerInstance->isDeclaringRecordDecl(CXXRD)) {
+  if (ConsumerInstance->isDeclaringRecordDecl(CXXRD) && 
CXXRD->isThisDeclarationADefinition()) {
     RewriteHelper->replaceRecordDeclDef(CXXRD, Name);
   }
   else {
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/creduce-2.10.0+git.20191010.8a67e69/clang_delta/Makefile.am 
new/creduce-2.10.0+git.20200420.d83cbda/clang_delta/Makefile.am
--- old/creduce-2.10.0+git.20191010.8a67e69/clang_delta/Makefile.am     
2019-10-11 05:30:08.000000000 +0200
+++ new/creduce-2.10.0+git.20200420.d83cbda/clang_delta/Makefile.am     
2020-04-21 08:19:57.000000000 +0200
@@ -376,6 +376,7 @@
        tests/rename-class/rename-class2.cpp \
        tests/rename-class/specialization.cpp \
        tests/rename-class/static_member.cc \
+       tests/rename-class/template_class_1.cpp \
        tests/rename-class/template_parm.cpp \
        tests/rename-class/template_template.cpp \
        tests/rename-class/template_template_parm.cpp \
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/creduce-2.10.0+git.20191010.8a67e69/clang_delta/Makefile.in 
new/creduce-2.10.0+git.20200420.d83cbda/clang_delta/Makefile.in
--- old/creduce-2.10.0+git.20191010.8a67e69/clang_delta/Makefile.in     
2019-10-11 05:30:08.000000000 +0200
+++ new/creduce-2.10.0+git.20200420.d83cbda/clang_delta/Makefile.in     
2020-04-21 08:19:57.000000000 +0200
@@ -823,6 +823,7 @@
        tests/rename-class/rename-class2.cpp \
        tests/rename-class/specialization.cpp \
        tests/rename-class/static_member.cc \
+       tests/rename-class/template_class_1.cpp \
        tests/rename-class/template_parm.cpp \
        tests/rename-class/template_template.cpp \
        tests/rename-class/template_template_parm.cpp \
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/creduce-2.10.0+git.20191010.8a67e69/clang_delta/ReducePointerLevel.cpp 
new/creduce-2.10.0+git.20200420.d83cbda/clang_delta/ReducePointerLevel.cpp
--- old/creduce-2.10.0+git.20191010.8a67e69/clang_delta/ReducePointerLevel.cpp  
2019-10-11 05:30:08.000000000 +0200
+++ new/creduce-2.10.0+git.20200420.d83cbda/clang_delta/ReducePointerLevel.cpp  
2020-04-21 08:19:57.000000000 +0200
@@ -135,6 +135,10 @@
   if (dyn_cast<SubstTemplateTypeParmType>(Ty))
     return true;
 
+  // skip AutoType for now
+  if (Ty->getContainedAutoType())
+    return true;
+
   if (const ArrayType *ArrayTy = dyn_cast<ArrayType>(Ty))
     Ty = ConsumerInstance->getArrayBaseElemType(ArrayTy);
   if (!Ty->isPointerType() || Ty->isVoidPointerType())
@@ -795,6 +799,7 @@
     return;
 
   case Expr::CXXNewExprClass:
+  case Expr::CXXNullPtrLiteralExprClass: // Fall-through
     InitStr = "";
     return;
 
@@ -859,6 +864,7 @@
   case Expr::MemberExprClass: // Fall-through
   case Expr::BinaryOperatorClass:
   case Expr::CXXMemberCallExprClass:
+  case Expr::CXXOperatorCallExprClass:
   case Expr::CallExprClass:
   case Expr::ArraySubscriptExprClass: {
     RewriteHelper->getExprString(E, InitStr);
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/creduce-2.10.0+git.20191010.8a67e69/clang_delta/RemoveNestedFunction.cpp 
new/creduce-2.10.0+git.20200420.d83cbda/clang_delta/RemoveNestedFunction.cpp
--- 
old/creduce-2.10.0+git.20191010.8a67e69/clang_delta/RemoveNestedFunction.cpp    
    2019-10-11 05:30:08.000000000 +0200
+++ 
new/creduce-2.10.0+git.20200420.d83cbda/clang_delta/RemoveNestedFunction.cpp    
    2020-04-21 08:19:57.000000000 +0200
@@ -461,6 +461,13 @@
     VarStr = DStr + " " + VarStr;
     return;
   }
+
+  if (const AutoType *AT = 
+      dyn_cast<AutoType>(CalleeType)) {
+    VarStr = "auto " + VarStr;
+    return;
+  }
+
   QT = TheCallExpr->getCallReturnType(ASTCtx);
   getNewTmpVariable(
     QT.getTypePtr()->getUnqualifiedDesugaredType()->getCanonicalTypeInternal(),
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/creduce-2.10.0+git.20191010.8a67e69/clang_delta/RemoveUnusedFunction.cpp 
new/creduce-2.10.0+git.20200420.d83cbda/clang_delta/RemoveUnusedFunction.cpp
--- 
old/creduce-2.10.0+git.20191010.8a67e69/clang_delta/RemoveUnusedFunction.cpp    
    2019-10-11 05:30:08.000000000 +0200
+++ 
new/creduce-2.10.0+git.20200420.d83cbda/clang_delta/RemoveUnusedFunction.cpp    
    2020-04-21 08:19:57.000000000 +0200
@@ -703,11 +703,14 @@
     }
   }
 
+  bool InNamespace = Ctx->isNamespace();
   for (auto *I : Ctx->using_directives()) {
     const NamespaceDecl *ND = I->getNominatedNamespace();
     // avoid infinite recursion
-    if (ND->getLookupParent() == Ctx)
+    if ((InNamespace && dyn_cast<NamespaceDecl>(Ctx) == ND) ||
+        ND->getLookupParent() == Ctx) {
       return NULL;
+    }
     if (const FunctionDecl *FD = lookupFunctionDeclShallow(DName, ND))
       return FD;
   }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/creduce-2.10.0+git.20191010.8a67e69/clang_delta/RenameParam.cpp 
new/creduce-2.10.0+git.20200420.d83cbda/clang_delta/RenameParam.cpp
--- old/creduce-2.10.0+git.20191010.8a67e69/clang_delta/RenameParam.cpp 
2019-10-11 05:30:08.000000000 +0200
+++ new/creduce-2.10.0+git.20200420.d83cbda/clang_delta/RenameParam.cpp 
2020-04-21 08:19:57.000000000 +0200
@@ -127,7 +127,8 @@
 
   llvm::DenseMap<ParmVarDecl *, std::string>::iterator I =
     ParamNameMap.find(PD);
-  TransAssert((I != ParamNameMap.end()) && "Bad Param!");
+  if (I == ParamNameMap.end())
+    return true;
   
   return ConsumerInstance->RewriteHelper->replaceExpr(DRE, (*I).second);
 }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/creduce-2.10.0+git.20191010.8a67e69/clang_delta/RewriteUtils.cpp 
new/creduce-2.10.0+git.20200420.d83cbda/clang_delta/RewriteUtils.cpp
--- old/creduce-2.10.0+git.20191010.8a67e69/clang_delta/RewriteUtils.cpp        
2019-10-11 05:30:08.000000000 +0200
+++ new/creduce-2.10.0+git.20200420.d83cbda/clang_delta/RewriteUtils.cpp        
2020-04-21 08:19:57.000000000 +0200
@@ -214,7 +214,11 @@
   int RangeSize;
  
   SourceLocation StartLoc = ParamLocRange.getBegin();
+  if (StartLoc.isMacroID())
+    StartLoc = SrcManager->getExpansionLoc(StartLoc);
   SourceLocation EndLoc = ParamLocRange.getEnd();
+  if (EndLoc.isMacroID())
+    EndLoc = SrcManager->getExpansionLoc(EndLoc);
   if (StartLoc.isInvalid() && EndLoc.isInvalid()) {
     return false;
   }
@@ -232,7 +236,7 @@
     }
   }
   else {
-    RangeSize = TheRewriter->getRangeSize(ParamLocRange);
+    RangeSize = TheRewriter->getRangeSize(SourceRange(StartLoc, EndLoc));
     if (RangeSize == -1)
       return false;
   }
@@ -538,7 +542,7 @@
 
   // VD is the the only declaration, so it is safe to remove the entire stmt
   if (DS->isSingleDecl()) {
-    return !(TheRewriter->RemoveText(StmtRange));
+    return !(TheRewriter->RemoveText(getRealSourceRange(StmtRange)));
   }
 
   // handle the case where we could have implicit declaration of RecordDecl
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/creduce-2.10.0+git.20191010.8a67e69/clang_delta/SimpleInliner.cpp 
new/creduce-2.10.0+git.20200420.d83cbda/clang_delta/SimpleInliner.cpp
--- old/creduce-2.10.0+git.20191010.8a67e69/clang_delta/SimpleInliner.cpp       
2019-10-11 05:30:08.000000000 +0200
+++ new/creduce-2.10.0+git.20200420.d83cbda/clang_delta/SimpleInliner.cpp       
2020-04-21 08:19:57.000000000 +0200
@@ -214,6 +214,8 @@
       !FD->isThisDeclarationADefinition())
     return true;
 
+  if (FD->getBeginLoc().isInvalid() || FD->getEndLoc().isInvalid())
+    return true;
   ConsumerInstance->CurrentFD = FD;
   ConsumerInstance->CollectionVisitor->setNumStmts(0);
   ConsumerInstance->CollectionVisitor->TraverseDecl(FD);
@@ -571,8 +573,10 @@
   }
 
   if (FunctionTemplateDecl *FTD = CurrentFD->getPrimaryTemplate()) {
-    TheRewriter.RemoveText(FTD->getSourceRange());
-    return;
+    if (FTD->getBeginLoc().isValid() && FTD->getEndLoc().isValid()) {
+      TheRewriter.RemoveText(FTD->getSourceRange());
+      return;
+    }
   }
 
   SourceRange FDRange = CurrentFD->getSourceRange();
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/creduce-2.10.0+git.20191010.8a67e69/clang_delta/tests/local-to-global/macro.c
 
new/creduce-2.10.0+git.20200420.d83cbda/clang_delta/tests/local-to-global/macro.c
--- 
old/creduce-2.10.0+git.20191010.8a67e69/clang_delta/tests/local-to-global/macro.c
   1970-01-01 01:00:00.000000000 +0100
+++ 
new/creduce-2.10.0+git.20200420.d83cbda/clang_delta/tests/local-to-global/macro.c
   2020-04-21 08:19:57.000000000 +0200
@@ -0,0 +1,10 @@
+// RUN: %clang_delta --transformation=local-to-global --counter=1 %s 2>&1 | 
%remove_lit_checks | FileCheck %s
+
+#define TYPE unsigned short int
+// CHECK: unsigned short{{.*}} foo_t;
+// CHECK-NEXT: void foo() {
+void foo() {
+// CHECK-NEXT:  {{^ +$}}
+  TYPE t;
+// CHECK-NEXT: }
+}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/creduce-2.10.0+git.20191010.8a67e69/clang_delta/tests/param-to-global/macro.c
 
new/creduce-2.10.0+git.20200420.d83cbda/clang_delta/tests/param-to-global/macro.c
--- 
old/creduce-2.10.0+git.20191010.8a67e69/clang_delta/tests/param-to-global/macro.c
   1970-01-01 01:00:00.000000000 +0100
+++ 
new/creduce-2.10.0+git.20200420.d83cbda/clang_delta/tests/param-to-global/macro.c
   2020-04-21 08:19:57.000000000 +0200
@@ -0,0 +1,8 @@
+// RUN: %clang_delta --transformation=param-to-global --counter=1 %s 2>&1 | 
%remove_lit_checks | FileCheck %s
+
+#define TYPE unsigned short int
+// CHECK: unsigned short{{.*}} foo_p;
+// CHECK-NEXT: void foo(void) {
+// CHECK-NEXT: }
+void foo(TYPE p) {
+}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/creduce-2.10.0+git.20191010.8a67e69/clang_delta/tests/remove-unused-function/class.cc
 
new/creduce-2.10.0+git.20200420.d83cbda/clang_delta/tests/remove-unused-function/class.cc
--- 
old/creduce-2.10.0+git.20191010.8a67e69/clang_delta/tests/remove-unused-function/class.cc
   1970-01-01 01:00:00.000000000 +0100
+++ 
new/creduce-2.10.0+git.20200420.d83cbda/clang_delta/tests/remove-unused-function/class.cc
   2020-04-21 08:19:57.000000000 +0200
@@ -0,0 +1,25 @@
+// RUN: %clang_delta --transformation=remove-unused-function --counter=1 %s 
2>&1 | %remove_lit_checks | FileCheck %s
+// RUN: %clang_delta --transformation=remove-unused-function --counter=2 %s 
2>&1 | %remove_lit_checks | FileCheck %s -check-prefix=CHECK-SECOND
+
+// CHECK: class A {
+// CHECK-SECOND: class A {
+class A {
+// CHECK-NOT: ~A()
+// CHECK-SECOND: ~A() {}
+  ~A() {}
+// CHECK: void foo();
+// CHECK-SECOND-NOT: void foo()
+  void foo();
+// CHECK: };
+// CHECK-SECOND: };
+};
+
+// CHECK: void A::foo() {
+// CHECK-SECOND-NOT: void A::foo
+void A::foo() {
+// CHECK: return;
+// CHECK-SECOND-NOT: return;
+  return;
+// CHECK: }
+// CHECK-NOT: }
+}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/creduce-2.10.0+git.20191010.8a67e69/clang_delta/tests/remove-unused-function/inline_ns.cc
 
new/creduce-2.10.0+git.20200420.d83cbda/clang_delta/tests/remove-unused-function/inline_ns.cc
--- 
old/creduce-2.10.0+git.20191010.8a67e69/clang_delta/tests/remove-unused-function/inline_ns.cc
       1970-01-01 01:00:00.000000000 +0100
+++ 
new/creduce-2.10.0+git.20200420.d83cbda/clang_delta/tests/remove-unused-function/inline_ns.cc
       2020-04-21 08:19:57.000000000 +0200
@@ -0,0 +1,12 @@
+// RUN: %clang_delta --query-instances=remove-unused-function %s 2>&1 | 
%remove_lit_checks | FileCheck %s
+
+// CHECK: Available transformation instances: 0
+namespace a {
+  inline namespace b {
+    using namespace a;
+  }
+  struct c;
+  namespace {
+    using a::c;
+  }
+}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/creduce-2.10.0+git.20191010.8a67e69/clang_delta/tests/remove-unused-function/macro1.cc
 
new/creduce-2.10.0+git.20200420.d83cbda/clang_delta/tests/remove-unused-function/macro1.cc
--- 
old/creduce-2.10.0+git.20191010.8a67e69/clang_delta/tests/remove-unused-function/macro1.cc
  1970-01-01 01:00:00.000000000 +0100
+++ 
new/creduce-2.10.0+git.20200420.d83cbda/clang_delta/tests/remove-unused-function/macro1.cc
  2020-04-21 08:19:57.000000000 +0200
@@ -0,0 +1,6 @@
+// RUN: %clang_delta --transformation=remove-unused-function --counter=1 %s 
2>&1 | %remove_lit_checks | FileCheck %s
+
+// CHECK: #define EXTERN extern
+#define EXTERN extern
+// CHECK-NOT: EXTERN int foo();
+EXTERN int foo();
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/creduce-2.10.0+git.20191010.8a67e69/clang_delta/tests/remove-unused-function/macro2.cc
 
new/creduce-2.10.0+git.20200420.d83cbda/clang_delta/tests/remove-unused-function/macro2.cc
--- 
old/creduce-2.10.0+git.20191010.8a67e69/clang_delta/tests/remove-unused-function/macro2.cc
  1970-01-01 01:00:00.000000000 +0100
+++ 
new/creduce-2.10.0+git.20200420.d83cbda/clang_delta/tests/remove-unused-function/macro2.cc
  2020-04-21 08:19:57.000000000 +0200
@@ -0,0 +1,15 @@
+// RUN: %clang_delta --transformation=remove-unused-function --counter=1 %s 
2>&1 | %remove_lit_checks | FileCheck %s
+
+// CHECK: #define __LEAF, __leaf__
+#define __LEAF, __leaf__
+// CHECK: #define __THROW __attribute__((__nothrow__ __LEAF))
+#define __THROW __attribute__((__nothrow__ __LEAF))
+// CHECK: # define __nonnull(params) __attribute__ ((__nonnull__ params))
+# define __nonnull(params) __attribute__ ((__nonnull__ params))
+
+// CHECK-NOT: extern void *foo(void* __restrict p1
+extern void *foo(void* __restrict p1, const void* __restrict p2,
+// CHECK-NOT: int p3, unsigned p4)
+                 int p3, unsigned p4)
+// CHECK-NOT: __THROW __nonnull ((1, 2));
+     __THROW __nonnull ((1, 2));
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/creduce-2.10.0+git.20191010.8a67e69/clang_delta/tests/remove-unused-function/macro3.cc
 
new/creduce-2.10.0+git.20200420.d83cbda/clang_delta/tests/remove-unused-function/macro3.cc
--- 
old/creduce-2.10.0+git.20191010.8a67e69/clang_delta/tests/remove-unused-function/macro3.cc
  1970-01-01 01:00:00.000000000 +0100
+++ 
new/creduce-2.10.0+git.20200420.d83cbda/clang_delta/tests/remove-unused-function/macro3.cc
  2020-04-21 08:19:57.000000000 +0200
@@ -0,0 +1,19 @@
+// RUN: %clang_delta --transformation=remove-unused-function --counter=1 %s 
2>&1 | %remove_lit_checks | FileCheck %s
+
+// CHECK: # define BEGIN_NAMESPACE_STD namespace std {
+# define BEGIN_NAMESPACE_STD namespace std {
+// CHECK: # define END_NAMESPACE_STD }
+# define END_NAMESPACE_STD }
+// CHECK: # define __THROW throw ()
+# define __THROW throw ()
+// CHECK: # define __nonnull(params)
+# define __nonnull(params)
+
+// CHECK: BEGIN_NAMESPACE_STD
+BEGIN_NAMESPACE_STD
+// CHECK-NOT: extern void *foo(void *__restrict p1,
+extern void *foo(void *__restrict p1,
+// CHECK-NOT: unsigned p2) __THROW __nonnull
+                 unsigned p2) __THROW __nonnull ((1, 2));
+// CHECK: END_NAMESPACE_STD
+END_NAMESPACE_STD
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/creduce-2.10.0+git.20191010.8a67e69/clang_delta/tests/remove-unused-function/template1.cc
 
new/creduce-2.10.0+git.20200420.d83cbda/clang_delta/tests/remove-unused-function/template1.cc
--- 
old/creduce-2.10.0+git.20191010.8a67e69/clang_delta/tests/remove-unused-function/template1.cc
       1970-01-01 01:00:00.000000000 +0100
+++ 
new/creduce-2.10.0+git.20200420.d83cbda/clang_delta/tests/remove-unused-function/template1.cc
       2020-04-21 08:19:57.000000000 +0200
@@ -0,0 +1,15 @@
+// RUN: %clang_delta --transformation=remove-unused-function --counter=1 %s 
2>&1 | %remove_lit_checks | FileCheck %s
+// RUN: %clang_delta --transformation=remove-unused-function --counter=2 %s 
2>&1 | %remove_lit_checks | FileCheck %s -check-prefix=CHECK-SECOND
+
+// CHECK: {{^;}}
+// CHECK-SECOND: template<typename T> void foo(T *);
+template<typename T> void foo(T *);
+// CHECK: template <typename T> struct S {
+// CHECK-SECOND: template <typename T> struct S {
+template <typename T> struct S {
+// CHECK: template<typename T1> friend void foo(T1 *);
+// CHECK-SECOND: {{ *}};
+  template<typename T1> friend void foo(T1 *);
+// CHECK: };
+// CHECK-SECOND: };
+};
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/creduce-2.10.0+git.20191010.8a67e69/clang_delta/tests/remove-unused-function/template2.cc
 
new/creduce-2.10.0+git.20200420.d83cbda/clang_delta/tests/remove-unused-function/template2.cc
--- 
old/creduce-2.10.0+git.20191010.8a67e69/clang_delta/tests/remove-unused-function/template2.cc
       1970-01-01 01:00:00.000000000 +0100
+++ 
new/creduce-2.10.0+git.20200420.d83cbda/clang_delta/tests/remove-unused-function/template2.cc
       2020-04-21 08:19:57.000000000 +0200
@@ -0,0 +1,6 @@
+// RUN: %clang_delta --transformation=remove-unused-function --counter=1 %s 
2>&1 | %remove_lit_checks | FileCheck %s
+
+// CHECK: template <typename T> struct S {;};
+template <typename T> struct S {template <typename T1> void foo();};
+// CHECK-NOT: void S<T>::foo()
+template<typename T> template<typename T1> void S<T>::foo() { }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/creduce-2.10.0+git.20191010.8a67e69/clang_delta/tests/remove-unused-function/unused-funcs.cc
 
new/creduce-2.10.0+git.20200420.d83cbda/clang_delta/tests/remove-unused-function/unused-funcs.cc
--- 
old/creduce-2.10.0+git.20191010.8a67e69/clang_delta/tests/remove-unused-function/unused-funcs.cc
    1970-01-01 01:00:00.000000000 +0100
+++ 
new/creduce-2.10.0+git.20200420.d83cbda/clang_delta/tests/remove-unused-function/unused-funcs.cc
    2020-04-21 08:19:57.000000000 +0200
@@ -0,0 +1,47 @@
+// RUN: %clang_delta --transformation=remove-unused-function --counter=1 %s 
2>&1 | %remove_lit_checks | FileCheck %s
+// RUN: %clang_delta --transformation=remove-unused-function --counter=2 %s 
2>&1 | %remove_lit_checks | FileCheck %s -check-prefix=CHECK-SECOND
+// RUN: %clang_delta --transformation=remove-unused-function --counter=3 %s 
2>&1 | %remove_lit_checks | FileCheck %s -check-prefix=CHECK-THIRD
+// RUN: %clang_delta --transformation=remove-unused-function --counter=4 %s 
2>&1 | %remove_lit_checks | FileCheck %s -check-prefix=CHECK-FOURTH
+
+// CHECK-NOT: void foo();
+// CHECK-SECOND: void foo();
+// CHECK-THIRD: void foo();
+// CHECK-FOURTH: void foo();
+void foo();
+// CHECK: void bar(int x) {
+// CHECK-SECOND-NOT: void bar(int x) {
+// CHECK-THIRD: void bar(int x) {
+// CHECK-FOURTH: void bar(int x) {
+void bar(int x) {
+
+// CHECK: }
+// CHECK-SECOND-NOT: }
+// CHECK-THIRD: }
+// CHECK-FOURTH: }
+}
+// CHECK: extern int baz(int x,
+// CHECK-SECOND: extern int baz(int x,
+// CHECK-THIRD-NOT: extern int baz(int x,
+// CHECK-FOURTH: extern int baz(int x,
+extern int baz(int x,
+// CHECK: int y);
+// CHECK-SECOND: int y);
+// CHECK-THIRD-NOT: int y);
+// CHECK-FOURTH: int y);
+           int y);
+
+// CHECK: extern "C" {
+// CHECK-SECOND: extern "C" {
+// CHECK-THIRD: extern "C" {
+// CHECK-FOURTH: extern "C" {
+extern "C" {
+// CHECK: long long f1() {}
+// CHECK-SECOND: long long f1() {}
+// CHECK-THIRD: long long f1() {}
+// CHECK-FOURTH-NOT: long long f1() {}
+  long long f1() {}
+// CHECK: }
+// CHECK-SECOND: }
+// CHECK-THIRD: }
+// CHECK-FOURTH: }
+}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/creduce-2.10.0+git.20191010.8a67e69/clang_delta/tests/rename-class/template_class_1.cpp
 
new/creduce-2.10.0+git.20200420.d83cbda/clang_delta/tests/rename-class/template_class_1.cpp
--- 
old/creduce-2.10.0+git.20191010.8a67e69/clang_delta/tests/rename-class/template_class_1.cpp
 1970-01-01 01:00:00.000000000 +0100
+++ 
new/creduce-2.10.0+git.20200420.d83cbda/clang_delta/tests/rename-class/template_class_1.cpp
 2020-04-21 08:19:57.000000000 +0200
@@ -0,0 +1,4 @@
+// RUN: %clang_delta --transformation=rename-class --counter=1 %s 2>&1 | 
%remove_lit_checks | FileCheck %s
+
+// CHECK: template class A<Traits<X>>;
+template class Base<Traits<X>>;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/creduce-2.10.0+git.20191010.8a67e69/scripts/travis_deps.sh 
new/creduce-2.10.0+git.20200420.d83cbda/scripts/travis_deps.sh
--- old/creduce-2.10.0+git.20191010.8a67e69/scripts/travis_deps.sh      
2019-10-11 05:30:08.000000000 +0200
+++ new/creduce-2.10.0+git.20200420.d83cbda/scripts/travis_deps.sh      
2020-04-21 08:19:57.000000000 +0200
@@ -31,11 +31,13 @@
 # Set up for installing LLVM 9.0.
 # See <https://wiki.ubuntu.com/ToolChain>.
 # See <http://llvm.org/apt/>.
+# Key must be added before doing `apt-add-repository ... apt.llvm.org ...`.
+wget -O - http://apt.llvm.org/llvm-snapshot.gpg.key | apt-key add -
+#
 add-apt-repository -y \
     ppa:ubuntu-toolchain-r/test
 add-apt-repository -y \
     'deb http://apt.llvm.org/bionic/ llvm-toolchain-bionic-9 main'
-wget -O - http://apt.llvm.org/llvm-snapshot.gpg.key | apt-key add -
 apt-get update -qq
 
 # Install LLVM 9.0.  See file "INSTALL.md".


Reply via email to