From 341d82048dba956bb8a42bcce1fdeefd18bcea51 Mon Sep 17 00:00:00 2001
From: Maxime Perrotin <Maxime.Perrotin@esa.int>
Date: Wed, 28 Jul 2021 12:03:19 +0200
Subject: [PATCH 1/2] Fix support for unconnected RIs

---
 misc/space-creator/xml2aadl/function.tmplt | 9 ++++-----
 1 file changed, 4 insertions(+), 5 deletions(-)

diff --git a/misc/space-creator/xml2aadl/function.tmplt b/misc/space-creator/xml2aadl/function.tmplt
index 7ed6ce9b..603857f4 100644
--- a/misc/space-creator/xml2aadl/function.tmplt
+++ b/misc/space-creator/xml2aadl/function.tmplt
@@ -73,10 +73,13 @@ FEATURES
 {% comment %}
    for the RI there are two possible names, either PI_.. if it is a connected RI, or RI_ if it is a function type
    we have to iterate over the function attributes to determine it..
+   It is also RI_ if the RI is not connected. Despite the iteration on "connectedInterfaces", unconnected ones are
+   also there and pointing to the current function. This hack is needed to figure this out:
+   {{ func.path|join:"::"|add:"::"|add:iface.name }} {{ endpoint|join:"::" }}
 {% endcomment %}
 {% if forloop.first %}
 {% for attr in func.attributes %}
-   {% if attr.name == "is_type" and attr.value == "YES" %}
+   {% if attr.name == "is_type" and attr.value == "YES" or attr.name == "is_type" and func.path|join:"::"|add:"::"|add:iface.name == endpoint|join:"::" %}
    RI_{{ iface.name }} : REQUIRES SUBPROGRAM ACCESS interfaceview::IV::{% for item in endpoint %} {% if not forloop.last %}{{ item }}::{% endif %}{% endfor %}RI_{{ endpoint|last }}.others {
    {% elif attr.name == "is_type" and attr.value == "NO" %}
    RI_{{ iface.name }} : REQUIRES SUBPROGRAM ACCESS interfaceview::IV::{% for item in endpoint %} {% if not forloop.last %}{{ item }}::{% endif %}{% endfor %}PI_{{ endpoint|last }}.others {
@@ -89,13 +92,9 @@ FEATURES
       {% if ifprop.name == "Taste::InheritPI" %}
       Taste::labelInheritance => "{{ ifprop.value }}";
       {% elif ifprop.name == "Taste::Autonamed" %}
-      --  {{ ifprop.name }} => "{{ ifprop.value }}";
       {% elif ifprop.name == "Taste::InnerCoordinates" %}
-      --  Ignored InnerCoordinates (unknown TASTE property)
       {% elif ifprop.name == "Taste::RootCoordinates" %}
-      --  Ignored RootCoordinates (unknown TASTE property)
       {% elif ifprop.name == "Taste::coordinates" %}
-      --  Ignored coordinates (incompatible with Ellidiss GUI)
       {% else %}
       {{ ifprop.name }} => "{{ ifprop.value }}";
       {% endif %}
-- 
GitLab


From bb821216d6038c6dd686232e93f78321e11aca4f Mon Sep 17 00:00:00 2001
From: Thanassis Tsiodras <ttsiodras@gmail.com>
Date: Thu, 29 Jul 2021 12:19:07 +0200
Subject: [PATCH 2/2] Sync with upstream

---
 dmt | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/dmt b/dmt
index 3e5c60dc..53a9e39c 160000
--- a/dmt
+++ b/dmt
@@ -1 +1 @@
-Subproject commit 3e5c60dc952324d13ae087c2e21f515e817f39cc
+Subproject commit 53a9e39c9a4c5a957e166d38a3f4c00a44674843
-- 
GitLab