aboutsummaryrefslogtreecommitdiffstats
path: root/memelem.c
diff options
context:
space:
mode:
Diffstat (limited to 'memelem.c')
-rw-r--r--memelem.c26
1 files changed, 13 insertions, 13 deletions
diff --git a/memelem.c b/memelem.c
index 7d9231d..3344cd8 100644
--- a/memelem.c
+++ b/memelem.c
@@ -8,46 +8,46 @@ libsimple_memelem(const void *hay_, const void *sub_, size_t width, size_t n)
{
switch (width) {
case 0:
- return (void *)hay_;
+ return REMOVE_CONST(hay_, void *);
case 1:
- return memchr(hay_, *(char *)sub_, n);
+ return memchr(hay_, *(const char *)sub_, n);
case 2:
{
- uint16_t *hay = (void *)hay_;
- uint16_t sub = *(uint16_t *)sub_;
+ const uint16_t *hay = hay_;
+ uint16_t sub = *(const uint16_t *)sub_;
for (; n--; hay++)
if (*hay == sub)
- return hay;
+ return REMOVE_CONST(hay, uint16_t *);
break;
}
case 4:
{
- uint32_t *hay = (void *)hay_;
- uint32_t sub = *(uint32_t *)sub_;
+ const uint32_t *hay = hay_;
+ uint32_t sub = *(const uint32_t *)sub_;
for (; n--; hay++)
if (*hay == sub)
- return hay;
+ return REMOVE_CONST(hay, uint32_t *);
break;
}
case 8:
{
- uint64_t *hay = (void *)hay_;
- uint64_t sub = *(uint64_t *)sub_;
+ const uint64_t *hay = hay_;
+ uint64_t sub = *(const uint64_t *)sub_;
for (; n--; hay++)
if (*hay == sub)
- return hay;
+ return REMOVE_CONST(hay, uint64_t *);
break;
}
default:
{
- char *hay = (void *)hay_;
+ const char *hay = hay_;
const char *sub = sub_;
size_t i;
for (; n--; hay += width) {
for (i = 0; i < width; i++)
if (hay[i] != sub[i])
goto next;
- return hay;
+ return REMOVE_CONST(hay, char *);
next:;
}
break;