Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Regularize the scoping of types #1959

Merged
merged 7 commits into from
May 27, 2021
Merged

Commits on Mar 6, 2021

  1. Regularize the scoping of types

    re: Github issue Unidata#1956
    
    The function NC_compare_nc_types in libdispatch/dcopy.c uses an
    incorrect algorithm to search for types. The core of this is the
    function NC_rec_find_nc_type in libdispatch/dcopy.c. Currently
    it searchs the current group and its subtree.
    
    Additionally, the function NC4_inq_typeid in libsrc4/nc4internal.c
    has been extended to handle fully qualified names. It was originally
    designed to do this, but for some reason never completed.
    
    The NC_rec_find_nc_type algorithm has been altered to match the
    algorithm used by NC4_inq_typeid. It operates as follows.
    
    Given a file F, group G and a type T. It searches file F2, group
    G2, for another type T2 that is equivalent to T.
    
    The search order is as follows.
    1. Search G2 for a type T2 equivalent to T.
    2. Search upwards in the ancestor groups of G2 for a type T2 equivalent to T.
    3. Search the complete group tree of F2 in pre-order, breadth-first order to locate T2 equivalent to T.
    
    Also add a test case to validate algorithm: ncdump/test_scope.sh.
    
    Note, this change may cause compatibility problems, though it is
    unlikely because two different equivalent type declarations in
    one dataset is unlikely.
    DennisHeimbigner committed Mar 6, 2021
    Configuration menu
    Copy the full SHA
    0428c38 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    27b76d1 View commit details
    Browse the repository at this point in the history

Commits on Mar 8, 2021

  1. update wrt master

    DennisHeimbigner committed Mar 8, 2021
    Configuration menu
    Copy the full SHA
    d65a41c View commit details
    Browse the repository at this point in the history
  2. fix cmake error

    DennisHeimbigner committed Mar 8, 2021
    Configuration menu
    Copy the full SHA
    39f1c8b View commit details
    Browse the repository at this point in the history

Commits on Apr 6, 2021

  1. Configuration menu
    Copy the full SHA
    e20e630 View commit details
    Browse the repository at this point in the history
  2. update actions

    DennisHeimbigner committed Apr 6, 2021
    Configuration menu
    Copy the full SHA
    cb9c0c9 View commit details
    Browse the repository at this point in the history

Commits on May 27, 2021

  1. Configuration menu
    Copy the full SHA
    2c26f94 View commit details
    Browse the repository at this point in the history