Hello community, here is the log from the commit of package re2 for openSUSE:Factory checked in at 2018-02-05 10:46:23 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/re2 (Old) and /work/SRC/openSUSE:Factory/.re2.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Package is "re2" Mon Feb 5 10:46:23 2018 rev:14 rq:571990 version:MACRO Changes: -------- --- /work/SRC/openSUSE:Factory/re2/re2.changes 2018-01-06 18:46:56.313541537 +0100 +++ /work/SRC/openSUSE:Factory/.re2.new/re2.changes 2018-02-05 10:46:25.466805905 +0100 @@ -1,0 +2,6 @@ +Fri Feb 2 10:26:54 UTC 2018 - astieger@suse.com + +- update to 2018-01-02: + * developer visible changes only + +------------------------------------------------------------------- Old: ---- 2018-01-01.tar.gz New: ---- 2018-02-01.tar.gz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ re2.spec ++++++ --- /var/tmp/diff_new_pack.JPww9Z/_old 2018-02-05 10:46:26.598752909 +0100 +++ /var/tmp/diff_new_pack.JPww9Z/_new 2018-02-05 10:46:26.598752909 +0100 @@ -16,7 +16,7 @@ # -%global longver 2018-01-01 +%global longver 2018-02-01 %global shortver %(echo %{longver}|sed 's|-||g') %define libname libre2-0 Name: re2 @@ -25,7 +25,7 @@ Summary: C++ fast alternative to backtracking RE engines License: BSD-3-Clause Group: Development/Libraries/C and C++ -URL: https://github.com/google/re2/ +Url: https://github.com/google/re2/ Source0: https://github.com/google/re2/archive/%{longver}.tar.gz Source99: baselibs.conf BuildRequires: gcc-c++ ++++++ 2018-01-01.tar.gz -> 2018-02-01.tar.gz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/re2-2018-01-01/BUILD new/re2-2018-02-01/BUILD --- old/re2-2018-01-01/BUILD 2017-12-19 11:28:27.000000000 +0100 +++ new/re2-2018-02-01/BUILD 2018-01-30 10:24:50.000000000 +0100 @@ -8,6 +8,16 @@ exports_files(["LICENSE"]) +config_setting( + name = "windows", + values = {"cpu": "x64_windows"}, +) + +config_setting( + name = "windows_msvc", + values = {"cpu": "x64_windows_msvc"}, +) + cc_library( name = "re2", srcs = [ @@ -57,8 +67,16 @@ "re2/set.h", "re2/stringpiece.h", ], - copts = ["-pthread"], - linkopts = ["-pthread"], + copts = select({ + ":windows": [], + ":windows_msvc": [], + "//conditions:default": ["-pthread"], + }), + linkopts = select({ + ":windows": [], + ":windows_msvc": [], + "//conditions:default": ["-pthread"], + }), visibility = ["//visibility:public"], ) @@ -207,9 +225,13 @@ name = "regexp_benchmark", testonly = 1, srcs = ["re2/testing/regexp_benchmark.cc"], - linkopts = [ - "-lm", - "-lrt", - ], + linkopts = select({ + ":windows": [], + ":windows_msvc": [], + "//conditions:default": [ + "-lm", + "-lrt", + ], + }), deps = [":benchmark"], ) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/re2-2018-01-01/re2/re2.h new/re2-2018-02-01/re2/re2.h --- old/re2-2018-01-01/re2/re2.h 2017-12-19 11:28:27.000000000 +0100 +++ new/re2-2018-02-01/re2/re2.h 2018-01-30 10:24:50.000000000 +0100 @@ -774,6 +774,7 @@ // Constructor specially designed for NULL arguments Arg(void*); + Arg(std::nullptr_t); typedef bool (*Parser)(const char* str, size_t n, void* dest); @@ -849,6 +850,7 @@ inline RE2::Arg::Arg() : arg_(NULL), parser_(parse_null) { } inline RE2::Arg::Arg(void* p) : arg_(p), parser_(parse_null) { } +inline RE2::Arg::Arg(std::nullptr_t p) : arg_(p), parser_(parse_null) { } inline bool RE2::Arg::Parse(const char* str, size_t n) const { return (*parser_)(str, n, arg_); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/re2-2018-01-01/re2/testing/re2_test.cc new/re2-2018-02-01/re2/testing/re2_test.cc --- old/re2-2018-01-01/re2/testing/re2_test.cc 2017-12-19 11:28:27.000000000 +0100 +++ new/re2-2018-02-01/re2/testing/re2_test.cc 2018-01-30 10:24:50.000000000 +0100 @@ -707,10 +707,16 @@ TEST(RE2, FullMatchIgnoredArg) { int i; string s; - // Ignored arg + + // Old-school NULL should be ignored. CHECK(RE2::FullMatch("ruby:1234", "(\\w+)(:)(\\d+)", &s, (void*)NULL, &i)); CHECK_EQ(s, string("ruby")); CHECK_EQ(i, 1234); + + // C++11 nullptr should also be ignored. + CHECK(RE2::FullMatch("rubz:1235", "(\\w+)(:)(\\d+)", &s, nullptr, &i)); + CHECK_EQ(s, string("rubz")); + CHECK_EQ(i, 1235); } TEST(RE2, FullMatchTypedNullArg) {