/[gcl]/gcl/o/iteration.c
ViewVC logotype

Diff of /gcl/o/iteration.c

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 1.1.1.1 by wfs, Mon Dec 6 22:44:11 1999 UTC revision 1.2 by camm, Sat Jul 20 07:10:55 2002 UTC
# Line 27  Foundation, 675 Mass Ave, Cambridge, MA Line 27  Foundation, 675 Mass Ave, Cambridge, MA
27    
28  #include "include.h"  #include "include.h"
29    
30  Floop(form)  void
31  object form;  Floop(object form)
32  {  {
33          object endp_temp;          object endp_temp;
34    
35          object x;          object x;
36          object *oldlex = lex_env;          object *oldlex = lex_env;
         object id;  
37          object *top;          object *top;
38    
39          make_nil_block();          make_nil_block();
# Line 81  LOOP: Line 80  LOOP:
80                                          during the main loop.                                          during the main loop.
81  */  */
82    
83  do_var_list(var_list)  void
84  object var_list;  do_var_list(object var_list)
85  {  {
86          object endp_temp;          object endp_temp;
87    
# Line 123  object var_list; Line 122  object var_list;
122          }          }
123  }  }
124    
125  Fdo(arg)  void
126  object arg;  Fdo(object arg)
127  {  {
128          object endp_temp;          object endp_temp;
129    
# Line 194  LOOP:  /* the main loop */ Line 193  LOOP:  /* the main loop */
193                  }                  }
194          }          }
195          for (bt = start;  bt<end;  bt++) {          for (bt = start;  bt<end;  bt++) {
196                  if (bt->bt_aux != bt->bt_var)            if (bt->bt_aux != bt->bt_var) {
197                          if (bt->bt_spp == Ct)              if (bt->bt_spp == Ct)
198                                  bt->bt_var->s.s_dbind = bt->bt_init;                bt->bt_var->s.s_dbind = bt->bt_init;
199                          else              else
200                                  MMcadr(bt->bt_spp) = bt->bt_init;                MMcadr(bt->bt_spp) = bt->bt_init;
201              }
202          }          }
203          goto LOOP;          goto LOOP;
204    
# Line 208  END: Line 208  END:
208          lex_env = oldlex;          lex_env = oldlex;
209  }  }
210    
211  FdoA(arg)  void
212  object arg;  FdoA(object arg)
213  {  {
214          object endp_temp;          object endp_temp;
215    
# Line 287  END: Line 287  END:
287          lex_env = oldlex;          lex_env = oldlex;
288  }  }
289    
290  Fdolist(arg)  void
291  object arg;  Fdolist(object arg)
292  {  {
293          object endp_temp;          object endp_temp;
294    
# Line 369  END: Line 369  END:
369          lex_env = oldlex;          lex_env = oldlex;
370  }  }
371    
372  Fdotimes(arg)  void
373  object arg;  Fdotimes(object arg)
374  {  {
375          object endp_temp;          object endp_temp;
376    
# Line 453  END: Line 453  END:
453          lex_env = oldlex;          lex_env = oldlex;
454  }  }
455    
456  init_iteration()  void
457    init_iteration(void)
458  {  {
459          make_special_form("LOOP", Floop);          make_special_form("LOOP", Floop);
460          make_special_form("DO", Fdo);          make_special_form("DO", Fdo);

Legend:
Removed from v.1.1.1.1  
changed lines
  Added in v.1.2

savannah-hackers-public@gnu.org
ViewVC Help
Powered by ViewVC 1.1.26