/* --------------------------------------------------------------------------
* Strongly connected components algorithm for static.c.
*
- * Hugs 98 is Copyright (c) Mark P Jones, Alastair Reid and the Yale
- * Haskell Group 1994-99, and is distributed as Open Source software
- * under the Artistic License; see the file "Artistic" that is included
- * in the distribution for details.
+ * The Hugs 98 system is Copyright (c) Mark P Jones, Alastair Reid, the
+ * Yale Haskell Group, and the Oregon Graduate Institute of Science and
+ * Technology, 1994-1999, All rights reserved. It is distributed as
+ * free software under the license in the file "License", which is
+ * included in the distribution.
*
* $RCSfile: scc.c,v $
- * $Revision: 1.4 $
- * $Date: 1999/04/27 10:07:01 $
+ * $Revision: 1.7 $
+ * $Date: 2000/03/22 18:14:23 $
* ------------------------------------------------------------------------*/
#ifndef SCC_C
static Cell daSccs = NIL;
static Int daCount;
-static Int local sccMin Args((Int,Int));
-
-static Int local sccMin(x,y) /* calculate minimum of x,y */
-Int x, y; { /* (unless y is zero) */
+static Int local sccMin ( Int x, Int y) /* calculate minimum of x,y */
+{ /* (unless y is zero) */
return (x<=y || y==0) ? x : y;
}
#endif
* This would probably have been a good application for C++ templates ...
* ------------------------------------------------------------------------*/
-static Int local LOWLINK Args((Cell)); /* local function */
-static Int local LOWLINK(v) /* calculate `lowlink' of v */
-Cell v; {
+static Int local LOWLINK( Cell v ) /* calculate `lowlink' of v */
+{
Int low = daCount;
Int dfn = daCount; /* depth first search no. of v */
List ws = DEPENDS(v); /* adjacency list for v */
}
#ifdef SCC
-static List local SCC(bs) /* sort list with added dependency */
-List bs; { /* info into SCCs */
+static List local SCC ( List bs ) /* sort list with added dependency */
+{ /* info into SCCs */
List tmp = NIL;
clearStack();
daSccs = NIL; /* clear current list of SCCs */
#endif
#ifdef SCC2 /* Two argument version */
-static List local SCC2(bs,cs) /* sort lists with added dependency*/
-List bs, cs; { /* info into SCCs */
+static List local SCC2 ( List bs,
+ List cs ) /* sort lists with added dependency*/
+{ /* info into SCCs */
List tmp = NIL;
clearStack();
daSccs = NIL; /* clear current list of SCCs */