mirror of
git://gcc.gnu.org/git/gcc.git
synced 2025-03-05 21:57:50 +08:00
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:
parent
ace8b01598
commit
501a481953
@ -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>
|
||||
|
||||
|
@ -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
|
||||
|
140
gcc/gcc.texi
140
gcc/gcc.texi
@ -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
|
||||
|
@ -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
|
||||
#
|
||||
|
Loading…
Reference in New Issue
Block a user