xref: /netbsd-src/external/gpl3/gcc.old/dist/libiberty/strrchr.c (revision 1debfc3d3fad8af6f31804271c18e67f77b4d718)
1*1debfc3dSmrg /* Portable version of strrchr().
2*1debfc3dSmrg    This function is in the public domain. */
3*1debfc3dSmrg 
4*1debfc3dSmrg /*
5*1debfc3dSmrg 
6*1debfc3dSmrg @deftypefn Supplemental char* strrchr (const char *@var{s}, int @var{c})
7*1debfc3dSmrg 
8*1debfc3dSmrg Returns a pointer to the last occurrence of the character @var{c} in
9*1debfc3dSmrg the string @var{s}, or @code{NULL} if not found.  If @var{c} is itself the
10*1debfc3dSmrg null character, the results are undefined.
11*1debfc3dSmrg 
12*1debfc3dSmrg @end deftypefn
13*1debfc3dSmrg 
14*1debfc3dSmrg */
15*1debfc3dSmrg 
16*1debfc3dSmrg #include <ansidecl.h>
17*1debfc3dSmrg 
18*1debfc3dSmrg char *
strrchr(register const char * s,int c)19*1debfc3dSmrg strrchr (register const char *s, int c)
20*1debfc3dSmrg {
21*1debfc3dSmrg   char *rtnval = 0;
22*1debfc3dSmrg 
23*1debfc3dSmrg   do {
24*1debfc3dSmrg     if (*s == c)
25*1debfc3dSmrg       rtnval = (char*) s;
26*1debfc3dSmrg   } while (*s++);
27*1debfc3dSmrg   return (rtnval);
28*1debfc3dSmrg }
29