From: Richard Kenner Date: Thu, 1 Sep 1994 23:17:40 +0000 (-0400) Subject: (make_definition): Don't dump core when given an unterminated string X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=1a6e3d5275c3ca70423631b6679eae1cc8b6681f;p=gcc.git (make_definition): Don't dump core when given an unterminated string in a -D option. From-SVN: r8013 --- diff --git a/gcc/cccp.c b/gcc/cccp.c index aa564fdfe90..bcc0edc6d74 100644 --- a/gcc/cccp.c +++ b/gcc/cccp.c @@ -9289,7 +9289,18 @@ make_definition (str, op) p++; q = &buf[p - str]; while (*p) { - if (*p == '\\' && p[1] == '\n') + if (*p == '\"' || *p == '\'') { + int unterminated = 0; + U_CHAR *p1 = skip_quoted_string (p, p + strlen (p), 0, + NULL_PTR, NULL_PTR, &unterminated); + if (unterminated) + return; + while (p != p1) + if (*p == '\\' && p[1] == '\n') + p += 2; + else + *q++ = *p++; + } else if (*p == '\\' && p[1] == '\n') p += 2; /* Change newline chars into newline-markers. */ else if (*p == '\n')