Differences between revisions 12 and 25 (spanning 13 versions)
Revision 12 as of 2014-10-17 14:39:06
Size: 2785
Comment: link to getting started
Revision 25 as of 2018-10-13 23:56:24
Size: 2633
Comment:
Deletions are marked like this. Additions are marked like this.
Line 4: Line 4:

[[https://gcc.gnu.org/bugzilla/buglist.cgi?keywords=easyhack&list_id=113937&resolution=---|Up-to-date list of Open EasyHacks directly from bugzilla]]

There is also a non-wiki list of beginner projects at [[http://gcc.gnu.org/projects/beginner.html]], however, it is very outdated and the projects are not that easy.

Other easy projects without a PR are (you can help by opening a PR for them and moving them to the list above):

 * Delete unused variables and functions. A list of potential candidates is [[http://gcc.gnu.org/ml/gcc/2010-05/msg00688.html|here]], current as of 2010-05-30. Note that some functions and variables there are not unused, for example, debugging output helpers.
 * Constify read-only variables. A list of potential candidates is [[http://gcc.gnu.org/ml/gcc/2010-05/msg00688.html|here]], current as of 2010-05-30.
 * Change the vectors in {{{genautomata.c}}} to be {{{sbitmap}}}s instead of the current adhoc implementation.
 * (C++ cleanup) is_overloaded_fn and friends in cp/tree.c could be simplified to take advantage of new OVERLOAD set semantics (Nathan Sidwell)


The list below was created before the auto-generated list above and may be a bit outdated.
Line 11: Line 25:
 * BUG:PR36312 (medium difficulty)
Line 17: Line 30:
 * BUG:PR49859 (easy)
 * BUG:PR48956 (easy)
Line 22: Line 33:
Line 25: Line 35:
Line 26: Line 37:

=== A patch exists but needs to be tested ===

 * Trivial patch:

   {{{#!highlight diff numbers=disable
Index: c-decl.c
===================================================================
--- c-decl.c (revision 216164)
+++ c-decl.c (working copy)
@@ -6754,7 +6754,6 @@
   tree types = 0;
   tree others = 0;
 
- static bool explained_incomplete_types = false;
   bool gave_void_only_once_err = false;
 
   arg_info->had_vla_unspec = current_scope->had_vla_unspec;
@@ -6857,19 +6856,12 @@
      {
        if (b->id)
   /* The %s will be one of 'struct', 'union', or 'enum'. */
- warning (0, "%<%s %E%> declared inside parameter list",
+ warning (0, "%<%s %E%> declared inside parameter list will not be visible outside of this function",
     keyword, b->id);
        else
   /* The %s will be one of 'struct', 'union', or 'enum'. */
- warning (0, "anonymous %s declared inside parameter list",
+ warning (0, "anonymous %s declared inside parameter list will not be visible outside of this function",
     keyword);
-
- if (!explained_incomplete_types)
- {
- warning (0, "its scope is only this definition or declaration,"
- " which is probably not what you want");
- explained_incomplete_types = true;
- }
      }
 
    tag.id = b->id;
}}}
Line 77: Line 47:
 * BUG:PR64431 (easy difficulty)
Line 88: Line 59:

Be sure to first read the basic steps for Contributing to GCC.

These bugs (also called Problem Reports) are great starting points for new contributors to GCC. If you have doubts or questions, don't be afraid to ask in the bugzilla page of each bug.

Up-to-date list of Open EasyHacks directly from bugzilla

There is also a non-wiki list of beginner projects at http://gcc.gnu.org/projects/beginner.html, however, it is very outdated and the projects are not that easy.

Other easy projects without a PR are (you can help by opening a PR for them and moving them to the list above):

  • Delete unused variables and functions. A list of potential candidates is here, current as of 2010-05-30. Note that some functions and variables there are not unused, for example, debugging output helpers.

  • Constify read-only variables. A list of potential candidates is here, current as of 2010-05-30.

  • Change the vectors in genautomata.c to be sbitmaps instead of the current adhoc implementation.

  • (C++ cleanup) is_overloaded_fn and friends in cp/tree.c could be simplified to take advantage of new OVERLOAD set semantics (Nathan Sidwell)

The list below was created before the auto-generated list above and may be a bit outdated.

C-family (bug affects both C and C++)

A patch exists but needs to be tested

Analyzed what needs to be fixed, but no patch

  • PR44209 (trivial)

  • PR49973 (easy)

  • PR60832 (easy)

  • PR62181 Expected new warning: "adding 'char' to a string does not append to the string" [-Wstring-plus-int] (easy)

  • PR53920 (medium difficulty)

C only

Analyzed what needs to be fixed, but no patch

  • PR23087 Misleading warning, "... differ in signedness"

C++ only

A patch exists but needs to be tested

A patch exists but needs to be updated

Analyzed what needs to be fixed, but no patch

Fortran

Analyzed what needs to be fixed, but no patch

None: EasyHacks (last edited 2019-04-11 09:41:05 by JonathanWakely)