diff options
author | ak <ak@138bc75d-0d04-0410-961f-82ee72b054a4> | 2010-10-18 09:39:15 +0000 |
---|---|---|
committer | ak <ak@138bc75d-0d04-0410-961f-82ee72b054a4> | 2010-10-18 09:39:15 +0000 |
commit | 210263ee13a4e0bd9513afb9d6568d21a8808ede (patch) | |
tree | 16cee18700712e464cb0cb85002ccb6b766f2c8f | |
parent | 66741d8babae57c5d8bcd6aa468283ec5d46e967 (diff) | |
download | gcc-210263ee13a4e0bd9513afb9d6568d21a8808ede.tar.gz |
Remove gccbug
gcc/
2010-10-18 Andi Kleen <ak@linux.intel.com>
PR other/43448
* gccbug.in: Remove.
* Makefile.in (GCCBUG_INSTALL_NAME, gccbug): Remove
(doc, distclean, install-common): Remove reference to gccbug.
* configure: Regenerate.
* configure.ac (all_outputs): Remove gccbug.
* doc/configfiles.texi: Remove references to gccbug.
* doc/sourcebuild.texi: Dito.
contrib/
2010-10-18 Andi Kleen <ak@linux.intel.com>
* gccbug.el: Remove.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@165613 138bc75d-0d04-0410-961f-82ee72b054a4
-rw-r--r-- | contrib/ChangeLog | 4 | ||||
-rw-r--r-- | contrib/gccbug.el | 84 | ||||
-rw-r--r-- | gcc/ChangeLog | 11 | ||||
-rw-r--r-- | gcc/Makefile.in | 9 | ||||
-rwxr-xr-x | gcc/configure | 2 | ||||
-rw-r--r-- | gcc/configure.ac | 2 | ||||
-rw-r--r-- | gcc/doc/configfiles.texi | 3 | ||||
-rw-r--r-- | gcc/doc/sourcebuild.texi | 3 | ||||
-rwxr-xr-x | gcc/gccbug.in | 558 |
9 files changed, 20 insertions, 656 deletions
diff --git a/contrib/ChangeLog b/contrib/ChangeLog index c2c371cce9f..4d46888e6ae 100644 --- a/contrib/ChangeLog +++ b/contrib/ChangeLog @@ -1,3 +1,7 @@ +2010-10-18 Andi Kleen <ak@linux.intel.com> + + * gccbug.el: Remove. + 2010-10-12 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE> * gcc_update: Run $GCC_HG pull and update separately. diff --git a/contrib/gccbug.el b/contrib/gccbug.el deleted file mode 100644 index 55821e5e6c5..00000000000 --- a/contrib/gccbug.el +++ /dev/null @@ -1,84 +0,0 @@ -;;; gccbug.el --- forward bug reports to gnats -;; (C) 2000 Free Software Foundation -;; Written by Martin v. Löwis -;; Usage: -;; In rmail, bind a key to rmail-gccbug-reply, e.g. -;; (require 'rmail) -;; (require 'gccbug) -;; (define-key rmail-mode-map "R" 'rmail-gccbug-reply) -;; Then, when reviewing a report, type R to create a gnats-formatted -;; message. - -(provide 'gccbug) - -(defun gccbug-reply () - (interactive) - (let ((orig-yank-prefix mail-yank-prefix)) - (insert ">Submitter-Id: net\n") - (insert ">Originator: \n") - (insert ">Confidential: no\n") - (insert ">Synopsis: ") - (save-excursion - (mail-subject) - (let ((stop (point))) - (re-search-backward "Re: ") - (copy-region-as-kill (match-end 0) stop))) - (yank) - (insert "\n") - (insert ">Severity: serious\n") - (insert ">Priority: medium\n") - (insert ">Category: \n") - (insert ">Class: \n") - ;(insert ">State: analyzed\n") - (insert ">Release: 2.95.2\n") - (insert ">Environment:\n") - (insert ">Description:\n") - (set 'mail-yank-prefix nil) - (set 'mail-yank-ignored-headers - "^via:\\|^mail-from:\\|^origin:\\|^status:\\|^remailed\\|^received:\\|^summary-line:\\|^to:\\|^subject:\\|^in-reply-to:\\|^return-path:\\|^X-.*:\\|^User-Agent:\\|^MIME-Version:\\|^Content-.*:\\|^List-.*:\\|C[Cc]:\\|^Precedence:\\|^Sender:\\|^Mailing-List:\\|^Delivered-To:\\|^>From") - (mail-yank-original t) - (set 'mail-yank-prefix orig-yank-prefix) - ; Copy From: field to Originator: - (re-search-backward "From: ") - (let ((beg (match-end 0))) - (end-of-line) - (kill-region beg (point))) - (re-search-backward ">Originator: ") - (goto-char (match-end 0)) - (yank) - ; Kill From: line - (re-search-forward "From:") - (beginning-of-line) - (kill-line 1) - ; Replace Message-ID: with Original-Message-ID - (beginning-of-buffer) - (re-search-forward "Message-ID: .*") - (replace-match "Original-\\&") - ; Replace To: line, adding recipient to Notify list - (mail-to) - (re-search-backward "To: ") - (replace-match "To: gcc-gnats@gcc.gnu.org\nX-GNATS-Notify: ") - ; add additional fields - (end-of-buffer) - (insert ">How-To-Repeat: \n>Fix: \n") - ; See whether an Organization: is present - (let ((org (re-search-backward "Organization:.*" nil t))) - (if org - (progn - (kill-region (point) (match-end 0)) - (re-search-backward ">Confidential") - (insert ">") - (yank) - (insert "\n")))) -; This kills CC: lines, but rmail-reply below won't create any -; (mail-cc) -; (beginning-of-line) -; (kill-line 1) - )) - -(defun rmail-gccbug-reply () - (interactive) - (rmail-toggle-header 0) - (rmail-reply t) - (gccbug-reply)) - diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 166585766b3..5dcff9cfd7e 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,14 @@ +2010-10-18 Andi Kleen <ak@linux.intel.com> + + PR other/43448 + * gccbug.in: Remove. + * Makefile.in (GCCBUG_INSTALL_NAME, gccbug): Remove + (doc, distclean, install-common): Remove reference to gccbug. + * configure: Regenerate. + * configure.ac (all_outputs): Remove gccbug. + * doc/configfiles.texi: Remove references to gccbug. + * doc/sourcebuild.texi: Dito. + 2010-10-18 Jakub Jelinek <jakub@redhat.com> PR middle-end/46019 diff --git a/gcc/Makefile.in b/gcc/Makefile.in index fd27cf74037..898e96224fb 100644 --- a/gcc/Makefile.in +++ b/gcc/Makefile.in @@ -780,7 +780,6 @@ GCC_INSTALL_NAME := $(shell echo gcc|sed '$(program_transform_name)') GCC_TARGET_INSTALL_NAME := $(target_noncanonical)-$(shell echo gcc|sed '$(program_transform_name)') CPP_INSTALL_NAME := $(shell echo cpp|sed '$(program_transform_name)') GCOV_INSTALL_NAME := $(shell echo gcov|sed '$(program_transform_name)') -GCCBUG_INSTALL_NAME := $(shell echo gccbug|sed '$(program_transform_name)') # Setup the testing framework, if you have one EXPECT = `if [ -f $${rootme}/../expect/expect ] ; then \ @@ -1727,9 +1726,6 @@ $(srcdir)/configure: @MAINT@ $(srcdir)/configure.ac $(srcdir)/aclocal.m4 $(srcdir)/aclocal.m4 : @MAINT@ $(aclocal_deps) (cd $(srcdir) && $(ACLOCAL) $(ACLOCAL_AMFLAGS)) -gccbug: $(srcdir)/gccbug.in - CONFIG_FILES=gccbug CONFIG_HEADERS= ./config.status - # cstamp-h.in controls rebuilding of config.in. # It is named cstamp-h.in and not stamp-h.in so the mostlyclean rule doesn't # delete it. A stamp file is needed as autoheader won't update the file if @@ -4188,7 +4184,7 @@ stmp-fixinc: gsyslimits.h macro_list fixinc_list \ # # Remake the info files. -doc: $(BUILD_INFO) $(GENERATED_MANPAGES) gccbug +doc: $(BUILD_INFO) $(GENERATED_MANPAGES) INFOFILES = doc/cpp.info doc/gcc.info doc/gccint.info \ doc/gccinstall.info doc/cppinternals.info @@ -4451,7 +4447,7 @@ distclean: clean lang.distclean -cd testsuite && rm -f *.out *.gcov *$(coverageexts) -rm -rf ${QMTEST_DIR} stamp-qmtest -rm -f cxxmain.c - -rm -f gccbug .gdbinit configargs.h + -rm -f .gdbinit configargs.h -rm -f gcov.pod # Delete po/*.gmo only if we are not building in the source directory. -if [ ! -f po/exgettext ]; then rm -f po/*.gmo; fi @@ -4574,7 +4570,6 @@ install-common: native lang.install-common installdirs rm -f $(DESTDIR)$(bindir)/$(GCOV_INSTALL_NAME)$(exeext); \ $(INSTALL_PROGRAM) gcov$(exeext) $(DESTDIR)$(bindir)/$(GCOV_INSTALL_NAME)$(exeext); \ fi - $(INSTALL_SCRIPT) gccbug $(DESTDIR)$(bindir)/$(GCCBUG_INSTALL_NAME) # Install the driver program as $(target_noncanonical)-gcc, # $(target_noncanonical)-gcc-$(version) diff --git a/gcc/configure b/gcc/configure index bceffd696a9..6f48325c3f8 100755 --- a/gcc/configure +++ b/gcc/configure @@ -25395,7 +25395,7 @@ lang_tree_files= # `language' must be a single word so is spelled singularly. all_languages= all_compilers= -all_outputs='Makefile gccbug' +all_outputs='Makefile' # List of language makefile fragments. all_lang_makefrags= # Additional files for gengtype diff --git a/gcc/configure.ac b/gcc/configure.ac index 1300f82b07d..a3cbe979129 100644 --- a/gcc/configure.ac +++ b/gcc/configure.ac @@ -4358,7 +4358,7 @@ lang_tree_files= # `language' must be a single word so is spelled singularly. all_languages= all_compilers= -all_outputs='Makefile gccbug' +all_outputs='Makefile' # List of language makefile fragments. all_lang_makefrags= # Additional files for gengtype diff --git a/gcc/doc/configfiles.texi b/gcc/doc/configfiles.texi index 3650179cc87..d122225f38e 100644 --- a/gcc/doc/configfiles.texi +++ b/gcc/doc/configfiles.texi @@ -33,9 +33,6 @@ used. @item @file{cstamp-h} is used as a timestamp. @item -@file{gccbug}, a script for reporting bugs in GCC, is constructed from -@file{gccbug.in}. -@item If a language @file{config-lang.in} file (@pxref{Front End Config, , The Front End @file{config-lang.in} File}) sets @code{outputs}, then the files listed in @code{outputs} there are also generated. diff --git a/gcc/doc/sourcebuild.texi b/gcc/doc/sourcebuild.texi index 1f981e74606..cdf63e0338b 100644 --- a/gcc/doc/sourcebuild.texi +++ b/gcc/doc/sourcebuild.texi @@ -532,8 +532,7 @@ following are also necessary: @itemize @bullet @item At least one Bugzilla component for bugs in that front end and runtime -libraries. This category needs to be mentioned in -@file{gcc/gccbug.in}, as well as being added to the Bugzilla database. +libraries. This category needs to be added to the Bugzilla database. @item Normally, one or more maintainers of that front end listed in @file{MAINTAINERS}. diff --git a/gcc/gccbug.in b/gcc/gccbug.in deleted file mode 100755 index dcec94bc091..00000000000 --- a/gcc/gccbug.in +++ /dev/null @@ -1,558 +0,0 @@ -#!/bin/sh -# Submit a problem report to a GNATS site. -# Copyright (C) 1993, 2000, 2001, 2002, 2003, 2007 Free Software Foundation, Inc. -# Contributed by Brendan Kehoe (brendan@cygnus.com), based on a -# version written by Heinz G. Seidl (hgs@cygnus.com). -# -# This file is part of GNU GNATS. -# -# GNU GNATS is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 3, or (at your option) -# any later version. -# -# GNU GNATS is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with GNU GNATS; see the file COPYING3. If not see -# <http://www.gnu.org/licenses/>. - -# The version of this send-pr. -VERSION=3.113 - -# The submitter-id for your site. -SUBMITTER=net - -# The default mail address for PR submissions. -GNATS_ADDR=gcc-gnats@gcc.gnu.org - -# The default release for this host. -# We have to guess at what program_transform_name might have done. -# "sed 1q" because neither "head -1" nor "head -n 1" is universal, argh. - -DEFAULT_GCC="`echo $0 | sed -e 's/bug//'`" -DEFAULT_RELEASE="`$DEFAULT_GCC --version | sed 1q`" - -# The default organization. -DEFAULT_ORGANIZATION= - -# What mailer to use. This must come after the config file, since it is -# host-dependent. -# Copied from cvsbug -if [ -f /usr/sbin/sendmail ]; then - MAIL_AGENT="/usr/sbin/sendmail -oi -t" -else - MAIL_AGENT="/usr/lib/sendmail -oi -t" -fi -MAILER=`echo $MAIL_AGENT | sed -e 's, .*,,'` -if [ ! -f "$MAILER" ] ; then - echo "$COMMAND: Cannot file mail program \"$MAILER\"." - echo "$COMMAND: Please fix the MAIL_AGENT entry in the $COMMAND file." - exit 1 -fi - - -# How to read the passwd database. -PASSWD="cat /etc/passwd" - -ECHON=bsd - -if [ $ECHON = bsd ] ; then - ECHON1="echo -n" - ECHON2= -elif [ $ECHON = sysv ] ; then - ECHON1=echo - ECHON2='\c' -else - ECHON1=echo - ECHON2= -fi - -# - -if [ -z "$TMPDIR" ]; then - TMPDIR=/tmp -else - if [ "`echo $TMPDIR | grep '/$'`" != "" ]; then - TMPDIR="`echo $TMPDIR | sed -e 's,/$,,'`" - fi -fi - -if [ @have_mktemp_command@ = yes ]; then - TEMP0=`mktemp $TMPDIR/poXXXXXX` || exit 1 - TEMP=`mktemp $TMPDIR/pXXXXXX` || exit 1 - BAD=`mktemp $TMPDIR/pbadXXXXXX` || exit 1 - REF=`mktemp $TMPDIR/pfXXXXXX` || exit 1 - REMOVE_TEMP="rm -f $TEMP0 $TEMP $BAD $REF" -else - TEMPD=$TMPDIR/pd$$ - TEMP0=$TEMPD/po$$ - TEMP=$TEMPD/p$$ - BAD=$TEMPD/pbad$$ - REF=$TEMPD/pf$$ - mkdir $TEMPD || exit 1 - REMOVE_TEMP="rm -rf $TEMPD" -fi - -# find a user name -if [ "$LOGNAME" = "" ]; then - if [ "$USER" != "" ]; then - LOGNAME="$USER" - else - LOGNAME="UNKNOWN" - fi -fi - -FROM="$LOGNAME" -REPLY_TO="${REPLY_TO:-${REPLYTO:-$LOGNAME}}" - -# Find out the name of the originator of this PR. -if [ -n "$NAME" ]; then - ORIGINATOR="$NAME" -elif [ -f $HOME/.fullname ]; then - ORIGINATOR="`sed -e '1q' $HOME/.fullname`" -else - # Must use temp file due to incompatibilities in quoting behavior - # and to protect shell metacharacters in the expansion of $LOGNAME - $PASSWD | grep "^$LOGNAME:" | awk -F: '{print $5}' | sed -e 's/,.*//' > $TEMP0 - ORIGINATOR="`cat $TEMP0`" - rm -f $TEMP0 -fi - -if [ -n "$ORGANIZATION" ]; then - if [ -f "$ORGANIZATION" ]; then - ORGANIZATION="`cat $ORGANIZATION`" - fi -else - if [ -n "$DEFAULT_ORGANIZATION" ]; then - ORGANIZATION="$DEFAULT_ORGANIZATION" - elif [ -f $HOME/.organization ]; then - ORGANIZATION="`cat $HOME/.organization`" - fi -fi - -# If they don't have a preferred editor set, then use -if [ -z "$VISUAL" ]; then - if [ -z "$EDITOR" ]; then - EDIT=vi - else - EDIT="$EDITOR" - fi -else - EDIT="$VISUAL" -fi - -# Find out some information. -SYSTEM=`( [ -f /bin/uname ] && /bin/uname -a ) || \ - ( [ -f /usr/bin/uname ] && /usr/bin/uname -a ) || echo ""` -ARCH=`[ -f /bin/arch ] && /bin/arch` -MACHINE=`[ -f /bin/machine ] && /bin/machine` - -COMMAND=`echo $0 | sed -e 's,.*/,,'` -USAGE="Usage: $COMMAND [-PVL] [-t address] [-f filename] [-s severity] - [-c address] [--request-id] [--version]" -REMOVE= -BATCH= -CC= -SEVERITY_C= - -while [ $# -gt 0 ]; do - case "$1" in - -r) ;; # Ignore for backward compat. - -t | --to) if [ $# -eq 1 ]; then echo "$USAGE"; $REMOVE_TEMP; exit 1; fi - shift ; GNATS_ADDR="$1" - EXPLICIT_GNATS_ADDR=true - ;; - -f | --file) if [ $# -eq 1 ]; then echo "$USAGE"; $REMOVE_TEMP; exit 1; fi - shift ; IN_FILE="$1" - if [ "$IN_FILE" != "-" -a ! -r "$IN_FILE" ]; then - echo "$COMMAND: cannot read $IN_FILE" - $REMOVE_TEMP - exit 1 - fi - ;; - -b | --batch) BATCH=true ;; - -c | --cc) if [ $# -eq 1 ]; then echo "$USAGE"; $REMOVE_TEMP; exit 1; fi - shift ; CC="$1" - ;; - -s | --severity) if [ $# -eq 1 ]; then echo "$USAGE"; $REMOVE_TEMP; exit 1; fi - shift ; SEVERITY_C="$1" - ;; - -p | -P | --print) PRINT=true ;; - -L | --list) FORMAT=norm ;; - -l | -CL | --lisp) FORMAT=lisp ;; - --request-id) REQUEST_ID=true ;; - -h | --help) echo "$USAGE"; $REMOVE_TEMP; exit 0 ;; - -V | --version) cat <<EOF -gccbug (GCC) $DEFAULT_RELEASE -Copyright (C) 2002 Free Software Foundation, Inc. -This is free software; see the source for copying conditions. There is NO -warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. - -EOF - $REMOVE_TEMP; exit 0 ;; - -*) echo "$USAGE" ; $REMOVE_TEMP; exit 1 ;; - *) echo "$USAGE" ; $REMOVE_TEMP; exit 1 - esac - shift -done - -# spam does not need to be listed here -CATEGORIES="ada bootstrap c++ c debug driver fortran inline-asm java libgcj libobjc libstdc++ middle-end objc other pch preprocessor rtl-optimization target tree-optimization web" - -case "$FORMAT" in - lisp) echo "$CATEGORIES" | \ - awk 'BEGIN {printf "( "} {printf "(\"%s\") ",$0} END {printf ")\n"}' - $REMOVE_TEMP - exit 0 - ;; - norm) l=`echo "$CATEGORIES" | \ - awk 'BEGIN {max = 0; } { if (length($0) > max) { max = length($0); } } - END {print max + 1;}'` - c=`expr 70 / $l` - if [ $c -eq 0 ]; then c=1; fi - echo "$CATEGORIES" | \ - awk 'BEGIN {print "Known categories:"; i = 0 } - { printf ("%-'$l'.'$l's", $0); if ((++i % '$c') == 0) { print "" } } - END { print ""; }' - $REMOVE_TEMP - exit 0 - ;; -esac - -ORIGINATOR_C='<name of the PR author (one line)>' -ORGANIZATION_C='<organization of PR author (multiple lines)>' -SYNOPSIS_C='<synopsis of the problem (one line)>' -if [ -z "$SEVERITY_C" ]; then - SEVERITY_C='<[ non-critical | serious | critical ] (one line)>' -fi -PRIORITY_C='<[ low | medium ] (one line)>' -CATEGORY_C='<choose from the top of this file (one line)>' -RELEASE_C='<release number or tag (one line)>' -ENVIRONMENT_C='<machine, os, target, libraries (multiple lines)>' -DESCRIPTION_C='<precise description of the problem (multiple lines)>' -HOW_TO_REPEAT_C='<When reporting a compiler error, preprocessor output must be included>' -FIX_C='<how to correct or work around the problem, if known (multiple lines)>' - -# Catch some signals. ($xs kludge needed by Sun /bin/sh) -xs=0 -trap '$REMOVE_TEMP; exit $xs' 0 -trap 'echo "$COMMAND: Aborting ..."; $REMOVE_TEMP; xs=1; exit' 1 3 13 15 - -# If they told us to use a specific file, then do so. -if [ -n "$IN_FILE" ]; then - if [ "$IN_FILE" = "-" ]; then - # The PR is coming from the standard input. - if [ -n "$EXPLICIT_GNATS_ADDR" ]; then - sed -e "s;^[Tt][Oo]:.*;To: $GNATS_ADDR;" > $TEMP - else - cat > $TEMP - fi - else - # Use the file they named. - if [ -n "$EXPLICIT_GNATS_ADDR" ]; then - sed -e "s;^[Tt][Oo]:.*;To: $GNATS_ADDR;" $IN_FILE > $TEMP - else - cat $IN_FILE > $TEMP - fi - fi -else - - if [ -n "$PR_FORM" -a -z "$PRINT_INTERN" ]; then - # If their PR_FORM points to a bogus entry, then bail. - if [ ! -f "$PR_FORM" -o ! -r "$PR_FORM" -o ! -s "$PR_FORM" ]; then - echo "$COMMAND: can't seem to read your template file (\`$PR_FORM'), ignoring PR_FORM" - sleep 1 - PRINT_INTERN=bad_prform - fi - fi - - if [ -n "$PR_FORM" -a -z "$PRINT_INTERN" ]; then - cp $PR_FORM $TEMP || - ( echo "$COMMAND: could not copy $PR_FORM" ; xs=1; exit ) - else - for file in $TEMP $REF ; do - cat > $file << '__EOF__' -SEND-PR: -*- send-pr -*- -SEND-PR: Lines starting with `SEND-PR' will be removed automatically, as -SEND-PR: will all comments (text enclosed in `<' and `>'). -SEND-PR: -SEND-PR: Please consult the GCC manual if you are not sure how to -SEND-PR: fill out a problem report. -SEND-PR: Note that the Synopsis field is mandatory. The Subject (for -SEND-PR: the mail) will be made the same as Synopsis unless explicitly -SEND-PR: changed. -SEND-PR: -SEND-PR: Choose from the following categories: -SEND-PR: -__EOF__ - - # Format the categories so they fit onto lines. - l=`echo "$CATEGORIES" | \ - awk 'BEGIN {max = 0; } { if (length($0) > max) { max = length($0); } } - END {print max + 1;}'` - c=`expr 61 / $l` - if [ $c -eq 0 ]; then c=1; fi - echo "$CATEGORIES" | \ - awk 'BEGIN {printf "SEND-PR: "; i = 0 } - { printf ("%-'$l'.'$l's", $0); - if ((++i % '$c') == 0) { printf "\nSEND-PR: " } } - END { printf "\nSEND-PR:\n"; }' >> $file - - cat >> $file << __EOF__ -To: $GNATS_ADDR -Subject: -From: $FROM -Reply-To: $REPLYTO -Cc: $CC -X-send-pr-version: $VERSION -X-GNATS-Notify: - - ->Submitter-Id: $SUBMITTER ->Originator: $ORIGINATOR ->Organization: ${ORGANIZATION-$ORGANIZATION_C} ->Confidential: no -SEND-PR: Leave "Confidential" as "no"; all GCC PRs are public. ->Synopsis: $SYNOPSIS_C ->Severity: $SEVERITY_C -SEND-PR: critical GCC is completely not operational; no work-around known. -SEND-PR: serious GCC is not working properly; a work-around is possible. -SEND-PR: non-critical Report indicates minor problem. ->Priority: $PRIORITY_C -SEND-PR: medium The problem should be solved in the next release. -SEND-PR: low The problem should be solve in a future release. ->Category: $CATEGORY_C ->Class: <[ doc-bug | accepts-illegal | rejects-legal | wrong-code | ice-on-legal-code| ice-on-illegal-code | pessimizes-code | sw-bug | change-request | support ] (one line)> -SEND-PR: doc-bug The documentation is incorrect. -SEND-PR: accepts-illegal GCC fails to reject erroneous code. -SEND-PR: rejects-legal GCC gives an error message for correct code. -SEND-PR: wrong-code The machine code generated by gcc is incorrect. -SEND-PR: ice-on-legal-code GCC gives an Internal Compiler Error (ICE) -SEND-PR: for correct code -SEND-PR: ice-on-illegal-code GCC gives an ICE instead of reporting an error -SEND-PR: pessimizes-code GCC misses an important optimization opportunity -SEND-PR: sw-bug Software bug of some other class than above -SEND-PR: change-request A feature in GCC is missing. -SEND-PR: support I need help with gcc. ->Release: ${DEFAULT_RELEASE-$RELEASE_C} ->Environment: -`[ -n "$SYSTEM" ] && echo System: $SYSTEM` -`[ -n "$ARCH" ] && echo Architecture: $ARCH` -`[ -n "$MACHINE" ] && echo Machine: $MACHINE` - $ENVIRONMENT_C -host: @host@ -build: @build@ -target: @target@ -__EOF__ - cat >> $file << \__EOF__ -configured with: @gcc_config_arguments@ -__EOF__ - cat >> $file << __EOF__ ->Description: - $DESCRIPTION_C ->How-To-Repeat: - $HOW_TO_REPEAT_C ->Fix: - $FIX_C -__EOF__ - done - fi - - if [ "$PRINT" = true -o "$PRINT_INTERN" = true ]; then - cat $TEMP - xs=0; exit - fi - - chmod u+w $TEMP - if [ -z "$REQUEST_ID" ]; then - eval $EDIT $TEMP - else - ed -s $TEMP << '__EOF__' -/^Subject/s/^Subject:.*/Subject: request for a customer id/ -/^>Category/s/^>Category:.*/>Category: send-pr/ -w -q -__EOF__ - fi - - if cmp -s $REF $TEMP ; then - echo "$COMMAND: problem report not filled out, therefore not sent" - xs=1; exit - fi -fi - -# -# Check the enumeration fields - -# This is a "sed-subroutine" with one keyword parameter -# (with workaround for Sun sed bug) -# -SED_CMD=' -/$PATTERN/{ -s||| -s|<.*>|| -s|^[ ]*|| -s|[ ]*$|| -p -q -}' - - -while [ -z "$REQUEST_ID" ]; do - CNT=0 - - # 1) Confidential - # - PATTERN=">Confidential:" - CONFIDENTIAL=`eval sed -n -e "\"$SED_CMD\"" $TEMP` - case "$CONFIDENTIAL" in - no) CNT=`expr $CNT + 1` ;; - *) echo "$COMMAND: \`$CONFIDENTIAL' is not a valid value for \`Confidential'." ;; - esac - # - # 2) Severity - # - PATTERN=">Severity:" - SEVERITY=`eval sed -n -e "\"$SED_CMD\"" $TEMP` - case "$SEVERITY" in - ""|non-critical|serious|critical) CNT=`expr $CNT + 1` ;; - *) echo "$COMMAND: \`$SEVERITY' is not a valid value for \`Severity'." - esac - # - # 3) Priority - # - PATTERN=">Priority:" - PRIORITY=`eval sed -n -e "\"$SED_CMD\"" $TEMP` - case "$PRIORITY" in - ""|low|medium) CNT=`expr $CNT + 1` ;; - high) echo "$COMMAND: \`Priority: high' is reserved for GCC maintainers." ;; - *) echo "$COMMAND: \`$PRIORITY' is not a valid value for \`Priority'." - esac - # - # 4) Category - # - PATTERN=">Category:" - CATEGORY=`eval sed -n -e "\"$SED_CMD\"" $TEMP` - FOUND= - for C in $CATEGORIES - do - if [ "$C" = "$CATEGORY" ]; then FOUND=true ; break ; fi - done - if [ -n "$FOUND" ]; then - CNT=`expr $CNT + 1` - else - if [ -z "$CATEGORY" ]; then - echo "$COMMAND: you must include a Category: field in your report." - else - echo "$COMMAND: \`$CATEGORY' is not a known category." - fi - fi - # - # 5) Class - # - PATTERN=">Class:" - CLASS=`eval sed -n -e "\"$SED_CMD\"" $TEMP` - case "$CLASS" in - ""|doc-bug|accepts-illegal|rejects-legal|wrong-code|ice-on-legal-code|ice-on-illegal-code|pessimizes-code|sw-bug|change-request|support) CNT=`expr $CNT + 1` ;; - *) echo "$COMMAND: \`$CLASS' is not a valid value for \`Class'." - esac - # - # 6) Check that synopsis is not empty - # - if grep "^>Synopsis:[ ]*${SYNOPSIS_C}\$" $TEMP > /dev/null - then - echo "$COMMAND: Synopsis must not be empty." - else - CNT=`expr $CNT + 1` - fi - - [ $CNT -lt 6 -a -z "$BATCH" ] && - echo "Errors were found with the problem report." - - while true; do - if [ -z "$BATCH" ]; then - $ECHON1 "a)bort, e)dit or s)end? $ECHON2" - read input - else - if [ $CNT -eq 6 ]; then - input=s - else - input=a - fi - fi - case "$input" in - a*) - if [ -z "$BATCH" ]; then - echo "$COMMAND: the problem report remains in $BAD and is not sent." - REMOVE_TEMP="rm -f $TEMP0 $TEMP $REF" - mv $TEMP $BAD - else - echo "$COMMAND: the problem report is not sent." - fi - xs=1; exit - ;; - e*) - eval $EDIT $TEMP - continue 2 - ;; - s*) - break 2 - ;; - esac - done -done - -# -# Make sure the mail has got a Subject. If not, use the same as -# in Synopsis. -# - -if grep '^Subject:[ ]*$' $TEMP > /dev/null -then - SYNOPSIS=`grep '^>Synopsis:' $TEMP | sed -e 's/^>Synopsis:[ ]*//'` - ed -s $TEMP << __EOF__ -/^Subject:/s/:.*\$/: $SYNOPSIS/ -w -q -__EOF__ -fi - -# -# Remove comments and send the problem report -# (we have to use patterns, where the comment contains regex chars) -# -# /^>Originator:/s;$ORIGINATOR;; -sed -e " -/^SEND-PR:/d -/^>Organization:/,/^>[A-Za-z-]*:/s;$ORGANIZATION_C;; -/^>Confidential:/s;<.*>;; -/^>Synopsis:/s;$SYNOPSIS_C;; -/^>Severity:/s;<.*>;; -/^>Priority:/s;<.*>;; -/^>Category:/s;$CATEGORY_C;; -/^>Class:/s;<.*>;; -/^>Release:/,/^>[A-Za-z-]*:/s;$RELEASE_C;; -/^>Environment:/,/^>[A-Za-z-]*:/s;$ENVIRONMENT_C;; -/^>Description:/,/^>[A-Za-z-]*:/s;$DESCRIPTION_C;; -/^>How-To-Repeat:/,/^>[A-Za-z-]*:/s;$HOW_TO_REPEAT_C;; -/^>Fix:/,/^>[A-Za-z-]*:/s;$FIX_C;; -" $TEMP > $REF - -if $MAIL_AGENT < $REF; then - echo "$COMMAND: problem report sent" - xs=0; exit -else - echo "$COMMAND: mysterious mail failure." - if [ -z "$BATCH" ]; then - echo "$COMMAND: the problem report remains in $BAD and is not sent." - REMOVE_TEMP="rm -f $TEMP0 $TEMP $REF" - mv $REF $BAD - else - echo "$COMMAND: the problem report is not sent." - fi - xs=1; exit -fi |