Makefile (gccbug): New target.

* Makefile (gccbug): New target.
	(doc): Depend on it.
	* gcc.texi (Bugs): Link subnodes.
	(gccbug): New node.
	* gccbug.in (CATEGORIES): Remove gc, host, profiling, libgcc.
	Document severities, priorities, and classes in bug form.
	* ChangeLog: Replace leading spaces with tabs.

From-SVN: r32915
This commit is contained in:
Martin v. Löwis 2000-04-04 22:54:44 +00:00
parent ace8b01598
commit 501a481953
4 changed files with 196 additions and 36 deletions

View File

@ -1,3 +1,12 @@
2000-04-04 Martin v. Löwis <loewis@informatik.hu-berlin.de>
* Makefile (gccbug): New target.
(doc): Depend on it.
* gcc.texi (Bugs): Link subnodes.
(gccbug): New node.
* gccbug.in (CATEGORIES): Remove gc, host, profiling, libgcc.
Document severities, priorities, and classes in bug form.
2000-04-04 Zack Weinberg <zack@wolery.cumb.org>
* cpplex.c (trigraph_map, speccase): Combine into single
@ -188,7 +197,7 @@ Mon Apr 3 00:02:59 2000 Brad Lucier <lucier@math.purdue.edu>
2000-04-02 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
* config/c4x/c4x.c (c4x_function_arg): Check for void_type_node
before checking MUST_PASS_IN_STACK.
before checking MUST_PASS_IN_STACK.
2000-04-02 Neil Booth <NeilB@earthling.net>
@ -262,18 +271,18 @@ Mon Apr 3 00:02:59 2000 Brad Lucier <lucier@math.purdue.edu>
2000-04-01 Neil Booth <NeilB@earthling.net>
* cppexp.c: Redefine priority constants.
(_cpp_parse_expr): Replace left and right priority scheme with
* cppexp.c: Redefine priority constants.
(_cpp_parse_expr): Replace left and right priority scheme with
single priority logic. Move LOGICAL to same place as COMPARE.
Remove bogus check for multiple unary +/- operators.
2000-04-01 Neil Booth <NeilB@earthling.net>
* cppexp.c: (_cpp_parse_expr): Numerical constants are pushed
within the switch statement. Binary operations break out of
the switch naturally. '(' tokens handled by forcing
immediate shift. ')' handled by forcing immediate reduce to
the previous '('. New error messages.
* cppexp.c: (_cpp_parse_expr): Numerical constants are pushed
within the switch statement. Binary operations break out of
the switch naturally. '(' tokens handled by forcing
immediate shift. ')' handled by forcing immediate reduce to
the previous '('. New error messages.
2000-03-31 Geoff Keating <geoffk@cygnus.com>
@ -432,7 +441,7 @@ Thu Mar 30 06:32:51 2000 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
* stmt.c (expand_decl): Likewise.
(copy_rtx_and_substitute): Likewise.
* expr.c (expand_expr, expand_expr_unaligned): Likewise.
(clear_by_pieces): Fix error in last change.
(clear_by_pieces): Fix error in last change.
* emit-rtl.c (init_emit): Set known registers alignment in bits.
* function.h (regno_pointer_align): Now unsigned.
* config/arm/arm.c (alignable_memory_operand): REGNO_POINTER_ALIGN
@ -2270,7 +2279,7 @@ Tue Mar 14 08:42:21 2000 Jeffrey A Law (law@cygnus.com)
2000-03-12 Zack Weinberg <zack@wolery.cumb.org>
* cpphash.c: Don't include version.h.
* cpphash.c: Don't include version.h.
(special_symbol) [case T_VERSION]: Look for the string in
hp->value.cpval; don't use version_string.
* cppinit.c (initialize_builtins): Set hp->value.cpval for
@ -2375,7 +2384,7 @@ Sat Mar 11 16:18:12 2000 Jim Wilson <wilson@cygnus.com>
remap_filename, _cpp_read_include_file, actual_directory,
hack_vms_include_specification): Replace bcopy(), index() etc
calls. Add casts to some allocations. Make some variables
pointers to const [unsigned] char.
pointers to const [unsigned] char.
* cpphash.c (_cpp_install, macro_cleanup, collect_expansion,
collect_formal_parameters): Similarly.
* cppinit.c (struct pending_option, append_include_chain,
@ -3609,7 +3618,7 @@ Mon Feb 28 22:11:12 2000 J"orn Rennecke <amylaar@cygnus.co.uk>
Mon Feb 28 14:21:15 2000 Catherine Moore <clm@cygnus.com>
* config/pa/som.h (MAKE_DECL_ONE_ONLY): Define.
(ASM_WEAKEN_LABEL): Define.
(ASM_WEAKEN_LABEL): Define.
Mon Feb 28 13:07:19 MET 2000 Jan Hubicka <jh@suse.cz>
@ -4167,7 +4176,7 @@ Fri Feb 18 20:08:57 2000 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
* config/alpha/alpha.c (alpha_emit_xfloating_libcall): Cast FUNC
to (char *).
(alpha_expand_unaligned_load, alpha_expand_unaligned_store):
Cast switch operand of size to int.
Cast switch operand of size to int.
(alpha_expand_epilogue): Always initialize fp_offset and sa_reg.
* config/alpha/alpha.h (INITIAL_ELIMINATION_OFFSET): Add abort
in unhandled case.
@ -4528,7 +4537,7 @@ Sun Feb 13 12:57:52 2000 Neil Booth <NeilB@earthling.net>
2000-02-13 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
* flow.c (flow_loop_tree_node_add): Use better algorithm by passing
previously inserted node instead of root node. Caller changed.
previously inserted node instead of root node. Caller changed.
2000-02-13 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
@ -4704,10 +4713,10 @@ Fri Feb 11 02:48:30 2000 Brad Lucier (lucier@math.purdue.edu)
(ASM_OUTPUT_EXTERNAL_LIBCALL): Likewise.
(ASM_FILE_END): Use c4x_file_end.
* config/c4x/c4x.c (c4x_global_label): New function.
(c4x_external_ref, c4x_file_end): Likewise.
(c4x_external_ref, c4x_file_end): Likewise.
* config/c4x/c4x-protos.h (c4x_global_label): Add prototype.
(c4x_external_ref, c4x_end_file): Likewise.
(c4x_external_ref, c4x_end_file): Likewise.
2000-02-10 Zack Weinberg <zack@wolery.cumb.org>
@ -5229,14 +5238,14 @@ Mon Feb 7 18:36:41 MET 2000 Jan Hubicka <jh@suse.cz>
2000-02-04 Zack Weinberg <zack@wolery.cumb.org>
* recog.h: Remove NO_MD_PROTOTYPES ifdefs.
* genflags.c: Use the max_operand_1 logic from genemit.c to
calculate how many arguments gen_insn prototypes have. Remove
NO_MD_PROTOTYPES ifdefs from the generated file.
* genoutput.c: Don't define NO_MD_PROTOTYPES in the generated
file. Cast gen_insn initializers to insn_gen_fn.
* config/alpha/vms.h: Don't define NO_MD_PROTOTYPES.
* gcc.texi: Remove documentation of NO_MD_PROTOTYPES.
* recog.h: Remove NO_MD_PROTOTYPES ifdefs.
* genflags.c: Use the max_operand_1 logic from genemit.c to
calculate how many arguments gen_insn prototypes have. Remove
NO_MD_PROTOTYPES ifdefs from the generated file.
* genoutput.c: Don't define NO_MD_PROTOTYPES in the generated
file. Cast gen_insn initializers to insn_gen_fn.
* config/alpha/vms.h: Don't define NO_MD_PROTOTYPES.
* gcc.texi: Remove documentation of NO_MD_PROTOTYPES.
2000-02-04 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>

View File

@ -803,6 +803,9 @@ Makefile: $(srcdir)/Makefile.in config.status $(srcdir)/version.c \
$(srcdir)/configure: $(srcdir)/configure.in
cd $(srcdir); autoconf
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
@ -2317,7 +2320,7 @@ stmp-fixproto: fixhdr.ready fixproto stmp-int-hdrs
#
# Remake the info files.
doc: info
doc: info gccbug
info: cpp.info gcc.info lang.info
cpp.info: $(srcdir)/cpp.texi

View File

@ -2156,12 +2156,13 @@ information that makes for fixing the bug.
* Criteria: Bug Criteria. Have you really found a bug?
* Where: Bug Lists. Where to send your bug report.
* Reporting: Bug Reporting. How to report a bug effectively.
* GNATS: gccbug. You can use a bug reporting tool.
* Patches: Sending Patches. How to send a patch for GCC.
* Known: Trouble. Known problems.
* Help: Service. Where to ask for help.
@end menu
@node Bug Criteria
@node Bug Criteria,Bug Lists,,Bugs
@section Have You Found a Bug?
@cindex bug criteria
@ -2228,7 +2229,7 @@ If you are an experienced user of one of the languages GCC supports, your
suggestions for improvement of GCC are welcome in any case.
@end itemize
@node Bug Lists
@node Bug Lists,Bug Reporting,Bug Criteria,Bugs
@section Where to Report Bugs
@cindex bug report mailing lists
@kindex gcc-bugs@@gcc.gnu.org or bug-gcc@@gnu.org
@ -2257,7 +2258,7 @@ Free Software Foundation
Boston, MA 02111-1307, USA
@end example
@node Bug Reporting
@node Bug Reporting,gccbug,Bug Lists,Bugs
@section How to Report Bugs
@cindex compiler bugs, reporting
@ -2517,7 +2518,138 @@ unless we have an identical system---and if we do have one,
we should be able to reproduce the crash ourselves.
@end itemize
@node Sending Patches,, Bug Reporting, Bugs
@node gccbug,Sending Patches, Bug Reporting, Bugs
@section The gccbug script
@cindex gccbug script
To simplify creation of bug reports, and to allow better tracking of
reports, we use the GNATS bug tracking system. Part of that system is
the @code{gccbug} script. This is a Unix shell script, so you need a
shell to run it. It is normally installed in the same directory where
@code{gcc} is installed.
The gccbug script is derived from send-pr, @pxref{using
send-pr,,Creating new Problem Reports,send-pr,Reporting Problems}. When
invoked, it starts a text editor so you can fill out the various fields
of the report. When the you quit the editor, the report is automatically
send to the bug reporting address.
A number of fields in this bug report form are specific to GCC, and are
explained here.
@table @code
@cindex @code{Category} field
@cindex @code{>Category:}
@item >Category:
The category of a GCC problem can be one of the following:
@table @code
@item c
A problem with the C compiler proper.
driver.
@item c++
A problem with the C++ compiler.
driver.
@item fortran
A problem with the Fortran 77.
@item java
A problem with the Java compiler.
@item objc
A problem with the Objective C compiler.
@item libstdc++
A problem with the C++ standard library.
@item libf2c
A problem with the Fortran 77 library.
@item libobjc
A problem with the Objective C library.
@item optimization
The problem occurs only when generating optimized code.
@item debug
The problem occurs only when generating code for debugging.
@item target
The problem is specific to the target architecture.
@item middle-end
The problem is independent from target architecture and programming
language.
@item other
It is a problem in some other part of the GCC software.
@item web
There is a problem with the GCC home page.
@end table
@cindex @code{Class} field
@cindex @code{>Class:}
@item >Class:
The class of a problem can be one of the following:
@table @code
@cindex @emph{doc-bug} class
@item doc-bug
A problem with the documentation.
@cindex @emph{accepts-illegal} class
@item accepts-illegal
GCC fails to reject erroneous code.
@cindex @emph{rejects-legal} class
@item rejects-legal
GCC gives an error message for correct code.
@cindex @emph{wrong-code} class
@item wrong-code
The machine code generated by gcc is incorrect.
@cindex @emph{ice-on-legal-code} class
@item ice-on-legal-code
GCC gives an Internal Compiler Error (ICE) for correct code.
@cindex @emph{ice-on-illegal-code} class
@item ice-on-illegal-code
GCC gives an ICE instead of reporting an error
@cindex @emph{pessimizes-code} class
@item pessimizes-code
GCC misses an important optimization opportunity.
@cindex @emph{sw-bug} class
@item sw-bug
A general product problem. (@samp{sw} stands for ``software''.)
@cindex @emph{change-request} class
@item change-request
A request for a change in behavior, etc.
@cindex @emph{support} class
@item support
A support problem or question.
@cindex @emph{duplicate} class
@item duplicate (@var{pr-number})
Duplicate PR. @var{pr-number} should be the number of the original PR.
@noindent
The default is @samp{sw-bug}.
@sp 1
@end table
@end table
@node Sending Patches,, gccbug, Bugs
@section Sending Patches for GCC
If you would like to write bug fixes or improvements for the GNU C

View File

@ -177,7 +177,7 @@ while [ $# -gt 0 ]; do
done
# spam does not need to be listed here
CATEGORIES="c++ c debug fortran gc host java libf2c libgcc libobjc libstdc++ middle-end objc optimization other profiling target web"
CATEGORIES="c++ c debug fortran java libf2c libobjc libstdc++ middle-end objc optimization other target web"
case "$FORMAT" in
lisp) echo "$CATEGORIES" | \
@ -205,8 +205,7 @@ if [ -z "$SEVERITY_C" ]; then
SEVERITY_C='<[ non-critical | serious | critical ] (one line)>'
fi
PRIORITY_C='<[ low | medium | high ] (one line)>'
CATEGORY_C='<choose from the list of categories above (one line)>'
CLASS_C='<[ 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)>'
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)>'
@ -256,8 +255,8 @@ 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 send-pr man page `send-pr(1)' or the Texinfo
SEND-PR: manual if you are not sure how to fill out a problem report.
SEND-PR: Please consult the GCC manual 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.
@ -294,9 +293,26 @@ X-GNATS-Notify:
>Confidential: $CONFIDENTIAL_C
>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: high A solution is necessary as soon as possible.
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: $CLASS_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 doumentation 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`
@ -410,7 +426,7 @@ while [ -z "$REQUEST_ID" ]; do
PATTERN=">Class:"
CLASS=`eval sed -n -e "\"$SED_CMD\"" $TEMP`
case "$CLASS" in
""|sw-bug|doc-bug|change-request|support) CNT=`expr $CNT + 1` ;;
""|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
#