1. 21 Jan, 2014 3 commits
    • Robert P. Goldman's avatar
      Raise a continuable error when instantiating an unpatched OPERATION. · 8fa22cd5
      Robert P. Goldman authored
      The behavior of OPERATION has changed: previously it would act roughly like
      LOAD-OP, and automatically have dependencies, but now that behavior has been
      removed in a clean-up. In order to support programmers, we attempt to detect
      programmer-defined OPERATION subclasses and signal an error if we believe they
      are unpatched.
      
      The new dependency-handling is implemented in the classes DOWNWARD-OPERATION,
      UPWARD-OPERATION, SIDEWAY-OPERATION, SELFWARD-OPERATION, and the newly-added
      NON-PROPAGATING-OPERATION.
      
      To detect unpatched OPERATION classes, when we are instantiating an OPERATION,
      we check to make sure it has one of the above classes as a superclass.  If it
      does not, we raise a continuable error.  This is done in an INITIALIZE-INSTANCE
      :BEFORE method on OPERATION. We considered trying to detect the definition of
      OPERATION subclasses, but because the MOP is not standard, that approach was
      rejected as infeasible.
      
      Add NON-PROPAGATING-OPERATION as superclass where needed.
      
      Further checks and some documentation.
      
      Thanks to Fare for advice.
      
      Check that no OPERATION is both propagating and non-propagating.
      
      Thanks to Fare for the suggestion.
      8fa22cd5
    • Robert P. Goldman's avatar
      Method for detecting code which needs to be patched for new OPERATIONs. · 32dad5ee
      Robert P. Goldman authored
      Added INITIALIZE-INSTANCE that checks for operations that have no
      specified dependency propagations.
      Also added NON-PROPAGATING-OPERATION as a way to specify that an
      OPERATION subclass /intentionally/ performs no dependency propagation.
      32dad5ee
    • Robert P. Goldman's avatar
      Refined the earlier warning about BUNDLE-OP. · 989670e5
      Robert P. Goldman authored
      It turns out it's only the BASIC-FASL-OP, not all the BUNDLE-OPs, that's
      broken on Mac OSX with ABCL and ECL.  Refined the check.
      989670e5
  2. 20 Jan, 2014 4 commits
  3. 18 Jan, 2014 2 commits
  4. 16 Jan, 2014 2 commits
  5. 15 Jan, 2014 2 commits
  6. 14 Jan, 2014 3 commits
  7. 09 Jan, 2014 4 commits
  8. 08 Jan, 2014 12 commits
  9. 07 Jan, 2014 8 commits