This is the mail archive of the newlib@sourceware.org mailing list for the newlib project.
| Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
|---|---|---|
| Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |
| Other format: | [Raw text] | |
Hi Sebastian,
would you mind to resend the patches 1, 2, 4, 5, with subject length
restricted to +/- 72 chars? There was only one such patch in your
previous patchset, so I fixed that myself.
Thanks,
Corinna
On Apr 4 10:34, Sebastian Huber wrote:
> From: lstewart <lstewart@FreeBSD.org>
>
> Kudos to phk for suggesting the "FROM" suffix instead of my original proposal.
>
> Reviewed by: jhb (previous version), rpaulo
> MFC after: 1 week
> ---
> newlib/libc/include/sys/queue.h | 53 +++++++++++++++++++++++++++++++++++++++++
> 1 file changed, 53 insertions(+)
>
> diff --git a/newlib/libc/include/sys/queue.h b/newlib/libc/include/sys/queue.h
> index 4bc7dac..7a5bc79 100644
> --- a/newlib/libc/include/sys/queue.h
> +++ b/newlib/libc/include/sys/queue.h
> @@ -88,9 +88,13 @@
> * _PREV - + - +
> * _LAST - - + +
> * _FOREACH + + + +
> + * _FOREACH_FROM + + + +
> * _FOREACH_SAFE + + + +
> + * _FOREACH_FROM_SAFE + + + +
> * _FOREACH_REVERSE - - - +
> + * _FOREACH_REVERSE_FROM - - - +
> * _FOREACH_REVERSE_SAFE - - - +
> + * _FOREACH_REVERSE_FROM_SAFE - - - +
> * _INSERT_HEAD + + + +
> * _INSERT_BEFORE - + - +
> * _INSERT_AFTER + + + +
> @@ -167,11 +171,21 @@ struct { \
> (var); \
> (var) = SLIST_NEXT((var), field))
>
> +#define SLIST_FOREACH_FROM(var, head, field) \
> + for ((var) = ((var) ? (var) : SLIST_FIRST((head))); \
> + (var); \
> + (var) = SLIST_NEXT((var), field))
> +
> #define SLIST_FOREACH_SAFE(var, head, field, tvar) \
> for ((var) = SLIST_FIRST((head)); \
> (var) && ((tvar) = SLIST_NEXT((var), field), 1); \
> (var) = (tvar))
>
> +#define SLIST_FOREACH_FROM_SAFE(var, head, field, tvar) \
> + for ((var) = ((var) ? (var) : SLIST_FIRST((head))); \
> + (var) && ((tvar) = SLIST_NEXT((var), field), 1); \
> + (var) = (tvar))
> +
> #define SLIST_FOREACH_PREVPTR(var, varp, head, field) \
> for ((varp) = &SLIST_FIRST((head)); \
> ((var) = *(varp)) != NULL; \
> @@ -259,12 +273,21 @@ struct { \
> (var); \
> (var) = STAILQ_NEXT((var), field))
>
> +#define STAILQ_FOREACH_FROM(var, head, field) \
> + for ((var) = ((var) ? (var) : STAILQ_FIRST((head))); \
> + (var); \
> + (var) = STAILQ_NEXT((var), field))
>
> #define STAILQ_FOREACH_SAFE(var, head, field, tvar) \
> for ((var) = STAILQ_FIRST((head)); \
> (var) && ((tvar) = STAILQ_NEXT((var), field), 1); \
> (var) = (tvar))
>
> +#define STAILQ_FOREACH_FROM_SAFE(var, head, field, tvar) \
> + for ((var) = ((var) ? (var) : STAILQ_FIRST((head))); \
> + (var) && ((tvar) = STAILQ_NEXT((var), field), 1); \
> + (var) = (tvar))
> +
> #define STAILQ_INIT(head) do { \
> STAILQ_FIRST((head)) = NULL; \
> (head)->stqh_last = &STAILQ_FIRST((head)); \
> @@ -394,11 +417,21 @@ struct { \
> (var); \
> (var) = LIST_NEXT((var), field))
>
> +#define LIST_FOREACH_FROM(var, head, field) \
> + for ((var) = ((var) ? (var) : LIST_FIRST((head))); \
> + (var); \
> + (var) = LIST_NEXT((var), field))
> +
> #define LIST_FOREACH_SAFE(var, head, field, tvar) \
> for ((var) = LIST_FIRST((head)); \
> (var) && ((tvar) = LIST_NEXT((var), field), 1); \
> (var) = (tvar))
>
> +#define LIST_FOREACH_FROM_SAFE(var, head, field, tvar) \
> + for ((var) = ((var) ? (var) : LIST_FIRST((head))); \
> + (var) && ((tvar) = LIST_NEXT((var), field), 1); \
> + (var) = (tvar))
> +
> #define LIST_INIT(head) do { \
> LIST_FIRST((head)) = NULL; \
> } while (0)
> @@ -531,21 +564,41 @@ struct { \
> (var); \
> (var) = TAILQ_NEXT((var), field))
>
> +#define TAILQ_FOREACH_FROM(var, head, field) \
> + for ((var) = ((var) ? (var) : TAILQ_FIRST((head))); \
> + (var); \
> + (var) = TAILQ_NEXT((var), field))
> +
> #define TAILQ_FOREACH_SAFE(var, head, field, tvar) \
> for ((var) = TAILQ_FIRST((head)); \
> (var) && ((tvar) = TAILQ_NEXT((var), field), 1); \
> (var) = (tvar))
>
> +#define TAILQ_FOREACH_FROM_SAFE(var, head, field, tvar) \
> + for ((var) = ((var) ? (var) : TAILQ_FIRST((head))); \
> + (var) && ((tvar) = TAILQ_NEXT((var), field), 1); \
> + (var) = (tvar))
> +
> #define TAILQ_FOREACH_REVERSE(var, head, headname, field) \
> for ((var) = TAILQ_LAST((head), headname); \
> (var); \
> (var) = TAILQ_PREV((var), headname, field))
>
> +#define TAILQ_FOREACH_REVERSE_FROM(var, head, headname, field) \
> + for ((var) = ((var) ? (var) : TAILQ_LAST((head), headname)); \
> + (var); \
> + (var) = TAILQ_PREV((var), headname, field))
> +
> #define TAILQ_FOREACH_REVERSE_SAFE(var, head, headname, field, tvar) \
> for ((var) = TAILQ_LAST((head), headname); \
> (var) && ((tvar) = TAILQ_PREV((var), headname, field), 1); \
> (var) = (tvar))
>
> +#define TAILQ_FOREACH_REVERSE_FROM_SAFE(var, head, headname, field, tvar) \
> + for ((var) = ((var) ? (var) : TAILQ_LAST((head), headname)); \
> + (var) && ((tvar) = TAILQ_PREV((var), headname, field), 1); \
> + (var) = (tvar))
> +
> #define TAILQ_INIT(head) do { \
> TAILQ_FIRST((head)) = NULL; \
> (head)->tqh_last = &TAILQ_FIRST((head)); \
> --
> 1.8.4.5
--
Corinna Vinschen
Cygwin Maintainer
Red Hat
Attachment:
signature.asc
Description: PGP signature
| Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
|---|---|---|
| Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |