X
PrevPrev Go to previous topic
NextNext Go to next topic
Last Post 21 Oct 2021 08:30 AM by  Ben Castellani
List() in 8.8.1
 1 Replies
Sort:
You are not authorized to post a reply.
Author Messages

Richard Ketcham



New Member


Posts:
New Member


--
19 Oct 2021 06:10 PM
    After updating to IDL 8.8.1, I found that one of my structures now generates an error. Here's an abbreviated version:
    struct = {B3D_PSFAccumStats, $
    entryStack : List()
    }
    When I try to run my program, I get the error:
    % LIST::RESET: This method was deprecated in IDL 8.8.1, please refactor your code to not call it.
    Is there a different way to now declare this so it can be in a structure, or some other workaround?

    Ben Castellani



    Basic Member


    Posts:130
    Basic Member


    --
    21 Oct 2021 08:30 AM
    You can still certainly include a LIST in a structure as you show here. However, some changes were made to the LIST, HASH, DICTIONARY and ORDEREDHASH classes in IDL 8.8.1 to improve performance. You may encounter errors like this in your code if you RESTORE an IDL SAV file from a prior version of IDL which contained the legacy class definitions of any of these data types.

    To fix this issue, you should use the new SAVEFILE_CLEANUP routine shipped with IDL 8.8.1 to "clean" the legacy SAV files of their now error-inducing routines: https://www.l3harrisgeospatial.com/docs/SAVEFILE_CLEANUP.html

    Alternatively, simply not restoring the bad SAV files should circumvent the error.
    You are not authorized to post a reply.