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: Autoincrement examples


Bernd Schmidt writes:
 > > I also have patches for the rest of the gcc infrastructure to handle
 > > {PRE,POST}_MODIFY if you are interested.
 > 
 > I am.

Here goes...

begin 644 postmod.patch.gz
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
5!XDG(F^PRTS.X.("`(321;KK;P``
`
end


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