gcl-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

RE: [Gcl-devel] Windows - Instability in universe.lsp


From: Mike Thomas
Subject: RE: [Gcl-devel] Windows - Instability in universe.lsp
Date: Thu, 25 Mar 2004 09:43:13 +1000

Hi Camm.

Thanks.

| p pp(p->p.p_name)
| frame 2
| p pp(form)
| frame 3
| p pp(form)
| frame 5
| p pp(form
| frame 7
| p pp(form)

| Can't yet reproduce your place in the stack.

To reproduce assuming you can on Linux (I do admit it is probably just
Windows, but live in hope):


  1. cd to ansi-tests

  2. gdb ../unixport/saved_ansi_gcl.exe

  3. At gdb prompt: r

  4. Open universe.lsp in emacs and copy and paste everything starting from:

   "(defparameter *condition-types*"

 down to the line just before:

   "(defparameter *hash-tables*"

   5. When that has all been loaded it should give an error prompt with none
of the usual stuff about "press 1 for this press 2 for that".

   6. Type 1 and hit enter

   7. Type 1 and hit enter.

   8. You should now be in the debugger.

Here is the result of your request for more gdb output.  Frame 7 had no form
argument so I did 6 an 8:

=============================================================

(gdb) p pp(p->p.p_name)
NIL$6 = void
(gdb)
NIL$7 = void
(gdb) p p->p.p_name
$8 = 0x651a90
(gdb) frame 2
#2  0x0041f487 in eval (form=0x651a90) at eval.c:1090
1090              (*(x)->cf.cf_self)();
(gdb) p pp(form)
NIL$9 = void
(gdb) frame 3
#3  0x0041f40a in eval (form=0x102e26a8) at eval.c:1077
1077                    eval(MMcar(form));
(gdb) p pp(form)
((INTERN a CL-TEST) (INTERN  CL-TEST)
                (APPEND (AND (CODE-CHAR 0)
                             (LIST (INTERN
                                    (MAKE-STRING 1 INITIAL-ELEMENT
                                     (CODE-CHAR 0))
                                    CL-TEST)))
                        (AND (CODE-CHAR 0)
                             (LET* ((S
                                     (MAKE-STRING 10 INITIAL-ELEMENT
                                      (CODE-CHAR 0)))
                                    (S2 (COPY-SEQ S))
                                    (S3 (COPY-SEQ S)))
                               (SETF (SUBSEQ S 3 4) a)
                               (SETF (SUBSEQ S2 4 5) a)
                               (SETF (SUBSEQ S3 4 5) a)
                               (SETF (SUBSEQ S3 7 8) b)
                               (LIST (INTERN S CL-TEST)
                                     (INTERN S2 CL-TEST)
                                     (INTERN S3 CL-TEST))))))$10 = void
(gdb) frame 5
#5  0x0040d506 in Fsetq (form=0x102e2570) at assignment.c:100
100                             setq(MMcar(form),ans=Ieval(MMcadr(form)));
(gdb) p pp(form)
(*CL-TEST-SYMBOLS*
                                                              (LIST*
                                                               (INTERN
                                                                a
                                                                CL-TEST)
                                                               (INTERN
                                                                CL-TEST)
                                                               (APPEND
                                                                (AND
                                                                 (CODE-CHAR
                                                                  0)
                                                                 (LIST
                                                                  (INTERN

(MAKE-STRING
                                                                    1

INITIAL-ELEM
ENT

(CODE-CHAR
                                                                     0))

CL-TEST)))
                                                                (AND
                                                                 (CODE-CHAR
                                                                  0)
                                                                 (LET*
                                                                  ((S

(MAKE-STRING

                                                                     10

INITIAL-ELE
MENT

(CODE-CHAR
                                                                      0)))
                                                                   (S2

(COPY-SEQ
                                                                     S))
                                                                   (S3

(COPY-SEQ
                                                                     S)))
                                                                   (SETF
                                                                    (SUBSEQ
                                                                     S
                                                                     3
                                                                     4)
                                                                    a)
                                                                   (SETF
                                                                    (SUBSEQ
                                                                     S2
                                                                     4
                                                                     5)
                                                                    a)
                                                                   (SETF
                                                                    (SUBSEQ
                                                                     S3
                                                                     4
                                                                     5)
                                                                    a)
                                                                   (SETF
                                                                    (SUBSEQ
                                                                     S3
                                                                     7
                                                                     8)
                                                                    b)
                                                                   (LIST
                                                                    (INTERN
                                                                     S

CL-TEST)
                                                                    (INTERN
                                                                     S2

CL-TEST)
                                                                    (INTERN
                                                                     S3

CL-TEST))))
)))$11 = void
(gdb) frame 7
#7  0x0046175a in Fprogn (body=0x102e251c) at prog.c:248
248                             eval(MMcar(body));
(gdb) p pp(form)
No symbol "form" in current context.
(gdb) frame 6
#6  0x0041f217 in eval (form=0x102e257c) at eval.c:1037
1037                    (*fun->s.s_sfdef)(MMcdr(form));
(gdb) p pp(form)
(SETQ

    *CL-TEST-SYMBOLS*

    (LIST*

     (INTERN

      a

      CL-TEST)

     (INTERN



      CL-TEST)

     (APPEND

      (AND

       (CODE-CHAR

        0)

       (LIST

        (INTERN

         (MAKE-STRING

          1

          INITIAL-ELEMENT

          (CODE-CHAR

           0))

         CL-TEST)))

      (AND

       (CODE-CHAR

        0)

       (LET*

        ((S

          (MAKE-STRING

           10

           INITIAL-ELEMENT

           (CODE-CHAR

            0)))

         (S2

          (COPY-SEQ

           S))

         (S3

          (COPY-SEQ

           S)))

         (SETF

          (SUBSEQ

           S

           3

           4)

          a)

         (SETF

          (SUBSEQ

           S2

           4

           5)

          a)

         (SETF

          (SUBSEQ

           S3

           4

           5)

          a)

         (SETF

          (SUBSEQ

           S3

           7

           8)

          b)

         (LIST

          (INTERN

           S

           CL-TEST)

          (INTERN

           S2

           CL-TEST)

          (INTERN

           S3

           CL-TEST)))))))$12 = void
(gdb) frame 8
#8  0x0041f217 in eval (form=0x102e2534) at eval.c:1037
1037                    (*fun->s.s_sfdef)(MMcdr(form));
(gdb) p pp(form)
(PROGN

                           (*MAKE-SPECIAL

                            '*CL-TEST-SYMBOLS*)

                           (SETQ

                            *CL-TEST-SYMBOLS*

                            (LIST*

                             (INTERN

                              a

                              CL-TEST)

                             (INTERN



                              CL-TEST)

                             (APPEND

                              (AND

                               (CODE-CHAR

                                0)

                               (LIST

                                (INTERN

                                 (MAKE-STRING

                                  1

                                  INITIAL-ELEMENT

                                  (CODE-CHAR

                                   0))

                                 CL-TEST)))

                              (AND

                               (CODE-CHAR

                                0)

                               (LET*

                                ((S

                                  (MAKE-STRING

                                   10

                                   INITIAL-ELEMENT

                                   (CODE-CHAR

                                    0)))

                                 (S2

                                  (COPY-SEQ

                                   S))

                                 (S3

                                  (COPY-SEQ

                                   S)))

                                 (SETF

                                  (SUBSEQ

                                   S

                                   3

                                   4)

                                  a)

                                 (SETF

                                  (SUBSEQ

                                   S2

                                   4

                                   5)

                                  a)

                                 (SETF

                                  (SUBSEQ

                                   S3

                                   4

                                   5)

                                  a)

                                 (SETF

                                  (SUBSEQ

                                   S3

                                   7

                                   8)

                                  b)

                                 (LIST

                                  (INTERN

                                   S

                                   CL-TEST)

                                  (INTERN

                                   S2

                                   CL-TEST)

                                  (INTERN

                                   S3

                                   CL-TEST)))))))

                           '*CL-TEST-SYMBOLS*)$13 = void
(gdb)
================================================================







reply via email to

[Prev in Thread] Current Thread [Next in Thread]