From c78896f0837e0970add4584eb580a7158ce1ad34 Mon Sep 17 00:00:00 2001 From: "Loren J. Rittle" Date: Tue, 17 Aug 1999 18:32:32 +0000 Subject: [PATCH] Do not trash single-line C-style comments From-SVN: r28735 --- gcc/ChangeLog | 5 +++++ gcc/fixinc/fixincl.sh | 2 +- gcc/fixinc/fixincl.x | 3 ++- gcc/fixinc/inclhack.def | 4 +++- gcc/fixinc/inclhack.sh | 3 ++- 5 files changed, 13 insertions(+), 4 deletions(-) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 0758117e34d..c2b03a255c4 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +Tue Aug 17 01:40:54 1999 Loren Rittle + + * fixinc/inclhack.def (no_double_slash): Do not trash single-line + C-style comments. Do not lose the character before double slash. + Mon Aug 16 18:08:22 EDT 1999 Andrew MacLeod * basic-block.h (struct edge_list): Stucture to maintain a vector diff --git a/gcc/fixinc/fixincl.sh b/gcc/fixinc/fixincl.sh index 9e9064e579e..83d66919f0b 100755 --- a/gcc/fixinc/fixincl.sh +++ b/gcc/fixinc/fixincl.sh @@ -6,7 +6,7 @@ # files which are fixed to work correctly with ANSI C and placed in a # directory that GNU C will search. # -# This script contains 105 fixup scripts. +# This script contains 106 fixup scripts. # # See README-fixinc for more information. # diff --git a/gcc/fixinc/fixincl.x b/gcc/fixinc/fixincl.x index 8fd28805f9d..d17614b9859 100644 --- a/gcc/fixinc/fixincl.x +++ b/gcc/fixinc/fixincl.x @@ -709,7 +709,8 @@ tTestDesc aNo_Double_SlashTests[] = { */ const char* apzNo_Double_SlashPatch[] = { "sed", "-e", "s,^//.*$,,", - "-e", "s,[^:]//[^\"].*$,,", + "-e", "s,\\(/\\*.*\\)//\\(.*\\*/\\),\\1/ /\\2,g", + "-e", "s,\\([^:]\\)//[^\"].*$,\\1,", (char*)NULL }; /* * * * * * * * * * * * * * * * * * * * * * * * * * diff --git a/gcc/fixinc/inclhack.def b/gcc/fixinc/inclhack.def index 17da222cbae..fbdc737a855 100644 --- a/gcc/fixinc/inclhack.def +++ b/gcc/fixinc/inclhack.def @@ -432,12 +432,14 @@ fix = { /* * Test that the file-to-fix does not from a C++ directory * Also, only accept double slashes that are not part of URL's + * and do not appear to be within a single-line C-style comment * and are not the end of a quoted string. */ test = ' -z "`echo ${file} | egrep \'(CC|cxx|\+\+)/\'`"'; select = '(^|[^:])//[^"*]'; sed = 's,^//.*$,,'; - sed = 's,[^:]//[^"].*$,,'; + sed = 's,\(/\*.*\)//\(.*\*/\),\1/ /\2,g'; + sed = 's,\([^:]\)//[^"].*$,\1,'; }; diff --git a/gcc/fixinc/inclhack.sh b/gcc/fixinc/inclhack.sh index 292c9679106..457fc9702c8 100755 --- a/gcc/fixinc/inclhack.sh +++ b/gcc/fixinc/inclhack.sh @@ -844,7 +844,8 @@ _EOF_ else infile=${DESTFILE} ; fi sed -e 's,^//.*$,,' \ - -e 's,[^:]//[^"].*$,,' \ + -e 's,\(/\*.*\)//\(.*\*/\),\1/ /\2,g' \ + -e 's,\([^:]\)//[^"].*$,\1,' \ < $infile > ${DESTDIR}/fixinc.tmp rm -f ${DESTFILE} mv -f ${DESTDIR}/fixinc.tmp ${DESTFILE} -- 2.30.2