From b18981612f472a4e2e5dbbb027879a7dad769a56 Mon Sep 17 00:00:00 2001
From: Simon Schwitanski <schwitanski@itc.rwth-aachen.de>
Date: Wed, 14 May 2025 10:26:21 +0200
Subject: [PATCH] Fix wrong error marker for Imrecv local concurrency tests

This marks `MPI_Imrecv` as error source instead of the `MPI_Mprobe` call
for the local concurrency issue.
---
 scripts/errors/pt2pt/LocalConcurrency.py | 11 ++++++++---
 1 file changed, 8 insertions(+), 3 deletions(-)

diff --git a/scripts/errors/pt2pt/LocalConcurrency.py b/scripts/errors/pt2pt/LocalConcurrency.py
index 996c0722..8ff9ed39 100644
--- a/scripts/errors/pt2pt/LocalConcurrency.py
+++ b/scripts/errors/pt2pt/LocalConcurrency.py
@@ -55,9 +55,14 @@ class LocalConcurrencyErrorP2P(ErrorGenerator):
             if check_receive:
                 kind = 0
             conflicting_inst.set_rank_executing(kind)
-            for c in tm.get_instruction("MPICALL", return_list=True):
-                if c.get_rank_executing() == kind:
-                    c.set_has_error()
+
+            if recv_func != "mpi_imrecv":
+                for c in tm.get_instruction("MPICALL", return_list=True):
+                    if c.get_rank_executing() == kind:
+                        c.set_has_error()
+            else:
+                tm.get_instruction("MATCHEDRECEIVE").set_has_error()
+
 
             for c in tm.get_instruction("WAIT", return_list=True):
                 if c.get_rank_executing() == kind:
-- 
GitLab