Server : Apache System : Linux 145.162.205.92.host.secureserver.net 5.14.0-611.45.1.el9_7.x86_64 #1 SMP PREEMPT_DYNAMIC Wed Apr 1 05:56:53 EDT 2026 x86_64 User : tradze ( 1001) PHP Version : 8.1.34 Disable Function : NONE Directory : /usr/share/graphviz/gvpr/ |
/* Detect directed cycle and print one if found */
BEG_G{
node_t tp, hp;
node_t stk[node_t];
$tvtype = TV_prepostfwd;
$tvroot = fstnode($);
}
N {
if (stk[$]) {
stk[$] = NULL;
}
else if ($tvedge == NULL) { /* current root */
stk[$] = $;
}
else {
stk[$] = $tvedge.tail;
}
}
E {
if (stk[$.head]) {
tp = $.tail;
hp = $.head;
while (tp != $.head) {
printf ("%s -> %s\n", tp.name, hp.name);
hp = tp;
tp = stk[tp];
}
printf ("%s -> %s\n", tp.name, hp.name);
exit(0);
}
}