 
                            ...
| 
 | ! |  "  |  #  |  $  |  %  | & | ' | ( | ) | * | + | , | - | . | / | ||
| 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | : | ; | < | = | > | ? | ||
| @ | A |  B  | C | D | E | F | G | H | I |  J  | K | L | M | N | O | ||
| <ac:structured-macro ac:name="unmigrated-wiki-markup" ac:schema-version="1" ac:macro-id="f589d7ad004270d2-0c69e6ef-498a4770-9397ab10-74b74386ad5ae4015d2430e5"><ac:plain-text-body><![CDATA[ | P | Q | R | S | T | U | V | W | X | Y | Z | [ | \ | ] | ^ | _ | ]]></ac:plain-text-body></ac:structured-macro> | 
| ' |  a  | b | c | d | e | f | g | h | i | j | k | l | m | n | o | ||
| p | q | r | s | t | u | v | w | x | y | z | { | | | } | ~ | 
...
| Code Block | ||
|---|---|---|
| 
 | ||
| 
#include <fcntl.h> 
#include <sys/stat.h> 
 
int main() { 
   char *file_name = "»£???«"; 
   mode_t mode = S_IRUSR | S_IWUSR | S_IRGRP | S_IROTH; 
 
   int fd = open(file_name, O_CREAT | O_EXCL | O_WRONLY, mode); 
   if (fd == -1) { 
      /* Handle Error */ 
   }  
} 
 | 
Clearly this can cause problems.
| Code Block | 
|---|
| % ls a.out MSC09.c ?????? | 
Compliant Solution
Use a descriptive file name, containing only the subset of ASCII described above.
...