- size_t i, len;
-
- len = initializer->compound.n_initializers;
- if (be_gas_object_file_format == OBJECT_FILE_FORMAT_MACH_O) {
- be_emit_cstring("\t.ascii \"");
- } else {
- be_emit_cstring("\t.string \"");
- len -= 1;
+ switch (c) {
+ case '"' : be_emit_cstring("\\\""); break;
+ case '\n': be_emit_cstring("\\n"); break;
+ case '\r': be_emit_cstring("\\r"); break;
+ case '\t': be_emit_cstring("\\t"); break;
+ case '\\': be_emit_cstring("\\\\"); break;
+ default :
+ if (isprint(c))
+ be_emit_char(c);
+ else
+ be_emit_irprintf("\\%03o", c);
+ break;