2016-04-17 Tom de Vries <tom@codesourcery.com>
* pretty-print.c (pp_write_text_as_dot_label_to_stream): Simplify loop
structure.
From-SVN: r235075
+2016-04-17 Tom de Vries <tom@codesourcery.com>
+
+ * pretty-print.c (pp_write_text_as_dot_label_to_stream): Simplify loop
+ structure.
+
2016-04-17 Tom de Vries <tom@codesourcery.com>
PR other/70185
const char *p = text;
FILE *fp = pp_buffer (pp)->stream;
- while (*p)
+ for (;*p; p++)
{
+ bool escape_char;
switch (*p)
{
/* Print newlines as a left-aligned newline. */
case '\n':
- fputs ("\\l\\\n", fp);
+ fputs ("\\l", fp);
+ escape_char = true;
break;
/* A pipe is only special for record-shape nodes. */
case '|':
- if (for_record)
- fputc ('\\', fp);
- fputc (*p, fp);
+ escape_char = for_record;
break;
/* The following characters always have to be escaped
case '>':
case '"':
case ' ':
- fputc ('\\', fp);
- /* fall through */
+ escape_char = true;
+ break;
+
default:
- fputc (*p, fp);
+ escape_char = false;
break;
}
- p++;
+
+ if (escape_char)
+ fputc ('\\', fp);
+
+ fputc (*p, fp);
}
pp_clear_output_area (pp);