2 * (c) copyright 1987 by the Vrije Universiteit, Amsterdam, The Netherlands.
3 * See the copyright notice in the ACK home directory, in the file "Copyright".
5 /* $Id: l_brace.str,v 1.2 1994/06/27 08:00:32 ceriel Exp $ */
7 /* To determine the minimum scope of a local variable, all (braced)
8 scopes are numbered consecutively. Next we maintain an array which
9 maps the nesting depth (level) onto the scope number; we record
10 the scope number of the first application of a local variable
11 in its definition. Each further application requires that the
12 level of the variable be at least large enough to comprise both
13 the present scope and that of its first application. That level
14 number is determined by searching the array and is then recorded in
15 the definition (beacuse it is always equal to or smaller than the
18 The array is implemented as a linked list of struct brace.
27 /* ALLOCDEF "brace" 10 */