unsigned int -> size_t

master
leitner 17 years ago
parent 67a8f54b63
commit 34c8462dea

@ -4,6 +4,13 @@
int stralloc_catm_internal(stralloc* sa, ...) { int stralloc_catm_internal(stralloc* sa, ...) {
va_list a; va_list a;
const char* s; const char* s;
size_t n=0;
va_start(a,sa);
while ((s=va_arg(a,const char*)))
n += strlen(s);
va_end(a);
stralloc_readyplus(sa,n);
va_start(a,sa); va_start(a,sa);
while ((s=va_arg(a,const char*))) while ((s=va_arg(a,const char*)))
if (stralloc_cats(sa,s)==0) { if (stralloc_cats(sa,s)==0) {

@ -1,7 +1,7 @@
#include <stralloc.h> #include <stralloc.h>
int stralloc_chomp(stralloc* sa) { int stralloc_chomp(stralloc* sa) {
unsigned int max=sa->len; size_t max=sa->len;
if (max>0) { if (max>0) {
register char x; register char x;
--max; --max;

@ -3,7 +3,7 @@
#include "str.h" #include "str.h"
extern int stralloc_diff(const stralloc* a,const stralloc* b) { extern int stralloc_diff(const stralloc* a,const stralloc* b) {
register unsigned int i; register size_t i;
register int j; register int j;
for (i=0;;++i) { for (i=0;;++i) {
if (i==a->len) return i==b->len?0:-1; if (i==b->len) return 1; if (i==a->len) return i==b->len?0:-1; if (i==b->len) return 1;

@ -3,7 +3,7 @@
#include "str.h" #include "str.h"
extern int stralloc_diffs(const stralloc* a,const char* b) { extern int stralloc_diffs(const stralloc* a,const char* b) {
register unsigned long int i; register size_t i;
register int j; register int j;
for (i=0;;++i) { for (i=0;;++i) {
if (i==a->len) return (!b[i])?0:-1; if (!b[i]) return 1; if (i==a->len) return (!b[i])?0:-1; if (!b[i]) return 1;

@ -8,7 +8,7 @@
* bytes of space, copies the old string into the new space, frees the * bytes of space, copies the old string into the new space, frees the
* old space, and returns 1. Note that this changes sa.s. */ * old space, and returns 1. Note that this changes sa.s. */
int stralloc_ready(stralloc *sa,size_t len) { int stralloc_ready(stralloc *sa,size_t len) {
register int wanted=len+(len>>3)+30; /* heuristic from djb */ register size_t wanted=len+(len>>3)+30; /* heuristic from djb */
if (!sa->s || sa->a<len) { if (!sa->s || sa->a<len) {
register char* tmp; register char* tmp;
if (!(tmp=realloc(sa->s,wanted))) if (!(tmp=realloc(sa->s,wanted)))

@ -3,7 +3,7 @@
#include "str.h" #include "str.h"
extern int stralloc_starts(stralloc *sa,const char *in) { extern int stralloc_starts(stralloc *sa,const char *in) {
register unsigned long int len=str_len(in); register size_t len=str_len(in);
return (len<=sa->len && !byte_diff(sa->s,len,in)); return (len<=sa->len && !byte_diff(sa->s,len,in));
} }

@ -0,0 +1,33 @@
#ifndef _VA_NARG_H
#define _VA_NARG_H
/* Idea from Laurent Deniau,
* http://groups.google.com/group/comp.std.c/browse_thread/thread/77ee8c8f92e4a3fb/346fc464319b1ee5?lnk=st&q=&rnum=1#346fc464319b1ee5
*/
/* The __VA_NARG__ macro returns the number of arguments that have been
* passed to it.
*/
#define __VA_NARG__(...) \
PP_NARG_(__VA_ARGS__,PP_RSEQ_N())
#define PP_NARG_(...) \
PP_ARG_N(__VA_ARGS__)
#define PP_ARG_N( \
_1, _2, _3, _4, _5, _6, _7, _8, _9,_10, \
_11,_12,_13,_14,_15,_16,_17,_18,_19,_20, \
_21,_22,_23,_24,_25,_26,_27,_28,_29,_30, \
_31,_32,_33,_34,_35,_36,_37,_38,_39,_40, \
_41,_42,_43,_44,_45,_46,_47,_48,_49,_50, \
_51,_52,_53,_54,_55,_56,_57,_58,_59,_60, \
_61,_62,_63,N,...) N
#define PP_RSEQ_N() \
63,62,61,60, \
59,58,57,56,55,54,53,52,51,50, \
49,48,47,46,45,44,43,42,41,40, \
39,38,37,36,35,34,33,32,31,30, \
29,28,27,26,25,24,23,22,21,20, \
19,18,17,16,15,14,13,12,11,10, \
9,8,7,6,5,4,3,2,1,0
#endif
Loading…
Cancel
Save