Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package cvise for openSUSE:Factory checked in at 2026-08-06 16:24:39 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/cvise (Old) and /work/SRC/openSUSE:Factory/.cvise.new.16738 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "cvise" Thu Aug 6 16:24:39 2026 rev:87 rq:1369707 version:2.12.0+git.20260702.78bba5d Changes: -------- --- /work/SRC/openSUSE:Factory/cvise/cvise.changes 2026-06-28 21:07:45.896562504 +0200 +++ /work/SRC/openSUSE:Factory/.cvise.new.16738/cvise.changes 2026-08-06 16:26:31.917511074 +0200 @@ -1,0 +2,21 @@ +Wed Aug 5 06:45:03 UTC 2026 - Martin Pluskal <[email protected]> + +- Update to version 2.12.0+git.20260702.78bba5d: + * test_manager: fix empty-jobs deadlock on state exhaustion, which + made test_dir_linker_duplicate_var_error hang on single-core + machines (boo#1268265) +- Drop test_dir_linker_duplicate_2threads.patch: the single-core hang + it worked around is fixed upstream +- Add cvise-test-interleaving-deterministic-reduction.patch: pin the + interestingness test of test_interleaving_lines_passes to + -Werror=implicit-function-declaration. Without it the test has two + admissible reductions on GCC <= 13, which both Leap 16.0 and 16.1 + ship, and the interleaved passes race between them (boo#1273590) +- Drop the obsolete suse_version < 1550 conditionals: cvise needs + python3 >= 3.8 while SLE-15/Leap 15.x ship python 3.6, so it cannot + build there at all and the gcc11 fallback was dead code +- Drop unused ncurses-devel BuildRequires: nothing in the tree + references curses and the build links neither -lncurses nor -ltinfo +- Use %autosetup + +------------------------------------------------------------------- Old: ---- cvise-2.12.0+git.20260624.82a22c61.tar.xz test_dir_linker_duplicate_2threads.patch New: ---- cvise-2.12.0+git.20260702.78bba5d.tar.xz cvise-test-interleaving-deterministic-reduction.patch ----------(Old B)---------- Old: machines (boo#1268265) - Drop test_dir_linker_duplicate_2threads.patch: the single-core hang it worked around is fixed upstream ----------(Old E)---------- ----------(New B)---------- New: it worked around is fixed upstream - Add cvise-test-interleaving-deterministic-reduction.patch: pin the interestingness test of test_interleaving_lines_passes to ----------(New E)---------- ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ cvise.spec ++++++ --- /var/tmp/diff_new_pack.yOZH3P/_old 2026-08-06 16:26:32.477530626 +0200 +++ /var/tmp/diff_new_pack.yOZH3P/_new 2026-08-06 16:26:32.481530766 +0200 @@ -17,25 +17,24 @@ Name: cvise -Version: 2.12.0+git.20260624.82a22c61 +Version: 2.12.0+git.20260702.78bba5d Release: 0 Summary: Super-parallel Python port of the C-Reduce License: BSD-3-Clause URL: https://github.com/marxin/cvise Source: %{name}-%{version}.tar.xz +# PATCH-FIX-UPSTREAM cvise-tree-sitter-cpp-aarch64-sign-compare.patch [email protected] -- fix -Werror=sign-compare in the bundled tree-sitter-cpp scanner on aarch64 (wchar_t is unsigned there), https://github.com/tree-sitter/tree-sitter-cpp/issues/338 +Patch1: cvise-tree-sitter-cpp-aarch64-sign-compare.patch +# PATCH-FIX-UPSTREAM cvise-test-interleaving-deterministic-reduction.patch [email protected] -- test_interleaving_lines_passes has two admissible reductions on GCC <= 13 (Leap 16.x) and races between them, https://github.com/marxin/cvise/pull/513 +Patch2: cvise-test-interleaving-deterministic-reduction.patch BuildRequires: astyle BuildRequires: clang-devel BuildRequires: cmake BuildRequires: flex -%if %{suse_version} < 1550 -BuildRequires: gcc11-c++ -%else BuildRequires: gcc-c++ -BuildRequires: mold -%endif BuildRequires: indent BuildRequires: llvm-devel -BuildRequires: ncurses-devel +BuildRequires: mold BuildRequires: procps BuildRequires: python3 >= 3.8 BuildRequires: python3-Pebble @@ -61,13 +60,7 @@ Requires: python3-zstandard Requires: unifdef -# Workaround bsc#1268265 -Patch1: test_dir_linker_duplicate_2threads.patch -# Fix -Werror=sign-compare in bundled tree-sitter-cpp scanner on aarch64 (wchar_t is unsigned there); https://github.com/tree-sitter/tree-sitter-cpp/issues/338 -Patch2: cvise-tree-sitter-cpp-aarch64-sign-compare.patch - %description - C-Vise is a super-parallel Python port of the C-Reduce. The port is fully compatible to the C-Reduce and uses the same efficient LLVM-based C/C++ reduction tool named clang_delta. @@ -79,17 +72,10 @@ and report bugs in compilers and other tools that process C/C++ or OpenCL code. %prep -%setup -q -%autopatch -p1 +%autosetup -p1 %build -%if %{suse_version} < 1550 -export CC=gcc-11 -export CXX=g++-11 -%else %global optflags %{optflags} -fuse-ld=mold -%endif - %cmake -DCMAKE_INSTALL_LIBEXECDIR=%{_libexecdir} %cmake_build ++++++ _servicedata ++++++ --- /var/tmp/diff_new_pack.yOZH3P/_old 2026-08-06 16:26:32.561533559 +0200 +++ /var/tmp/diff_new_pack.yOZH3P/_new 2026-08-06 16:26:32.565533699 +0200 @@ -1,6 +1,6 @@ <servicedata> <service name="tar_scm"> <param name="url">https://github.com/marxin/cvise</param> - <param name="changesrevision">82a22c61f66896f8661926a28350b1e5d49c3771</param></service></servicedata> + <param name="changesrevision">78bba5d00ee6a046e77789e016bb55d0a92b8c29</param></service></servicedata> (No newline at EOF) ++++++ cvise-2.12.0+git.20260624.82a22c61.tar.xz -> cvise-2.12.0+git.20260702.78bba5d.tar.xz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/cvise-2.12.0+git.20260624.82a22c61/.github/actions/setup-opensuse/action.yml new/cvise-2.12.0+git.20260702.78bba5d/.github/actions/setup-opensuse/action.yml --- old/cvise-2.12.0+git.20260624.82a22c61/.github/actions/setup-opensuse/action.yml 1970-01-01 01:00:00.000000000 +0100 +++ new/cvise-2.12.0+git.20260702.78bba5d/.github/actions/setup-opensuse/action.yml 2026-07-02 01:42:04.000000000 +0200 @@ -0,0 +1,25 @@ +name: "Setup openSUSE Tumbleweed Snapshot" +description: "Configures zypper to use a stable historical snapshot to bypass CDN flakiness" +runs: + using: "composite" + steps: + - name: Fetch latest stable snapshot date + uses: actions/github-script@v9 + id: get-snapshot + with: + script: | + const response = await fetch("https://openqa.opensuse.org/api/v1/job_groups/1/build_results"); + const data = await response.json(); + // Use index 2 (the 3rd most recent snapshot, roughly 2-3 days old) + // to ensure all global mirrors have fully synced the RPM packages. + // This avoids 404s/timeouts on regional mirrors that lag behind + // live releases. + return data.build_results[2].build; + result-encoding: string + - name: Setup openSUSE snapshot repository + shell: bash + run: | + SNAPSHOT="${{ steps.get-snapshot.outputs.result }}" + echo "Using snapshot: $SNAPSHOT" + zypper rr --all + zypper ar -f http://download.opensuse.org/history/$SNAPSHOT/tumbleweed/repo/oss/ repo-oss diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/cvise-2.12.0+git.20260624.82a22c61/.github/workflows/build-llvm-nightly.yml new/cvise-2.12.0+git.20260702.78bba5d/.github/workflows/build-llvm-nightly.yml --- old/cvise-2.12.0+git.20260624.82a22c61/.github/workflows/build-llvm-nightly.yml 2026-06-24 01:58:22.000000000 +0200 +++ new/cvise-2.12.0+git.20260702.78bba5d/.github/workflows/build-llvm-nightly.yml 2026-07-02 01:42:04.000000000 +0200 @@ -29,6 +29,8 @@ - run: ${{ env.RETRY }} apt-get update - run: ${{ env.RETRY }} apt-get -qq install -y gcc g++ wget lsb-release wget software-properties-common gnupg git cmake flex mawk python3-pebble python3-psutil python3-chardet python3-msgspec python3-pytest python3-pytest-mock python3-pytest-subprocess python3-jsonschema python3-zstandard vim unifdef sudo - uses: rui314/setup-mold@v1 + with: + make-default: false - run: ld --version - run: nproc - run: ${{ env.RETRY }} wget https://apt.llvm.org/llvm.sh @@ -39,7 +41,7 @@ - run: touch /usr/lib/llvm-22/lib/libLibcTableGenUtil.a - uses: actions/checkout@v6 - run: mkdir objdir - - run: cmake .. + - run: cmake .. -DCMAKE_EXE_LINKER_FLAGS="-fuse-ld=mold" -DCMAKE_SHARED_LINKER_FLAGS="-fuse-ld=mold" working-directory: objdir - run: make -j`nproc` VERBOSE=1 working-directory: objdir diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/cvise-2.12.0+git.20260624.82a22c61/.github/workflows/build.yml new/cvise-2.12.0+git.20260702.78bba5d/.github/workflows/build.yml --- old/cvise-2.12.0+git.20260624.82a22c61/.github/workflows/build.yml 2026-06-24 01:58:22.000000000 +0200 +++ new/cvise-2.12.0+git.20260702.78bba5d/.github/workflows/build.yml 2026-07-02 01:42:04.000000000 +0200 @@ -42,6 +42,9 @@ image: opensuse/tumbleweed steps: + - uses: actions/checkout@v6 + - name: Setup openSUSE snapshot repository + uses: ./.github/actions/setup-opensuse - run: | ${{ env.RETRY }} zypper -n install \ binutils clang${{ matrix.llvm }}-devel cmake flex gcc-c++ llvm${{ matrix.llvm }}-devel \ @@ -51,14 +54,15 @@ - run: ${{ env.RETRY }} zypper -n install sqlite-devel python3 - run: ${{ env.RETRY }} pip install --break-system-packages pytest-cov - uses: rui314/setup-mold@v1 + with: + make-default: false - run: ld --version - run: nproc - - uses: actions/checkout@v6 - name: build run: | mkdir objdir cd objdir - ${{ matrix.env }} cmake .. -DCMAKE_BUILD_TYPE=${{ matrix.build-type }} -DCMAKE_CXX_FLAGS=${{ matrix.extra-flags }} + ${{ matrix.env }} cmake .. -DCMAKE_BUILD_TYPE=${{ matrix.build-type }} -DCMAKE_CXX_FLAGS="${{ matrix.extra-flags }}" -DCMAKE_EXE_LINKER_FLAGS="-fuse-ld=mold" -DCMAKE_SHARED_LINKER_FLAGS="-fuse-ld=mold" make -j`nproc` VERBOSE=1 - name: test run: pytest @@ -98,12 +102,13 @@ - "3.13" - "3.14" - "3.14t" + - "3.15-dev" fail-fast: false steps: - uses: actions/checkout@v6 - run: ${{ env.RETRY }} apt-get update - - run: ${{ env.RETRY }} apt-get -qq install -y gcc g++ wget lsb-release software-properties-common gnupg git cmake flex vim unifdef sudo + - run: ${{ env.RETRY }} apt-get -qq install -y gcc g++ wget lsb-release software-properties-common gnupg git cmake flex vim unifdef sudo libffi-dev - run: chown -R $(whoami) /github/home # workaround for "directory ... pip ... is not owned or is not writable by the current user" - run: rm -rf /__t/Python # workaround for "error when attempting to execute the process ... pip" - uses: actions/setup-python@v6 @@ -129,8 +134,10 @@ image: opensuse/tumbleweed steps: - - run: ${{ env.RETRY }} zypper -n install python3-pip - uses: actions/checkout@v6 + - name: Setup openSUSE snapshot repository + uses: ./.github/actions/setup-opensuse + - run: ${{ env.RETRY }} zypper -n install python3-pip - run: ${{ env.RETRY }} pip install --break-system-packages ruff - run: ruff check - run: ruff format --diff @@ -142,8 +149,10 @@ image: opensuse/tumbleweed steps: - - run: ${{ env.RETRY }} zypper -n install binutils clang-devel cmake flex gcc-c++ llvm-devel python312 - uses: actions/checkout@v6 + - name: Setup openSUSE snapshot repository + uses: ./.github/actions/setup-opensuse + - run: ${{ env.RETRY }} zypper -n install binutils clang-devel cmake flex gcc-c++ llvm-devel python312 - name: prepare venv # Pytype currently only supports Python <=3.12 run: | @@ -169,13 +178,15 @@ image: opensuse/tumbleweed steps: + - uses: actions/checkout@v6 + - name: Setup openSUSE snapshot repository + uses: ./.github/actions/setup-opensuse - run: | ${{ env.RETRY }} zypper -n install \ binutils clang-devel cmake flex gcc-c++ llvm-devel python3 python3-pyright \ python3-Pebble python3-pytest python3-pytest-mock python3-pytest-subprocess \ unifdef python3-psutil curl git python3-chardet findutils sudo wget python3-jsonschema \ python3-msgspec python3-zstandard - - uses: actions/checkout@v6 - run: mkdir objdir - run: cmake .. working-directory: objdir diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/cvise-2.12.0+git.20260624.82a22c61/cvise/tests/test_test_manager.py new/cvise-2.12.0+git.20260702.78bba5d/cvise/tests/test_test_manager.py --- old/cvise-2.12.0+git.20260624.82a22c61/cvise/tests/test_test_manager.py 2026-06-24 01:58:22.000000000 +0200 +++ new/cvise-2.12.0+git.20260702.78bba5d/cvise/tests/test_test_manager.py 2026-07-02 01:42:04.000000000 +0200 @@ -13,7 +13,7 @@ import pytest from cvise.passes.abstract import AbstractPass, PassResult # noqa: E402 -from cvise.passes.hint_based import HintBasedPass # noqa: E402 +from cvise.passes.hint_based import HintBasedPass, HintState # noqa: E402 from cvise.utils import sigmonitor, statistics, testing # noqa: E402 from cvise.utils.fileutil import filter_files_by_patterns from cvise.utils.hint import Hint, HintBundle, Patch @@ -23,7 +23,7 @@ baz """ -PARALLEL_TESTS = 10 +DEFAULT_PARALLEL_TESTS = 10 class StubPass(AbstractPass): @@ -291,7 +291,23 @@ @pytest.fixture -def manager(tmp_path: Path, input_path: Path, interestingness_script: str, job_timeout: int, print_diff: bool): +def parallel_tests() -> int: + """The default parallel_tests parameter. + + Can be overridden in particular tests. + """ + return DEFAULT_PARALLEL_TESTS + + [email protected] +def manager( + tmp_path: Path, + input_path: Path, + interestingness_script: str, + job_timeout: int, + print_diff: bool, + parallel_tests: int, +): SAVE_TEMPS = False NO_CACHE = False SKIP_KEY_OFF = True # tests shouldn't listen to keyboard @@ -317,7 +333,7 @@ job_timeout, SAVE_TEMPS, [input_path], - PARALLEL_TESTS, + parallel_tests, NO_CACHE, SKIP_KEY_OFF, SHADDAP, @@ -412,7 +428,7 @@ manager.run_passes([p], interleaving=False) assert extra_dir_count() >= manager.MAX_TIMEOUTS # we should've stopped soon after MAX_TIMEOUTS, at worst a batch of jobs later. - assert extra_dir_count() <= 2 * max(manager.MAX_TIMEOUTS, PARALLEL_TESTS) + assert extra_dir_count() <= 2 * max(manager.MAX_TIMEOUTS, DEFAULT_PARALLEL_TESTS) def test_interleaving_letter_removals(input_path: Path, manager): @@ -429,7 +445,7 @@ @pytest.mark.skipif(os.name != 'posix', reason='requires POSIX for command-line tools') [email protected]('input_contents', ['ababacac' * PARALLEL_TESTS]) [email protected]('input_contents', ['ababacac' * DEFAULT_PARALLEL_TESTS]) @pytest.mark.parametrize('interestingness_script', [r"grep a {test_case} && ! grep '\(.\)\1' {test_case}"]) def test_interleaving_letter_removals_large(input_path: Path, manager): """Test that multiple passes executed in interleaving way can delete all but one character. @@ -452,7 +468,9 @@ @pytest.mark.parametrize('interestingness_script', [r'false {test_case}']) def test_interleaving_round_robin_transforms(manager: testing.TestManager): tracing_queue = multiprocessing.Manager().Queue() - passes = [TracingHintPass(tracing_queue, letters_to_remove=chr(ord('a') + i)) for i in range(PARALLEL_TESTS)] + passes = [ + TracingHintPass(tracing_queue, letters_to_remove=chr(ord('a') + i)) for i in range(DEFAULT_PARALLEL_TESTS) + ] manager.run_passes(passes, interleaving=True) transform_calls = [] @@ -460,12 +478,12 @@ transform_calls.append(tracing_queue.get()) # all passes should've gotten equal number of jobs - execs_per_pass = [transform_calls.count(str(i)) for i in range(PARALLEL_TESTS)] + execs_per_pass = [transform_calls.count(str(i)) for i in range(DEFAULT_PARALLEL_TESTS)] assert min(execs_per_pass) == max(execs_per_pass) # we cannot assert the ideal round-robin order (like 123..N123..) because concurrent writes to the queue are racy, # but at least it's almost guaranteed that no pass should be recorded N times in a row. - for i in range(len(transform_calls) - PARALLEL_TESTS + 1): - slice = transform_calls[i : i + PARALLEL_TESTS] + for i in range(len(transform_calls) - DEFAULT_PARALLEL_TESTS + 1): + slice = transform_calls[i : i + DEFAULT_PARALLEL_TESTS] assert min(slice) != max(slice) @@ -637,3 +655,39 @@ assert stat.worked + stat.failed <= stat.totally_executed elapsed = time.monotonic() - start_time assert sum(stat.total_seconds for stat in stats) <= elapsed + + +class MockHintState(HintState): + def subset_of(self, other: HintState) -> bool: + # We only want to skip state 2 if state 1 has already succeeded + return self.ptr == 2 and other.ptr == 1 + + def real_chunk(self) -> int: + return 1 + + +class StateSkippingPass(AbstractPass): + """A pass that triggers the subset skipping logic, causing its state to exhaust unexpectedly.""" + + def new(self, test_case: Path, *args, **kwargs) -> MockHintState: + return MockHintState(tmp_dir=Path(), per_type_states=(), ptr=1, special_hints=()) + + def advance(self, test_case: Path, state: MockHintState) -> MockHintState | None: + if state.ptr == 1: + return MockHintState(tmp_dir=Path(), per_type_states=(), ptr=2, special_hints=()) + return None + + def advance_on_success(self, test_case: Path, state: MockHintState, *args, **kwargs) -> MockHintState | None: + return self.advance(test_case, state) + + def transform(self, test_case: Path, state: MockHintState, *args, **kwargs) -> tuple[PassResult, MockHintState]: + with open(test_case, 'a') as f: + f.write(f'modification {state.ptr}\n') + return (PassResult.OK, state) + + [email protected]('parallel_tests', [1]) +def test_scheduler_deadlock_on_empty_jobs(input_path: Path, manager: testing.TestManager): + """Verifies that the orchestrator avoids deadlock when subset-skipping exhausts remaining states.""" + + manager.run_passes([StateSkippingPass()], interleaving=True) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/cvise-2.12.0+git.20260624.82a22c61/cvise/utils/testing.py new/cvise-2.12.0+git.20260702.78bba5d/cvise/utils/testing.py --- old/cvise-2.12.0+git.20260624.82a22c61/cvise/utils/testing.py 2026-06-24 01:58:22.000000000 +0200 +++ new/cvise-2.12.0+git.20260702.78bba5d/cvise/utils/testing.py 2026-07-02 01:42:04.000000000 +0200 @@ -913,6 +913,11 @@ while len(self.jobs) < self.parallel_tests and self.maybe_schedule_job(): pass + if not self.jobs: + # If maybe_schedule_job() couldn't schedule any work (e.g. because states were exhausted) + # and there are no active jobs left, we must break to avoid a deadlock in wait(). + break + # no more jobs could be scheduled at the moment - wait for some results wait( [j.future for j in self.jobs] + [sigmonitor.get_future()], diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/cvise-2.12.0+git.20260624.82a22c61/tests/test_cvise.py new/cvise-2.12.0+git.20260702.78bba5d/tests/test_cvise.py --- old/cvise-2.12.0+git.20260624.82a22c61/tests/test_cvise.py 2026-06-24 01:58:22.000000000 +0200 +++ new/cvise-2.12.0+git.20260702.78bba5d/tests/test_cvise.py 2026-07-02 01:42:04.000000000 +0200 @@ -283,7 +283,8 @@ assert (test_case / 'a.cc').read_text() == '#include "a.h"\nint nextHi = x;\n' -def test_dir_linker_duplicate_var_error(tmp_path: Path, overridden_subprocess_tmpdir: Path): [email protected]('extra_args', [[], ['-n', '1']], ids=['default_cores', 'single_core']) +def test_dir_linker_duplicate_var_error(tmp_path: Path, overridden_subprocess_tmpdir: Path, extra_args: list[str]): """Test reducing headers and a makefile for a link-time error due to duplicate variables. Here we had to hardcode particular error messages from real linkers. @@ -320,7 +321,8 @@ f"(LC_ALL=C make -C repro 2>&1 || true) | awk '{{ print }} /{ERROR_REGEX}/ {{ y=1 }} END {{ exit !y }}'", 'repro', '--tidy', - ], + ] + + extra_args, tmp_path, overridden_subprocess_tmpdir, ) ++++++ cvise-test-interleaving-deterministic-reduction.patch ++++++ >From 36217c0edce8afe940ec818f5d89a61b9f09bf03 Mon Sep 17 00:00:00 2001 From: Martin Pluskal <[email protected]> Date: Wed, 5 Aug 2026 10:51:26 +0200 Subject: [PATCH] tests: make test_interleaving_lines_passes reduction unique test_interleaving_lines_passes asserts one exact reduced output: int foo() { } but its interestingness test is `gcc -c test.c && grep foo test.c`, which on GCC <= 13 also accepts int main() { return foo(); } because an implicit declaration of foo() is merely a warning there. GCC 14 turned -Wimplicit-function-declaration into an error by default, so on a newer compiler only the expected form survives. With two admissible reductions the outcome is decided by which of the three interleaved 'lines' passes happens to win the race, so the test fails intermittently on any distribution still shipping GCC 13. openSUSE Leap 16.0 and 16.1 both do, and both fail this test, while Tumbleweed (GCC 16) passes. CI runs on Tumbleweed, which is why this is not seen upstream. Pin the interestingness test to the stricter behaviour so the reduction is unique on every compiler. Note -Wall -Werror (as used by the neighbouring tests) is not usable here: it would also reject the expected result, whose non-void foo() falls off the end and trips -Wreturn-type. Verified with both GCC 13 and GCC 15 that the expected reduction compiles and the alternative one does not. Upstream: https://github.com/marxin/cvise/pull/513 --- tests/test_cvise.py | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/tests/test_cvise.py b/tests/test_cvise.py index 7cacb7c..b900f7e 100644 --- a/tests/test_cvise.py +++ b/tests/test_cvise.py @@ -168,7 +168,13 @@ def test_interleaving_lines_passes(tmp_path: Path, overridden_subprocess_tmpdir: """) proc = start_cvise( - ['-c', 'gcc -c test.c && grep foo test.c', '--pass-group-file', str(config_path), testcase_path.name], + [ + '-c', + 'gcc -c -Werror=implicit-function-declaration test.c && grep foo test.c', + '--pass-group-file', + str(config_path), + testcase_path.name, + ], tmp_path, overridden_subprocess_tmpdir, )
