1<?xml version="1.0" encoding="UTF-8" standalone="no"?>
2<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /><title>Appendix��A.�� Contributing</title><meta name="generator" content="DocBook XSL-NS Stylesheets V1.78.1" /><meta name="keywords" content="ISO C++, library" /><meta name="keywords" content="ISO C++, runtime, library" /><link rel="home" href="../index.html" title="The GNU C++ Library" /><link rel="up" href="appendix.html" title="Part��IV.�� Appendices" /><link rel="prev" href="appendix.html" title="Part��IV.�� Appendices" /><link rel="next" href="source_organization.html" title="Directory Layout and Source Conventions" /></head><body><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">Appendix��A.��
3  Contributing
4  
5</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="appendix.html">Prev</a>��</td><th width="60%" align="center">Part��IV.��
6  Appendices
7</th><td width="20%" align="right">��<a accesskey="n" href="source_organization.html">Next</a></td></tr></table><hr /></div><div class="appendix"><div class="titlepage"><div><div><h1 class="title"><a id="appendix.contrib"></a>
8  Contributing
9  <a id="id-1.3.6.2.1.1.1" class="indexterm"></a>
10</h1></div></div></div><div class="toc"><p><strong>Table of Contents</strong></p><dl class="toc"><dt><span class="section"><a href="appendix_contributing.html#contrib.list">Contributor Checklist</a></span></dt><dd><dl><dt><span class="section"><a href="appendix_contributing.html#list.reading">Reading</a></span></dt><dt><span class="section"><a href="appendix_contributing.html#list.copyright">Assignment</a></span></dt><dt><span class="section"><a href="appendix_contributing.html#list.getting">Getting Sources</a></span></dt><dt><span class="section"><a href="appendix_contributing.html#list.patches">Submitting Patches</a></span></dt></dl></dd><dt><span class="section"><a href="source_organization.html">Directory Layout and Source Conventions</a></span></dt><dt><span class="section"><a href="source_code_style.html">Coding Style</a></span></dt><dd><dl><dt><span class="section"><a href="source_code_style.html#coding_style.bad_identifiers">Bad Identifiers</a></span></dt><dt><span class="section"><a href="source_code_style.html#coding_style.example">By Example</a></span></dt></dl></dd><dt><span class="section"><a href="source_design_notes.html">Design Notes</a></span></dt></dl></div><p>
11  The GNU C++ Library is part of GCC and follows the same development model,
12  so the general rules for
13  <a class="link" href="http://gcc.gnu.org/contribute.html" target="_top">contributing
14  to GCC</a> apply. Active
15  contributors are assigned maintainership responsibility, and given
16  write access to the source repository. First-time contributors
17  should follow this procedure:
18</p><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="contrib.list"></a>Contributor Checklist</h2></div></div></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a id="list.reading"></a>Reading</h3></div></div></div><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem"><p>
19	  Get and read the relevant sections of the C++ language
20	  specification. Copies of the full ISO 14882 standard are
21	  available on line via the ISO mirror site for committee
22	  members. Non-members, or those who have not paid for the
23	  privilege of sitting on the committee and sustained their
24	  two meeting commitment for voting rights, may get a copy of
25	  the standard from their respective national standards
26	  organization. In the USA, this national standards
27	  organization is
28	  <a class="link" href="http://www.ansi.org" target="_top">ANSI</a>.
29	  (And if you've already registered with them you can
30	  <a class="link" href="http://webstore.ansi.org/RecordDetail.aspx?sku=INCITS%2fISO%2fIEC+14882-2012" target="_top">buy the standard on-line</a>.)
31	</p></li><li class="listitem"><p>
32	  The library working group bugs, and known defects, can
33	  be obtained here:
34	  <a class="link" href="http://www.open-std.org/jtc1/sc22/wg21/" target="_top">http://www.open-std.org/jtc1/sc22/wg21</a>
35	</p></li><li class="listitem"><p>
36	  Peruse
37	  the <a class="link" href="http://www.gnu.org/prep/standards/" target="_top">GNU
38	  Coding Standards</a>, and chuckle when you hit the part
39	  about <span class="quote">���<span class="quote">Using Languages Other Than C</span>���</span>.
40	</p></li><li class="listitem"><p>
41	  Be familiar with the extensions that preceded these
42	  general GNU rules. These style issues for libstdc++ can be
43	  found in <a class="link" href="source_code_style.html" title="Coding Style">Coding Style</a>.
44      </p></li><li class="listitem"><p>
45	  And last but certainly not least, read the
46	  library-specific information found in
47          <a class="link" href="appendix_porting.html" title="Appendix��B.�� Porting and Maintenance">Porting and Maintenance</a>.
48      </p></li></ul></div></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a id="list.copyright"></a>Assignment</h3></div></div></div><p>
49      See the <a class="link" href="http://gcc.gnu.org/contribute.html#legal" target="_top">legal prerequisites</a> for all GCC contributions.
50    </p><p>
51      Historically, the libstdc++ assignment form added the following
52      question:
53    </p><p>
54      <span class="quote">���<span class="quote">
55	Which Belgian comic book character is better, Tintin or Asterix, and
56	why?
57      </span>���</span>
58    </p><p>
59      While not strictly necessary, humoring the maintainers and answering
60      this question would be appreciated.
61    </p><p>
62      Please contact
63      Paolo Carlini at <code class="email">&lt;<a class="email" href="mailto:paolo.carlini@oracle.com">paolo.carlini@oracle.com</a>&gt;</code>
64      or
65      Jonathan Wakely at <code class="email">&lt;<a class="email" href="mailto:jwakely+assign@redhat.com">jwakely+assign@redhat.com</a>&gt;</code>
66      if you are confused about the assignment or have general licensing
67      questions. When requesting an assignment form from
68      <code class="email">&lt;<a class="email" href="mailto:assign@gnu.org">assign@gnu.org</a>&gt;</code>, please CC the libstdc++
69      maintainers above so that progress can be monitored.
70    </p></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a id="list.getting"></a>Getting Sources</h3></div></div></div><p>
71      <a class="link" href="http://gcc.gnu.org/svnwrite.html" target="_top">Getting write access
72	(look for "Write after approval")</a>
73    </p></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a id="list.patches"></a>Submitting Patches</h3></div></div></div><p>
74      Every patch must have several pieces of information before it can be
75      properly evaluated. Ideally (and to ensure the fastest possible
76      response from the maintainers) it would have all of these pieces:
77    </p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem"><p>
78	  A description of the bug and how your patch fixes this
79	  bug. For new features a description of the feature and your
80	  implementation.
81	</p></li><li class="listitem"><p>
82	  A ChangeLog entry as plain text; see the various
83	  ChangeLog files for format and content. If you are
84	  using emacs as your editor, simply position the insertion
85	  point at the beginning of your change and hit CX-4a to bring
86	  up the appropriate ChangeLog entry. See--magic! Similar
87	  functionality also exists for vi.
88	</p></li><li class="listitem"><p>
89	  A testsuite submission or sample program that will
90	  easily and simply show the existing error or test new
91	  functionality.
92	</p></li><li class="listitem"><p>
93	  The patch itself. If you are accessing the SVN
94	  repository use <span class="command"><strong>svn update; svn diff NEW</strong></span>;
95	  else, use <span class="command"><strong>diff -cp OLD NEW</strong></span> ... If your
96	  version of diff does not support these options, then get the
97	  latest version of GNU
98	  diff. The <a class="link" href="http://gcc.gnu.org/wiki/SvnTricks" target="_top">SVN
99	  Tricks</a> wiki page has information on customising the
100	  output of <code class="code">svn diff</code>.
101	</p></li><li class="listitem"><p>
102	  When you have all these pieces, bundle them up in a
103	  mail message and send it to libstdc++@gcc.gnu.org. All
104	  patches and related discussion should be sent to the
105	  libstdc++ mailing list.
106	</p></li></ul></div></div></div></div><div class="navfooter"><hr /><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="appendix.html">Prev</a>��</td><td width="20%" align="center"><a accesskey="u" href="appendix.html">Up</a></td><td width="40%" align="right">��<a accesskey="n" href="source_organization.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">Part��IV.��
107  Appendices
108��</td><td width="20%" align="center"><a accesskey="h" href="../index.html">Home</a></td><td width="40%" align="right" valign="top">��Directory Layout and Source Conventions</td></tr></table></div></body></html>