Browse Source

* two different specialisations with the same types from different units
still need a type conversion with llvm, as their type identifiers will
be different

git-svn-id: branches/debug_eh@42097 -

Jonas Maebe 6 years ago
parent
commit
3bee9ab9da
1 changed files with 4 additions and 1 deletions
  1. 4 1
      compiler/llvm/nllvmcnv.pas

+ 4 - 1
compiler/llvm/nllvmcnv.pas

@@ -83,7 +83,10 @@ class function tllvmtypeconvnode.target_specific_need_equal_typeconv(fromdef, to
         still need a conversion }
       (
        ((fromdef.typ=procvardef) and
-        (todef.typ=procvardef))
+        (todef.typ=procvardef)) or
+       { same for two different specialisations }
+       ((df_specialization in fromdef.defoptions) and
+        (df_specialization in todef.defoptions))
       );
   end;