Path 1: 91 calls (0.88)

Call (91)

list (53) [] (38)

1def _detect_vacuous_formatting(
2        self, node: nodes.Call, positional_arguments: list[SuccessfulInferenceResult]
3    ) -> None:
4        counter = collections.Counter(
5            arg.name for arg in positional_arguments if isinstance(arg, nodes.Name)
6        )
7        for name, count in counter.items():
8            if count == 1:
9                continue
10            self.add_message(
11                "duplicate-string-formatting-argument", node=node, args=(name,)
12            )
            

Path 2: 12 calls (0.12)

Call (12)

list (12)

1def _detect_vacuous_formatting(
2        self, node: nodes.Call, positional_arguments: list[SuccessfulInferenceResult]
3    ) -> None:
4        counter = collections.Counter(
5            arg.name for arg in positional_arguments if isinstance(arg, nodes.Name)
6        )
7        for name, count in counter.items():
8            if count == 1:
9                continue
10            self.add_message(
11                "duplicate-string-formatting-argument", node=node, args=(name,)
12            )
            

Path 3: 1 calls (0.01)

Call (1)

list (1)

1def _detect_vacuous_formatting(
2        self, node: nodes.Call, positional_arguments: list[SuccessfulInferenceResult]
3    ) -> None:
4        counter = collections.Counter(
5            arg.name for arg in positional_arguments if isinstance(arg, nodes.Name)
6        )
7        for name, count in counter.items():
8            if count == 1:
9                continue
10            self.add_message(
11                "duplicate-string-formatting-argument", node=node, args=(name,)
12            )