> I debugged manually the functions calls: toplev_main --> do_compile--> > compile_file--> parse_file() --> until cgraph_mark_rechable_node(node) in > cgrpah.c > the problem comes from the instruction > cgraph_mark_reachable_node (struct cgraph_node *node) > { > if (!node->reachable && node->local.finalized) > { > printf("not reachable node and local.finalize=true \n"); > if (cgraph_global_info_ready) > { > printf("global_info_ready are true \n"); > /* Verify that function does not appear to be needed out of blue > during the optimization process. This can happen for extern > inlines when bodies was removed after inlining. */ > gcc_assert ((node->analyzed || node->in_other_partition > || DECL_EXTERNAL (node->decl))); > printf("end of gcc assert \n"); > } > ... > } > the last printf is not printed, so the problem comes from the gcc_assert. > Its best to avoid tracking code into the middle end, from what i have read you have a test.uml which contains some dummy code which you want to GENERIC'ise it. I remember you said you dont have a parser, i havent had time to look over your code but you need to great the GENERIC tree's yourself then pass this to the middlend. Have you looked at our preliminary documentation in docs/languages.texi in the gcalc branch? It might help. I may be missing something since i havent looked at your code yet but i wll tomorrow :) see if i can help. --Phil