Changeset 8611


Ignore:
Timestamp:
02/20/05 14:38:59 (16 years ago)
Author:
piso
Message:

StackFrame?(LispObject operator, LispObject[] args): copy argument vector.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/j/src/org/armedbear/lisp/LispThread.java

    r8503 r8611  
    33 *
    44 * Copyright (C) 2003-2005 Peter Graves
    5  * $Id: LispThread.java,v 1.73 2005-02-08 16:41:20 piso Exp $
     5 * $Id: LispThread.java,v 1.74 2005-02-20 14:38:59 piso Exp $
    66 *
    77 * This program is free software; you can redistribute it and/or
     
    434434            second = null;
    435435            third = null;
    436             this.args = args;
     436            this.args = new LispObject[args.length];
     437            for (int i = args.length; i-- > 0;)
     438                this.args[i] = args[i];
    437439        }
    438440
     
    446448            LispObject list = NIL;
    447449            if (args != null) {
    448                 for (int j = args.length; j-- > 0;)
    449                     list = new Cons(args[j], list);
     450                for (int i = 0; i < args.length; i++)
     451                    list = list.push(args[i]);
    450452            } else {
    451453                do {
     
    463465                        break;
    464466                } while (false);
    465                 list = list.nreverse();
    466             }
     467            }
     468            list = list.nreverse();
    467469            if (operator instanceof Functional && ((Functional)operator).getLambdaName() != null)
    468470                list = list.push(((Functional)operator).getLambdaName());
Note: See TracChangeset for help on using the changeset viewer.