Submitting Bug Reports using GNATS

gnatsweb and gccbug

GNATS, the GNU bug tracking system, is used to track GCC bug reports. Before submitting a bug report, please read the general instructions.

The preferred way to submit a bug report is by means of the gnatsweb interface. Make sure you include an e-mail address, so we can inform you when the status of your report changes.

Another way is to use the gccbug program that is automatically installed with current versions of GCC, which submits the bug report by e-mail.

Both techniques use the same GNATS bug database.

Filling out a report

The bug report form provides a number of fields; you'll need to fill-out most of those (as indicated below) to provide a complete report. The fields have the following purpose:

Originator
Your name.
Organization
Your organization. You can leave this field blank.
Confidential
This field is unused and set to 'no'. All bug reports, including sample code, are publicly accessible.
Synopsis
A one-line description of the problem; something like "GCC 2.95 does not foo", "objc crashes when doing bar".
Severity
Can be one of
critical
GCC is completely not operational; no work-around known.
serious
GCC is not working properly; a work-around is possible.
non-critical
Report indicates minor problem.
Priority
Can be one of
high
A solution is necessary as soon as possible. This is reserved to GCC maintainers.
medium
The problem should be solved in the next release.
low
The problem should be solved in a future release.
Category
This indicates the GCC subproject which is affected by the problem. Currently, it can be one of
ada
A problem with the Ada compiler, libraries or tools.
bootstrap
GCC fails to bootstrap. This should be filed only if a bootstrap failure prevails for an extended period of time (at least one week) on any platform (and possibly not-so-common conditions like a read-only srcdir), or non-mainstream platforms.
c++
A problem with the C++ compiler.
c
A problem with the C compiler.
debug
A problem with generating debugging information.
fortran
A problem with the Fortran compiler.
java
A problem with the Java compiler.
libf2c
A problem in the Fortran runtime library.
libgcj
A problem in the Java runtime library.
libobjc
A problem in the Objective C runtime library.
libstdc++
A problem in the Standard C++ runtime library.
middle-end
A problem in the internal compiler passes.
objc
A problem with the Objective C compiler.
optimization
A problem only occurring under optimization.
preprocessor
A problem with the C preprocessor.
target
The problem depends on the specific target architecture.
web
There is an error or omission on the Web pages.
other
The problem is in none of these categories.
Class
A classification of the problem; one of
doc-bug
The documentation is incorrect.
accepts-illegal
GCC fails to reject erroneous code.
rejects-legal
GCC gives an error message for correct code.
wrong-code
The machine code generated by GCC is incorrect.
ice-on-legal-code
GCC gives an Internal Compiler Error (ICE) for correct code.
ice-on-illegal-code
GCC gives an ICE instead of reporting an error.
pessimizes-code
GCC misses an important optimization opportunity.
sw-bug
Software bug of some other class than above.
change-request
A feature in GCC is missing.
support
I need help with GCC.
Release
GCC version, as obtained from 'gcc -v' (one line).
Environment
Information about your operating system version, hardware architecture, and environment settings that affect GCC.
Description
Precise description of the problem. You should put the error messages printed by GCC here; source code should go into the next section.
How-To-Repeat
Please put the complete source code to reproduce the problem here. The gccbug script currently does not support file attachments. Instead, if you have multiple files, include them uuencoded (compressing them before if they are large). If you use gnatsweb, you can use the file attachments button instead.
Fix
How to correct or work around the problem, if known (multiple lines).