Hello community, here is the log from the commit of package re2 for openSUSE:Factory checked in at 2017-04-20 20:55:04 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/re2 (Old) and /work/SRC/openSUSE:Factory/.re2.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "re2" Thu Apr 20 20:55:04 2017 rev:6 rq:487835 version:MACRO Changes: -------- --- /work/SRC/openSUSE:Factory/re2/re2.changes 2017-03-20 17:09:56.178705796 +0100 +++ /work/SRC/openSUSE:Factory/.re2.new/re2.changes 2017-04-20 20:55:04.988897254 +0200 @@ -1,0 +2,6 @@ +Thu Apr 13 14:07:55 UTC 2017 - mplus...@suse.com + +- Update to version 2017-04-01 + * No upstream changelog available + +------------------------------------------------------------------- Old: ---- 2017-03-01.tar.gz New: ---- 2017-04-01.tar.gz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ re2.spec ++++++ --- /var/tmp/diff_new_pack.vW2HsO/_old 2017-04-20 20:55:05.772786402 +0200 +++ /var/tmp/diff_new_pack.vW2HsO/_new 2017-04-20 20:55:05.776785837 +0200 @@ -16,7 +16,7 @@ # -%global longver 2017-03-01 +%global longver 2017-04-01 %global shortver %(echo %{longver}|sed 's|-||g') %define libname libre2-0 Name: re2 ++++++ 2017-03-01.tar.gz -> 2017-04-01.tar.gz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/re2-2017-03-01/CMakeLists.txt new/re2-2017-04-01/CMakeLists.txt --- old/re2-2017-03-01/CMakeLists.txt 2017-02-28 01:11:21.000000000 +0100 +++ new/re2-2017-04-01/CMakeLists.txt 2017-03-31 10:30:45.000000000 +0200 @@ -39,7 +39,7 @@ list(APPEND EXTRA_TARGET_LINK_LIBRARIES pcre) endif() -include_directories(${CMAKE_SOURCE_DIR}) +include_directories(${CMAKE_CURRENT_SOURCE_DIR}) set(RE2_SOURCES re2/bitstate.cc diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/re2-2017-03-01/kokoro/macos-cmake.cfg new/re2-2017-04-01/kokoro/macos-cmake.cfg --- old/re2-2017-03-01/kokoro/macos-cmake.cfg 1970-01-01 01:00:00.000000000 +0100 +++ new/re2-2017-04-01/kokoro/macos-cmake.cfg 2017-03-31 10:30:45.000000000 +0200 @@ -0,0 +1 @@ +build_file: "re2/kokoro/macos-cmake.sh" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/re2-2017-03-01/kokoro/macos-cmake.sh new/re2-2017-04-01/kokoro/macos-cmake.sh --- old/re2-2017-03-01/kokoro/macos-cmake.sh 1970-01-01 01:00:00.000000000 +0100 +++ new/re2-2017-04-01/kokoro/macos-cmake.sh 2017-03-31 10:30:45.000000000 +0200 @@ -0,0 +1,14 @@ +#!/bin/bash +set -eux + +cd git/re2 + +cmake -D CMAKE_BUILD_TYPE=Debug . +cmake --build . --config Debug --clean-first +ctest -C Debug --output-on-failure -E dfa\|exhaustive\|random + +cmake -D CMAKE_BUILD_TYPE=Release . +cmake --build . --config Release --clean-first +ctest -C Release --output-on-failure -E dfa\|exhaustive\|random + +exit 0 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/re2-2017-03-01/re2/prog.cc new/re2-2017-04-01/re2/prog.cc --- old/re2-2017-03-01/re2/prog.cc 2017-02-28 01:11:21.000000000 +0100 +++ new/re2-2017-04-01/re2/prog.cc 2017-03-31 10:30:45.000000000 +0200 @@ -543,10 +543,9 @@ // "leaves"), only Alt instructions require their predecessors to be computed. // // Dividing the Prog into "trees" comprises two passes: marking the "successor -// roots" and the predecessors; and marking the "dominator roots". Walking the -// Prog in its entirety causes the "successor roots" to be marked in a certain -// order during the first pass. Iteration over the "successor roots" occurs in -// reverse order of their marking during the second pass; by working backwards +// roots" and the predecessors; and marking the "dominator roots". Sorting the +// "successor roots" by their bytecode offsets enables iteration in order from +// greatest to least during the second pass; by working backwards in this case // and flooding the graph no further than "leaves" and already marked "roots", // it becomes possible to mark "dominator roots" without doing excessive work. // @@ -576,10 +575,13 @@ MarkSuccessors(&rootmap, &predmap, &predvec, &reachable, &stk); // Second pass: Marks "dominator roots". - for (SparseArray<int>::const_iterator i = rootmap.end() - 1; - i != rootmap.begin(); + SparseArray<int> sorted(rootmap); + std::sort(sorted.begin(), sorted.end(), sorted.less); + for (SparseArray<int>::const_iterator i = sorted.end() - 1; + i != sorted.begin(); --i) { - MarkDominator(i->index(), &rootmap, &predmap, &predvec, &reachable, &stk); + if (i->index() != start_unanchored() && i->index() != start()) + MarkDominator(i->index(), &rootmap, &predmap, &predvec, &reachable, &stk); } // Third pass: Emits "lists". Remaps outs to root-ids. diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/re2-2017-03-01/re2/re2.h new/re2-2017-04-01/re2/re2.h --- old/re2-2017-03-01/re2/re2.h 2017-02-28 01:11:21.000000000 +0100 +++ new/re2-2017-04-01/re2/re2.h 2017-03-31 10:30:45.000000000 +0200 @@ -878,6 +878,14 @@ #undef MAKE_INTEGER_PARSER #ifndef SWIG + +// Silence warnings about missing initializers for members of LazyRE2. +// Note that we test for Clang first because it defines __GNUC__ as well. +#if defined(__clang__) +#elif defined(__GNUC__) && __GNUC__ >= 6 +#pragma GCC diagnostic ignored "-Wmissing-field-initializers" +#endif + // Helper for writing global or static RE2s safely. // Write // static LazyRE2 re = {".*"}; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/re2-2017-03-01/re2/testing/compile_test.cc new/re2-2017-04-01/re2/testing/compile_test.cc --- old/re2-2017-03-01/re2/testing/compile_test.cc 2017-02-28 01:11:21.000000000 +0100 +++ new/re2-2017-04-01/re2/testing/compile_test.cc 2017-03-31 10:30:45.000000000 +0200 @@ -354,6 +354,44 @@ "22+ nop -> 12\n" "23. nop -> 18\n", forward); + + Dump("((|S.+)+|(|S.+)+|){2}", Regexp::Latin1|Regexp::NeverCapture, &forward, NULL); + EXPECT_EQ("3+ nop -> 36\n" + "4+ nop -> 31\n" + "5. nop -> 33\n" + "6+ byte [00-09] -> 8\n" + "7. byte [0b-ff] -> 8\n" + "8+ nop -> 6\n" + "9+ nop -> 29\n" + "10. nop -> 28\n" + "11+ byte [00-09] -> 13\n" + "12. byte [0b-ff] -> 13\n" + "13+ nop -> 11\n" + "14+ nop -> 26\n" + "15. nop -> 28\n" + "16+ byte [00-09] -> 18\n" + "17. byte [0b-ff] -> 18\n" + "18+ nop -> 16\n" + "19+ nop -> 36\n" + "20. nop -> 33\n" + "21+ byte [00-09] -> 23\n" + "22. byte [0b-ff] -> 23\n" + "23+ nop -> 21\n" + "24+ nop -> 31\n" + "25. nop -> 33\n" + "26+ nop -> 28\n" + "27. byte [53-53] -> 11\n" + "28. match! 0\n" + "29+ nop -> 28\n" + "30. byte [53-53] -> 6\n" + "31+ nop -> 33\n" + "32. byte [53-53] -> 21\n" + "33+ nop -> 29\n" + "34+ nop -> 26\n" + "35. nop -> 28\n" + "36+ nop -> 33\n" + "37. byte [53-53] -> 16\n", + forward); } } // namespace re2