diff --git a/gcc/cccp.c b/gcc/cccp.c
index d83fd98026c536f9acf75a0467e156487287a991..a819ace2c210f1869cb61accd266094fe6a2cdb1 100644
--- a/gcc/cccp.c
+++ b/gcc/cccp.c
@@ -3740,7 +3740,7 @@ handle_directive (ip, op)
 		*cp++ = *xp++;
 		SKIP_WHITE_SPACE (xp);
 	      }
-	    } else {
+	    } else if (traditional && xp < bp) {
 	      *cp++ = *xp++;
 	    }
 	    break;