From: Beman Dawes (bdawes_at_[hidden])
Date: 2008-07-15 10:01:28
LoÃ¯c Joly wrote:
> Scott McMurray a Ã©crit :
>> As I recall, that used to be called canonize, but it seems to have
>> There are still references to it, though, such as "Move canonize() and
>> normalize() to convenience.hpp?" in the do list, and "Symbolic links
>> cause canonical and normal form of some paths to represent different
>> files or directories. For example, given the directory hierarchy
>> /a/b/c, with a symbolic link in /a named x pointing to b/c, then
>> under POSIX Pathname Resolution rules a path of "/a/x/.." should
>> resolve to "/a/b". If "/a/x/.." were first normalized to "/a", it
>> would resolve incorrectly. (Case supplied by Walter Landry.)" in the
>> design rationale.
> So, if I understand correctly, there used to be a canonize() function,
> but since it provided wrong results for corner cases, it was removed. Is
> that so ?
It has been awhile, but I think that is correct.
The canonize() function is actually still supplied but is deprecated.