------------------------------------------------------------------------------
--                                                                          --
--                              GNAT DOCUMENTS                              --
--                                                                          --
--                           G N A T I N F O . T X T                        --
--                                                                          --
--                            $Revision: 1.111 $                            --
--                                                                          --
--                            GNAT version 3.12                             --
--                                                                          --
--         Copyright (C) 1992 - 1997 Free Software Foundation, Inc.         --
--                                                                          --
-- GNAT is free software;  you can  redistribute it  and/or modify it under --
-- terms of the  GNU General Public License as published  by the Free Soft- --
-- ware  Foundation;  either version 2,  or (at your option) any later ver- --
-- sion.  GNAT is distributed in the hope that it will be useful, but WITH- --
-- OUT 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  distributed with GNAT;  see file COPYING.  If not, write --
-- to  the Free Software Foundation,  59 Temple Place - Suite 330,  Boston, --
-- MA 02111-1307, USA.                                                      --
--                                                                          --
-- GNAT was originally developed  by the GNAT team at  New York University. --
-- It is now maintained by Ada Core Technologies Inc (http://www.gnat.com). --
--                                                                          --
------------------------------------------------------------------------------

For information about commercial support of GNAT from Ada Core Technologies
send email to sales@gnat.com or visit our home page at http://www.gnat.com

In Europe information about commercial support of GNAT should be sent to
sales@act-europe.fr or visit the ACT Europe (The European GNAT Company)
home page at http://www.act-europe.fr

All bug reports and technical correspondence should be sent to report@gnat.com

Documentation
=============

The Documentation for GNAT consists of two manuals, the GNAT User's Guide
and the GNAT Reference Manual. These are available in a number of formats
(ASCII, HTML, PostScript and info) and are bundled as a separate documentation
distribution and can be found at the same places as the GNAT binary and
source distributions.

Copyright and Licensing Considerations
======================================

The GNAT runtime code is included in full source form (as well as in binary
form in the binary releases). It is licensed using a modified version of the
General Public License (GPL) which allows unlimited distribution without
license fees, and incorporation into any program executable without
restriction. In particular, the GNAT run time can be incorporated into
proprietary or classified programs, and in no way restricts the desired
licensing or distribution of such programs.

The compiler code itself is covered by the GPL, which means that it is
freely redistributable, and that source code is available (source
distributions are available at cs.nyu.edu, and at other mirror sites
internationally). You may freely modify the compiler for your own use,
but if you redistribute modified versions of the GNAT compiler itself
or associated tools, then they must themselves be distributed under
the terms of the GPL, and in particular you cannot incorporate GNAT
compiler code into proprietary programs.

For more information on the licensing provisions, consult the headers
of the appropriate source files.

Submitting Bug Reports
======================

We welcome bug reports, they are of course a vital part of the process of the
continuing improvement of GNAT. You will help us (and make it more likely
that we will look at your report in a timely manner) if you follow these
guidelines. We process all bug reports from both users supported by Ada
Core Technologies, and from unsupported users. Naturally supported users
have our priority attention. We will acknowledge all reports from unsupported
users and eventually correct any problems that are clearly reported, but
we cannot enter into correspondence regarding such reports.

We only receive bug reports by internet, addressed to report@gnat.com.

Note: if you believe you have found a GCC (C language or configuration
file) bug rather than an GNAT (Ada language) bug please report it to
bug-gcc@prep.ai.mit.edu.  If you have found a bug when using GCC to
compile C++, please report it to bug-g++@prep.ai.mit.edu.

Please report each bug in a separate message, and add a short but specific
subject (a general subject like "GNAT bug" is useless, a title like
"bug in visibility with generics" is more useful). Some users find it
useful to assign unique identifying numbers to bug reports.

Please include full sources. We can't duplicate errors without the full
sources. Include all sources in the single email message with appropriate
indications in the multiple file cases, see below. Also say exactly
what you saw, do not assume that we can guess what you saw, or duplicate
the behavior you encountered.

All sources must be sent in plain ASCII form. Please include COMPLETE
identification of the version of the system you are running.

To be maximally helpful, for a report that contains multiple separate
compilation units, and hence multiple files, submit them in the form of
a single file that is acceptable input to gnatchop, i.e. contains no
non-Ada text. If you use banners to separate the files, make sure they
are composed entirely of blank lines or Ada comments. The first line of
sources should be marked with an Ada comment line, and the sources should
extend to the end of the message. If you must include a signature, make
it look like an Ada comment.

Also, it is helpful if you try to reduce your example to a simple one
but do not spend too much time doing this. Especially when you are
reporting a blow up during compilation, rather than bad code generated,
we can in practice work with big sources if you have trouble narrowing
things down.

If a bug involves incorrect operation of the generated code, then the
first thing the program should do is to output a line indicating the
expected output or behavior. If at all possible, do a test later on
that prints out "passed" or "failed" depending on the behavior. Of course
it may not always be possible to structure a test this way, but that's the
most convenient form (for obvious reasons!)
