Recent builds of csh/tcsh have a bug where entering a symlink does not honor the logical path. Instead, it adopts the physical path: % cd /tmp % ln -s /usr/local . % cd local % pwd /usr/local % cd .. % pwd /usr Contrast this with sh: $ cd /tmp $ cd local $ pwd /tmp/local $ cd .. $ pwd /tmp This behavior started in the last 3-6 months I would guess.