1 /* *********************************************************** 2 * * 3 * Copyright, (C) Honeywell Information Systems Inc., 1982 * 4 * * 5 *********************************************************** */ 6 %; 7 /* ****************************************************** 8 * * 9 * * 10 * Copyright (c) 1972 by Massachusetts Institute of * 11 * Technology and Honeywell Information Systems, Inc. * 12 * * 13 * * 14 ****************************************************** */ 15 16 create_context: 17 proc(cblock,t) returns(ptr); 18 19 /* Modified on: April 1977 by RHS for new allocation methods */ 20 21 dcl (cblock, p, t) ptr; 22 dcl pl1_stat_$node_uses(32) fixed bin ext; 23 24 %include pl1_tree_areas; 25 %include context; 26 %include nodes; 27 %include block; 28 pl1_stat_$node_uses(7) = pl1_stat_$node_uses(7) + 1; 29 30 allocate context in(tree_area) set(p); 31 32 p->context.node_type=context_node; 33 string(p->context.bits)="0"b; 34 p->context.token=t; /* this points to the token table entry */ 35 p->context.next=cblock->block.context; /* push node onto context chain */ 36 cblock->block.context=p; /* . . . . */ 37 38 return(p); 39 end create_context;