diff --git a/src/plugins/obfuscator/obfuscate.ml b/src/plugins/obfuscator/obfuscate.ml
index f602d521aaa60e2db91fa4b6058606862d1ecdf8..5eb3a8bf65f81696b18b955576f44603171b7cd6 100644
--- a/src/plugins/obfuscator/obfuscate.ml
+++ b/src/plugins/obfuscator/obfuscate.ml
@@ -161,11 +161,15 @@ class visitor = object
     Cil.DoChildren
 
   method! vlogic_type_info_decl lti =
-    lti.lt_name <- Dictionary.fresh Obfuscator_kind.Logic_type lti.lt_name ;
+    if not (Logic_env.is_builtin_logic_type lti.lt_name)
+    then lti.lt_name <- Dictionary.fresh Obfuscator_kind.Logic_type lti.lt_name ;
     Cil.DoChildren
 
   method! vlogic_ctor_info_decl lci =
-    lci.ctor_name <- Dictionary.fresh Obfuscator_kind.Logic_constructor lci.ctor_name ;
+    if not (Logic_env.is_builtin_logic_ctor lci.ctor_name)
+    then
+      lci.ctor_name <-
+        Dictionary.fresh Obfuscator_kind.Logic_constructor lci.ctor_name ;
     Cil.DoChildren
 
   method! vattr = function