mirror of
https://git.savannah.gnu.org/git/bison.git
synced 2026-03-18 16:53:02 +00:00
cleanup.
* src/Sbitset.c (Sbitset__new_on_obstack): Use Sbitset instead of char*. (Sbitset__isEmpty): Use Sbitset instead of char*. * src/Sbitset.h (Sbitset): Make it a pointer to unsigned char instead of char. This helps to avoid casting errors. (Sbitset__or): Use Sbitset instead of char*.
This commit is contained in:
10
ChangeLog
10
ChangeLog
@@ -1,3 +1,13 @@
|
|||||||
|
2009-10-16 Joel E. Denny <jdenny@clemson.edu>
|
||||||
|
|
||||||
|
cleanup.
|
||||||
|
* src/Sbitset.c (Sbitset__new_on_obstack): Use Sbitset instead
|
||||||
|
of char*.
|
||||||
|
(Sbitset__isEmpty): Use Sbitset instead of char*.
|
||||||
|
* src/Sbitset.h (Sbitset): Make it a pointer to unsigned char
|
||||||
|
instead of char. This helps to avoid casting errors.
|
||||||
|
(Sbitset__or): Use Sbitset instead of char*.
|
||||||
|
|
||||||
2009-10-16 Joel E. Denny <jdenny@clemson.edu>
|
2009-10-16 Joel E. Denny <jdenny@clemson.edu>
|
||||||
|
|
||||||
portability: don't assume 8-bit bytes.
|
portability: don't assume 8-bit bytes.
|
||||||
|
|||||||
@@ -33,9 +33,9 @@ Sbitset__new (Sbitset__Index nbits)
|
|||||||
Sbitset
|
Sbitset
|
||||||
Sbitset__new_on_obstack (Sbitset__Index nbits, struct obstack *obstackp)
|
Sbitset__new_on_obstack (Sbitset__Index nbits, struct obstack *obstackp)
|
||||||
{
|
{
|
||||||
char *result;
|
Sbitset result;
|
||||||
char *ptr;
|
Sbitset ptr;
|
||||||
char *end;
|
Sbitset end;
|
||||||
aver (nbits);
|
aver (nbits);
|
||||||
result = obstack_alloc (obstackp, Sbitset__nbytes (nbits));
|
result = obstack_alloc (obstackp, Sbitset__nbytes (nbits));
|
||||||
for (ptr = result, end = result + Sbitset__nbytes (nbits); ptr < end; ++ptr)
|
for (ptr = result, end = result + Sbitset__nbytes (nbits); ptr < end; ++ptr)
|
||||||
@@ -52,7 +52,7 @@ Sbitset__delete (Sbitset self)
|
|||||||
bool
|
bool
|
||||||
Sbitset__isEmpty (Sbitset self, Sbitset__Index nbits)
|
Sbitset__isEmpty (Sbitset self, Sbitset__Index nbits)
|
||||||
{
|
{
|
||||||
char *last = self + Sbitset__nbytes (nbits) - 1;
|
Sbitset last = self + Sbitset__nbytes (nbits) - 1;
|
||||||
for (; self < last; ++self)
|
for (; self < last; ++self)
|
||||||
if (*self != 0)
|
if (*self != 0)
|
||||||
return false;
|
return false;
|
||||||
|
|||||||
@@ -20,7 +20,7 @@
|
|||||||
#ifndef SBITSET_H_
|
#ifndef SBITSET_H_
|
||||||
# define SBITSET_H_
|
# define SBITSET_H_
|
||||||
|
|
||||||
typedef char *Sbitset;
|
typedef unsigned char *Sbitset;
|
||||||
typedef size_t Sbitset__Index;
|
typedef size_t Sbitset__Index;
|
||||||
#define SBITSET__INDEX__CONVERSION_SPEC "zu"
|
#define SBITSET__INDEX__CONVERSION_SPEC "zu"
|
||||||
|
|
||||||
@@ -73,10 +73,10 @@ do { \
|
|||||||
/* NBITS is the size of every bitset. More than NBITS bits might be set. */
|
/* NBITS is the size of every bitset. More than NBITS bits might be set. */
|
||||||
#define Sbitset__or(SELF, OTHER1, OTHER2, NBITS) \
|
#define Sbitset__or(SELF, OTHER1, OTHER2, NBITS) \
|
||||||
do { \
|
do { \
|
||||||
char *ptr_self = (SELF); \
|
Sbitset ptr_self = (SELF); \
|
||||||
char *ptr_other1 = (OTHER1); \
|
Sbitset ptr_other1 = (OTHER1); \
|
||||||
char *ptr_other2 = (OTHER2); \
|
Sbitset ptr_other2 = (OTHER2); \
|
||||||
char *end_self = ptr_self + Sbitset__nbytes (NBITS); \
|
Sbitset end_self = ptr_self + Sbitset__nbytes (NBITS); \
|
||||||
for (; ptr_self < end_self; ++ptr_self, ++ptr_other1, ++ptr_other2) \
|
for (; ptr_self < end_self; ++ptr_self, ++ptr_other1, ++ptr_other2) \
|
||||||
*ptr_self = *ptr_other1 | *ptr_other2; \
|
*ptr_self = *ptr_other1 | *ptr_other2; \
|
||||||
} while(0)
|
} while(0)
|
||||||
|
|||||||
Reference in New Issue
Block a user