persist

Eine Konstante, die als const Referenz zurück gegeben wird, bleibt bestehen. Sie darf nicht variable konstruiert werden.

static Dependency::Collection const EmptyDepCollection;
Dependency::Collection const & getTargetFiles() const
{
  BuildJob * job = getBuildJob();
  
  if( !job )
    return EmptyDepCollection;
}

wird zu

getTargetFiles is code as Dependency::Collection ref :=
{
  job = getBuildJob();
  
  if( !job )
    return {} persist;  // Dies ist eine Konstante, sie wird statisch angelegt. 
}