Visit typedef before parameter

Signed-off-by: Kamil Rakoczy <krakoczy@antmicro.com>
diff --git a/uhdm-plugin/UhdmAst.cc b/uhdm-plugin/UhdmAst.cc
index f0412e6..e568dc5 100644
--- a/uhdm-plugin/UhdmAst.cc
+++ b/uhdm-plugin/UhdmAst.cc
@@ -1808,6 +1808,11 @@
 {
     current_node = make_ast_node(AST::AST_PACKAGE);
     shared.current_top_node = current_node;
+    visit_one_to_many({vpiTypedef}, obj_h, [&](AST::AstNode *node) {
+        if (node) {
+            move_type_to_new_typedef(current_node, node);
+        }
+    });
     visit_one_to_many({vpiParameter, vpiParamAssign}, obj_h, [&](AST::AstNode *node) {
         if (node) {
             node->str = strip_package_name(node->str);
@@ -1817,11 +1822,6 @@
             add_or_replace_child(current_node, node);
         }
     });
-    visit_one_to_many({vpiTypedef}, obj_h, [&](AST::AstNode *node) {
-        if (node && node->str != "") {
-            move_type_to_new_typedef(current_node, node);
-        }
-    });
     visit_one_to_many({vpiTaskFunc}, obj_h, [&](AST::AstNode *node) {
         if (node) {
             current_node->children.push_back(node);