summaryrefslogtreecommitdiff
path: root/glist.c
diff options
context:
space:
mode:
authorTor Lillqvist <tml@src.gnome.org>1999-08-17 17:41:01 +0000
committerTor Lillqvist <tml@src.gnome.org>1999-08-17 17:41:01 +0000
commit80c44ef391085fcb5b647ed7e5f4d0215f8fbec6 (patch)
treed6594a329edea3c5bf5dd82ff34d601ccfe5245e /glist.c
parent36a4ad37133e3f842a59b7c9f7930447de49dbe8 (diff)
downloadglib-80c44ef391085fcb5b647ed7e5f4d0215f8fbec6.tar.gz
Add a cast.
* glib.h (g_trash_stack_push): Add a cast. * gslist.c * glist.c: Make the inline functions static inline, and add separate extern wrappers. Not all compilers produce callable entry points for inline functions, even if gcc does.
Diffstat (limited to 'glist.c')
-rw-r--r--glist.c53
1 files changed, 36 insertions, 17 deletions
diff --git a/glist.c b/glist.c
index b4a89cdff..e719e1c9e 100644
--- a/glist.c
+++ b/glist.c
@@ -100,8 +100,8 @@ g_list_pop_allocator (void)
G_UNLOCK (current_allocator);
}
-inline GList*
-g_list_alloc (void)
+static inline GList*
+_g_list_alloc (void)
{
GList *list;
@@ -140,6 +140,12 @@ g_list_alloc (void)
return list;
}
+GList*
+g_list_alloc (void)
+{
+ return _g_list_alloc ();
+}
+
void
g_list_free (GList *list)
{
@@ -153,8 +159,8 @@ g_list_free (GList *list)
}
}
-inline void
-g_list_free_1 (GList *list)
+static inline void
+_g_list_free_1 (GList *list)
{
if (list)
{
@@ -166,6 +172,12 @@ g_list_free_1 (GList *list)
}
}
+void
+g_list_free_1 (GList *list)
+{
+ _g_list_free_1 (list);
+}
+
GList*
g_list_append (GList *list,
gpointer data)
@@ -173,7 +185,7 @@ g_list_append (GList *list,
GList *new_list;
GList *last;
- new_list = g_list_alloc ();
+ new_list = _g_list_alloc ();
new_list->data = data;
if (list)
@@ -195,7 +207,7 @@ g_list_prepend (GList *list,
{
GList *new_list;
- new_list = g_list_alloc ();
+ new_list = _g_list_alloc ();
new_list->data = data;
if (list)
@@ -229,7 +241,7 @@ g_list_insert (GList *list,
if (!tmp_list)
return g_list_append (list, data);
- new_list = g_list_alloc ();
+ new_list = _g_list_alloc ();
new_list->data = data;
if (tmp_list->prev)
@@ -285,7 +297,7 @@ g_list_remove (GList *list,
if (list == tmp)
list = list->next;
- g_list_free_1 (tmp);
+ _g_list_free_1 (tmp);
break;
}
@@ -293,9 +305,9 @@ g_list_remove (GList *list,
return list;
}
-inline GList*
-g_list_remove_link (GList *list,
- GList *link)
+static inline GList*
+_g_list_remove_link (GList *list,
+ GList *link)
{
if (link)
{
@@ -315,11 +327,18 @@ g_list_remove_link (GList *list,
}
GList*
+g_list_remove_link (GList *list,
+ GList *link)
+{
+ return _g_list_remove_link (list, link);
+}
+
+GList*
g_list_delete_link (GList *list,
GList *link)
{
- list = g_list_remove_link (list, link);
- g_list_free_1 (link);
+ list = _g_list_remove_link (list, link);
+ _g_list_free_1 (link);
return list;
}
@@ -333,13 +352,13 @@ g_list_copy (GList *list)
{
GList *last;
- new_list = g_list_alloc ();
+ new_list = _g_list_alloc ();
new_list->data = list->data;
last = new_list;
list = list->next;
while (list)
{
- last->next = g_list_alloc ();
+ last->next = _g_list_alloc ();
last->next->prev = last;
last = last->next;
last->data = list->data;
@@ -520,7 +539,7 @@ g_list_insert_sorted (GList *list,
if (!list)
{
- new_list = g_list_alloc();
+ new_list = _g_list_alloc ();
new_list->data = data;
return new_list;
}
@@ -533,7 +552,7 @@ g_list_insert_sorted (GList *list,
cmp = (*func) (data, tmp_list->data);
}
- new_list = g_list_alloc();
+ new_list = _g_list_alloc ();
new_list->data = data;
if ((!tmp_list->next) && (cmp > 0))