diff --git a/build.txt b/build.txt
index ccfcaa1e508ab50ca11c6840721cc8095816d00c..102bfdedc9a511de642c9452cc6cc78424f3d464 100644
--- a/build.txt
+++ b/build.txt
@@ -1 +1 @@
-12293
\ No newline at end of file
+12294
\ No newline at end of file
diff --git a/src/main/java/ddtranslatorSoclib/toSoclib/TasksAndMainGenerator.java b/src/main/java/ddtranslatorSoclib/toSoclib/TasksAndMainGenerator.java
index 5851b0646b7e9884d388adaaf6c69d9dadec2e46..965c8c8daaad94a26b3d3132f6c3acda437e1ca6 100755
--- a/src/main/java/ddtranslatorSoclib/toSoclib/TasksAndMainGenerator.java
+++ b/src/main/java/ddtranslatorSoclib/toSoclib/TasksAndMainGenerator.java
@@ -148,6 +148,7 @@ public class TasksAndMainGenerator {
         mainFile = new  MainFileSoclib("main");
 
         avspec.removeCompositeStates();
+	avspec.removeLibraryFunctionCalls();
         avspec.removeTimers();
 
         if (avspec.hasApplicationCode() && includeUserCode) {
@@ -353,15 +354,22 @@ public class TasksAndMainGenerator {
     	return -1;
     }
 
+    /* DG 7.7. give CPUid of outer block to block created e.g. for a timer */
     public void makeTasks() {
         for(AvatarBlock block: avspec.getListOfBlocks()) {
-	      if (FindCPUidFromTask(block)!=-1)
+	    if (FindCPUidFromTask(block)!=-1) 
 	      makeTask(block,FindCPUidFromTask(block));
-	      else {
-		  System.out.println("Warning: Unmapped Block "+block.getName());
-	      }
+	    else {
+		//AvatarBlock father = block.getFather();
+		//if(father!=null){ //DG bug: donne null pointer
+		//makeTask(block,FindCPUidFromTask(father));
+		makeTask(block,0);
+	
+		System.out.println("Warning: Unmapped Block "+block.getName());
+		}
+	    }
         }
-    }
+
 
     public void makeTask(AvatarBlock block , int cpuId) {
 	TaskFileSoclib taskFile = new TaskFileSoclib(block.getName(),cpuId);
diff --git a/src/main/java/tmltranslator/TMLActivityElement.java b/src/main/java/tmltranslator/TMLActivityElement.java
index 3b104a6e2b5e6b871da1f4e50d79a5d10a49fcb1..90162fe1c2d289d7343c5d66f71cc81c5cd6d68e 100755
--- a/src/main/java/tmltranslator/TMLActivityElement.java
+++ b/src/main/java/tmltranslator/TMLActivityElement.java
@@ -116,7 +116,7 @@ public abstract class TMLActivityElement extends TMLElement{
     }
 
     public String toXML(Vector<TMLActivityElement> elements) {
-	String s = "<ACTIVITYELEMENT value=\"" + value + "\" id=\"" + elements.indexOf(this) + "\" name=\"" + name + "\">\n";
+	String s = "<ACTIVITYELEMENT type=\"" + getClass().getName() + "\" value=\"" + value + "\" id=\"" + elements.indexOf(this) + "\" name=\"" + name + "\">\n";
 	if (securityPattern != null) {
 	    s += securityPattern.toXML();
 	}
@@ -130,7 +130,7 @@ public abstract class TMLActivityElement extends TMLElement{
 
 
     public String extraToXML() {
-	String s = "<CUSTOM type=\"" + getClass().getName() + "\" " + customExtraToXML() + " />\n";
+	String s = "<CUSTOM " + customExtraToXML() + " />\n";
 	return s;
     }
     
diff --git a/src/main/java/ui/GTMLModeling.java b/src/main/java/ui/GTMLModeling.java
index c1159614b39fa2f6e9e97b5c8caedbbad6efda9d..cd96637882d61e956e8634e01e03033c7db54866 100755
--- a/src/main/java/ui/GTMLModeling.java
+++ b/src/main/java/ui/GTMLModeling.java
@@ -1,7 +1,8 @@
-/* Copyright or (C) or Copr. GET / ENST, Telecom-Paris, Ludovic Apvrille, Andrea Enrici
+/* Copyright or (C) or Copr. GET / ENST, Telecom-Paris, Ludovic Apvrille, Andrea Enrici, Matteo Bertolino
  * 
  * ludovic.apvrille AT telecom-paristech.fr
  * andrea.enrici AT telecom-paristech.fr
+ * matteo.bertolino AT telecom-paristech.fr
  * 
  * This software is a computer program whose purpose is to allow the
  * edition of TURTLE analysis, design and deployment diagrams, to
@@ -3482,7 +3483,12 @@ public class GTMLModeling  {
                         node.addMECToHwExecutionNode( mec );
                         map.addTaskToHwExecutionNode(task, (HwExecutionNode)node);
                     } else {
-                        TraceManager.addDev("Null task");
+                        TraceManager.addDev("Null task. Raising an error");
+			String msg = "The task named " + artifact.getTaskName() + " was not found";
+                        UICheckingError ce = new UICheckingError(CheckingError.STRUCTURE_ERROR, msg);
+                        ce.setTDiagramPanel(tmlap.tmlap);
+                        ce.setTGComponent(tgc);
+                        checkingErrors.add(ce);
                     }
                 }
             }
diff --git a/src/main/java/ui/util/DefaultText.java b/src/main/java/ui/util/DefaultText.java
index 80fc94ca9610e2eaae93597ed2fc908fdf4d1ef2..c3ff1233b10e1a430a8c2da5605a60176a2f8f47 100755
--- a/src/main/java/ui/util/DefaultText.java
+++ b/src/main/java/ui/util/DefaultText.java
@@ -51,8 +51,8 @@ package ui.util;
  */
 public class DefaultText  {
 
-    public static String BUILD = "12292";
-    public static String DATE = "2017/07/06 13:01:53 CET";
+    public static String BUILD = "12293";
+    public static String DATE = "2017/07/07 02:01:27 CET";
     
     
     public static StringBuffer sbAbout = makeAbout();