Hm, you're right, we should check whether we have the right type of reference.

I was wondering whether it would be worth it to make direct and symbolic references different classes; probably too much hassle, though.