This is the mail archive of the gcc@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

Re: Projects for beginners


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


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]