From 94da8164a8a4a7c3d6cb52066650e1aa7daf6fe2 Mon Sep 17 00:00:00 2001
From: Simon Schwitanski <simon.schwitanski@rwth-aachen.de>
Date: Wed, 14 May 2025 10:30:23 +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