This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: Projects for beginners
- To: Zack Weinberg <zackw at stanford dot edu>
- Subject: Re: Projects for beginners
- From: "Joseph S. Myers" <jsm28 at cam dot ac dot uk>
- Date: Wed, 31 Jan 2001 08:18:12 +0000 (GMT)
- cc: <gcc at gcc dot gnu dot org>
On Tue, 30 Jan 2001, Zack Weinberg wrote:
> Code cleanliness:
- Get rid of all remaining uses of bcopy (requires understanding the
code well enough to tell whether they should be memcpy or memmove).
- Then apply #pragma GCC poison to bcmp/bzero/bcopy/rindex
<URL:http://gcc.gnu.org/ml/gcc-patches/2000-11/msg00432.html>
- Move all flags shared between C and C++ to c-common.[ch]. (Make
sure that the flags in question are genuinely used in both front ends
- when I started looking at this, the first case I found was that
-fcond-mismatch was ignored for C++ - so I documented that instead.)
> Configuration and build issues:
- Reverse the sense of TARGET_MEM_FUNCTIONS - make the default to use
ISO C functions, requiring TARGET_BSD_FUNCTIONS to be defined to do
otherwise. (Needs careful checking that every target keeps the same
behaviour.)
> Find places that are still using obsolete system-category macros (USG,
> BSTRING, etc) and autoconfiscate them.
I got rid of BSTRING.
> - Check out autoconf 2.50 and see if it will help.
In particular, fix it so autoconf 2.50 can be used with GCC at all (and
probably change the required version from 2.13 to 2.50).
> Port cleanup:
- Some ports use their own manual checks for __-prefixed attribute
names and should be changed to use is_attribute_p instead.
> Migrate default definitions of tm.h macros out of random source files
> into defaults.h.
e.g. WCHAR_TYPE and similar, at present in both cppdefault.h and
c-common.c.
> Documentation:
- Read the whole manual, become familiar with what's documented where
and report or fix any problems you see. Then shout at anyone who
sends a patch to gcc-patches without including all relevant
documentation changes
> Ditto, every command line switch.
> - May involve hunting down whoever added whichever
> thing it is and torturing information out of them.
c/761 and c++/862 list those undocumented options I found in the C/C++
front ends, but not those appearing only in specs or target-specific
options.
Miscellaneous:
- Install all Texinfo manuals (objc-features.texi,
libstdc++-v3/porting.texi not yet done) - needs proper handling of the
configure checks for available makeinfo to use outside the gcc
subdirectory.
- Implemement -std for the C++ front end. Add a -std value equivalent
to -traditional to the C front end.
- Adapt the send-pr manpage in GNATS to a manpage for gccbug.
--
Joseph S. Myers
jsm28@cam.ac.uk