1. 27 Jan, 2021 15 commits
  2. 07 Oct, 2020 6 commits
  3. 05 Oct, 2020 1 commit
  4. 15 Sep, 2020 1 commit
  5. 13 Nov, 2019 2 commits
  6. 07 Nov, 2019 5 commits
    • Nils Goroll's avatar
      a variant of the permutations.vtc tests the previous fix · c07ba7e5
      Nils Goroll authored
      permutations-error.vtc triggers the bad assertion failure fixed in the
      previous commit
      c07ba7e5
    • Nils Goroll's avatar
      take 2: fix assert_nexus for partially delivered / unpended subtrees · e493852e
      Nils Goroll authored
      The previous commit went in the right direction, but was not correct.
      
      For CHK_ORDER, we must only ever look at type != T_NEXUS and check any
      T_NEXUS by the criteria originally passed.
      
      CHK_ORDER could be stricter still, after a subtree is completed, we
      could communicate up the stricter CHK_PEND, but I do not want to
      complicate things further for an assertion.
      e493852e
    • Nils Goroll's avatar
      fix assert_nexus for partially delivered / unpended subtrees · 5297394c
      Nils Goroll authored
      we do not unpend T_NEXUS nodes, so the following situation is perfectly
      legal:
      
      	T_NEXUS
      	ST_CLOSED
      
      T_NEXUS		T_DATA
      ST_CLOSED	ST_UNPENDING
      
      the purpose of the assertion is that, if a node below a nexus is
      not yet unpended/delivered, the following need to be also, but this is
      not true for T_NEXUS.
      5297394c
    • Nils Goroll's avatar
      no more delivery special casing for empty T_DATA nodes · 58a16811
      Nils Goroll authored
      We used to set empty T_DATA nodes to delivered as soon as we encountered
      them during unpending. While it seemed like a good idea to not spend
      additional work with nodes which do not contain anything, the tree
      integrity assertions as well as set_deliver() implicitly assume that
      
      - a delivered node cannot follow an undelivered node unter a nexus and
      - once the last node under a nexus is delivered, all of the nexus is
        delivered
      
      Rather than sacrificing the sensible principle that a tree always is to
      be delivered top to bottom, left to right, weakening our assertions and
      possibly introducing new bugs when handling the resulting special cases,
      we go for the simple, clean option and do away with a special case which
      will not contribute much to overall performance anyway.
      58a16811
    • Nils Goroll's avatar
  7. 06 Nov, 2019 1 commit
  8. 05 Nov, 2019 9 commits