#48 Moved location of TABLE definition in data.lisp

closed-rejected
Sam Steingold
cllib (10)
5
2007-06-21
2007-06-21
No

Lispworks cannot compile the current version of data.lisp because the definition of the TABLE struct comes after the use of a type specifier containing table. In the attached file, I have moved the definition of TABLE to an earlier point in the file.

Discussion

  • TABLE definition moved to earlier point in file

     
    Attachments
  • Sam Steingold
    Sam Steingold
    2007-06-21

    • status: open --> closed-fixed
     
  • Sam Steingold
    Sam Steingold
    2007-06-21

    Logged In: YES
    user_id=5735
    Originator: NO

    fixed, thanks.

     
  • Sam Steingold
    Sam Steingold
    2007-06-21

    • status: closed-fixed --> closed-rejected
     
  • Sam Steingold
    Sam Steingold
    2007-06-21

    Logged In: YES
    user_id=5735
    Originator: NO

    on a second thought, this is not a bug and I will revert my patch.
    see http://www.lisp.org/HyperSpec/Body/mac_defstruct.html:
    the type is not required to be defined: consider this code:
    (defstruct genus
    (family nil :type family)
    (species nil :type (list specie)))
    (defstruct family
    (order nil :type order)
    (geni nil :type (list genus)))
    (defstruct genus
    (families nil :type (list family)))
    there is no way to arrange the code so that all types are already defined when they are used.
    note also that even though NIL is not a valid ORDER, no warning is allowed (see above link).

    lw is broken here - they forgot that (eq CL ML) ==> NIL