Try this in a fresh 5.9.0rc3. assume(x>0); properties(x); kill(x); properties(x); /* still there */ declare(x, integer); properties(x); kill(x); properties(x); Kill is clearly documented as removing properties.