
At 10:20 AM 10/2/2004, Walter Landry wrote:
If I so desired, I could mount HFS+, BeFS, JFS, FFS, BFS, ADFS, FAT, VFAT, NTFS, ext2/3, XFS, UMSDOS, Reiserfs, ISO 9660, and UDF on my machine. Which one is "native"?
Any of those can be "native", since "native" refers to the grammar used by paths rather than which type of file system is mounted.
If the intent is make sure that all paths can actually be accessed on the machine, then you don't need to do any checks. The operating system does that for you. If you are not actually opening files, then perhaps you don't need this check anyway?
That's correct, however, some applications wish to check cases where files are not being opened, or are only opened on certain conditions.
Besides, doing any checking implies a (perhaps mild) performance hit,
That's true, although the hit is so minor it is not nearly as important a consideration as the other points you bring up.
and I don't want to have to jump through hoops to get rid of something I don't need.
Either of those would be breaking changes for some current programs which
use the library, and we would have to figure a way to deal with that.
A compile-time option? Users who want the old behavior can compile with BOOST_FILESYSTEM_PORTABLE_DEFAULT defined.
That would help the transition. Also, programs which currently change the default to "no_check" would not absolutely have to be changed; the line of code changing the default becomes redundant but is functionally harmless. Thanks, --Beman