Changeset 3613 for trunk/src/sed/BUGS
- Timestamp:
- Sep 19, 2024, 2:34:43 AM (11 months ago)
- Location:
- trunk/src/sed
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/sed
-
Property svn:mergeinfo
set to
/vendor/sed/current merged eligible
-
Property svn:mergeinfo
set to
-
trunk/src/sed/BUGS
r599 r3613 10 10 Please do not send a bug report like this: 11 11 12 [while building frobme-1.3.4] 13 $ configure 14 12 [while building frobme-1.3.4] 13 $ configure 14 sed: file sedscr line 1: Unknown option to 's' 15 15 16 16 If sed doesn't configure your favorite package, take a few extra … … 77 77 a read-only file, and in general the `-i' option will let 78 78 one clobber protected files. This is not a bug, but rather a 79 consequence of how the Unix file system works.79 consequence of how the Unix file system works. 80 80 81 81 The permissions on a file say what can happen to the data … … 88 88 the permissions of the directory, not of the file). For this same 89 89 reason, sed will not let one use `-i' on a writeable file in a 90 read-only directory (but unbelievably nobody reports that as a91 bug...).90 read-only directory, and will break hard or symbolic links when 91 `-i' is used on such a file. 92 92 93 93 … … 104 104 105 105 `[a-z]' is case insensitive 106 `s/.*//' does not clear pattern space 106 107 107 108 You are encountering problems with locales. POSIX mandates that `[a-z]' 108 109 uses the current locale's collation order -- in C parlance, that means 109 110 strcoll(3) instead of strcmp(3). Some locales have a case insensitive 110 strcoll, others don't : one of those that have problems is Estonian.111 strcoll, others don't. 111 112 112 113 Another problem is that [a-z] tries to use collation symbols. This … … 114 115 expression matcher instead of compiling the one supplied with GNU sed. 115 116 In a Danish locale, for example, the regular expression `^[a-z]$' 116 matches the string `aa', because aais a single collating symbol that117 matches the string `aa', because `aa' is a single collating symbol that 117 118 comes after `a' and before `b'; `ll' behaves similarly in Spanish 118 119 locales, or `ij' in Dutch locales. 119 120 120 To work around these problems, which may cause bugs in shell scripts, 121 set the LC_ALL environment variable to `C', or set the locale on a 122 more fine-grained basis with the other LC_* environment variables. 121 Another common localization-related problem happens if your input stream 122 includes invalid multibyte sequences. POSIX mandates that such 123 sequences are _not_ matched by `.', so that `s/.*//' will not clear 124 pattern space as you would expect. In fact, there is no way to clear 125 sed's buffers in the middle of the script in most multibyte locales 126 (including UTF-8 locales). For this reason, GNU sed provides a `z' 127 command (for `zap') as an extension. 128 129 However, to work around both of these problems, which may cause bugs 130 in shell scripts, you can set the LC_ALL environment variable to `C', 131 or set the locale on a more fine-grained basis with the other LC_* 132 environment variables.
Note:
See TracChangeset
for help on using the changeset viewer.