Front page | perl.cvs.parrot |
Postings from January 2009
[svn:parrot] r34772 - in trunk: include/parrot src
From:
infinoid
Date:
January 1, 2009 15:54
Subject:
[svn:parrot] r34772 - in trunk: include/parrot src
Message ID:
20090101235403.B0A35CBA08@x12.develooper.com
Author: infinoid
Date: Thu Jan 1 15:54:03 2009
New Revision: 34772
Modified:
trunk/include/parrot/list.h
trunk/src/list.c
Log:
[core] The "item" parameter for list_set(), list_push() and list_assign()
needs to be NULLOK.
(Found by the headerizer NONNULL assert() patch, see Trac #105.)
Modified: trunk/include/parrot/list.h
==============================================================================
--- trunk/include/parrot/list.h (original)
+++ trunk/include/parrot/list.h Thu Jan 1 15:54:03 2009
@@ -88,11 +88,10 @@
void list_assign(PARROT_INTERP,
ARGMOD(List *list),
INTVAL idx,
- ARGIN(void *item),
+ ARGIN_NULLOK(void *item),
int type)
__attribute__nonnull__(1)
__attribute__nonnull__(2)
- __attribute__nonnull__(4)
FUNC_MODIFIES(*list);
PARROT_EXPORT
@@ -172,11 +171,10 @@
PARROT_EXPORT
void list_push(PARROT_INTERP,
ARGMOD(List *list),
- ARGIN(void *item),
+ ARGIN_NULLOK(void *item),
int type)
__attribute__nonnull__(1)
__attribute__nonnull__(2)
- __attribute__nonnull__(3)
FUNC_MODIFIES(*list);
PARROT_EXPORT
@@ -226,8 +224,7 @@
#define ASSERT_ARGS_ld
#define ASSERT_ARGS_list_assign assert(interp); \
- assert(list); \
- assert(item);
+ assert(list);
#define ASSERT_ARGS_list_clone assert(interp); \
assert(other);
#define ASSERT_ARGS_list_delete assert(interp); \
@@ -249,8 +246,7 @@
#define ASSERT_ARGS_list_pop assert(interp); \
assert(list);
#define ASSERT_ARGS_list_push assert(interp); \
- assert(list); \
- assert(item);
+ assert(list);
#define ASSERT_ARGS_list_set_length assert(interp); \
assert(list);
#define ASSERT_ARGS_list_shift assert(interp); \
Modified: trunk/src/list.c
==============================================================================
--- trunk/src/list.c (original)
+++ trunk/src/list.c Thu Jan 1 15:54:03 2009
@@ -250,12 +250,11 @@
static void list_set(PARROT_INTERP,
ARGMOD(List *list),
- ARGIN(void *item),
+ ARGIN_NULLOK(void *item),
INTVAL type,
INTVAL idx)
__attribute__nonnull__(1)
__attribute__nonnull__(2)
- __attribute__nonnull__(3)
FUNC_MODIFIES(*list);
static UINTVAL rebuild_chunk_list(PARROT_INTERP, ARGMOD(List *list))
@@ -304,8 +303,7 @@
#define ASSERT_ARGS_list_item assert(interp); \
assert(list);
#define ASSERT_ARGS_list_set assert(interp); \
- assert(list); \
- assert(item);
+ assert(list);
#define ASSERT_ARGS_rebuild_chunk_list assert(interp); \
assert(list);
#define ASSERT_ARGS_rebuild_chunk_ptrs assert(list);
@@ -1087,7 +1085,8 @@
*/
static void
-list_set(PARROT_INTERP, ARGMOD(List *list), ARGIN(void *item), INTVAL type, INTVAL idx)
+list_set(PARROT_INTERP, ARGMOD(List *list), ARGIN_NULLOK(void *item),
+ INTVAL type, INTVAL idx)
{
const INTVAL oidx = idx;
List_chunk *chunk = get_chunk(interp, list, (UINTVAL *)&idx);
@@ -1788,7 +1787,7 @@
PARROT_EXPORT
void
-list_push(PARROT_INTERP, ARGMOD(List *list), ARGIN(void *item), int type)
+list_push(PARROT_INTERP, ARGMOD(List *list), ARGIN_NULLOK(void *item), int type)
{
const INTVAL idx = list->start + list->length++;
@@ -1910,7 +1909,7 @@
PARROT_EXPORT
void
-list_assign(PARROT_INTERP, ARGMOD(List *list), INTVAL idx, ARGIN(void *item), int type)
+list_assign(PARROT_INTERP, ARGMOD(List *list), INTVAL idx, ARGIN_NULLOK(void *item), int type)
{
const INTVAL length = list->length;
-
[svn:parrot] r34772 - in trunk: include/parrot src
by infinoid