Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commita378ba4

Browse files
committed
Add pg_nodiscard decorations to some functions
Especially for the list API such as lappend() forgetting to assign thereturn value is a common problem.Reviewed-by: Michael Paquier <michael@paquier.xyz>Discussion:https://www.postgresql.org/message-id/flat/e3753562-99cd-b65f-5aca-687dfd1ec2fc@2ndquadrant.com
1 parentc617aea commita378ba4

File tree

2 files changed

+33
-33
lines changed

2 files changed

+33
-33
lines changed

‎src/include/nodes/pg_list.h‎

Lines changed: 31 additions & 31 deletions
Original file line numberDiff line numberDiff line change
@@ -521,36 +521,36 @@ extern List *list_make3_impl(NodeTag t, ListCell datum1, ListCell datum2,
521521
externList*list_make4_impl(NodeTagt,ListCelldatum1,ListCelldatum2,
522522
ListCelldatum3,ListCelldatum4);
523523

524-
externList*lappend(List*list,void*datum);
525-
externList*lappend_int(List*list,intdatum);
526-
externList*lappend_oid(List*list,Oiddatum);
524+
externpg_nodiscardList*lappend(List*list,void*datum);
525+
externpg_nodiscardList*lappend_int(List*list,intdatum);
526+
externpg_nodiscardList*lappend_oid(List*list,Oiddatum);
527527

528-
externList*list_insert_nth(List*list,intpos,void*datum);
529-
externList*list_insert_nth_int(List*list,intpos,intdatum);
530-
externList*list_insert_nth_oid(List*list,intpos,Oiddatum);
528+
externpg_nodiscardList*list_insert_nth(List*list,intpos,void*datum);
529+
externpg_nodiscardList*list_insert_nth_int(List*list,intpos,intdatum);
530+
externpg_nodiscardList*list_insert_nth_oid(List*list,intpos,Oiddatum);
531531

532-
externList*lcons(void*datum,List*list);
533-
externList*lcons_int(intdatum,List*list);
534-
externList*lcons_oid(Oiddatum,List*list);
532+
externpg_nodiscardList*lcons(void*datum,List*list);
533+
externpg_nodiscardList*lcons_int(intdatum,List*list);
534+
externpg_nodiscardList*lcons_oid(Oiddatum,List*list);
535535

536-
externList*list_concat(List*list1,constList*list2);
537-
externList*list_concat_copy(constList*list1,constList*list2);
536+
externpg_nodiscardList*list_concat(List*list1,constList*list2);
537+
externpg_nodiscardList*list_concat_copy(constList*list1,constList*list2);
538538

539-
externList*list_truncate(List*list,intnew_size);
539+
externpg_nodiscardList*list_truncate(List*list,intnew_size);
540540

541541
externboollist_member(constList*list,constvoid*datum);
542542
externboollist_member_ptr(constList*list,constvoid*datum);
543543
externboollist_member_int(constList*list,intdatum);
544544
externboollist_member_oid(constList*list,Oiddatum);
545545

546-
externList*list_delete(List*list,void*datum);
547-
externList*list_delete_ptr(List*list,void*datum);
548-
externList*list_delete_int(List*list,intdatum);
549-
externList*list_delete_oid(List*list,Oiddatum);
550-
externList*list_delete_first(List*list);
551-
externList*list_delete_last(List*list);
552-
externList*list_delete_nth_cell(List*list,intn);
553-
externList*list_delete_cell(List*list,ListCell*cell);
546+
externpg_nodiscardList*list_delete(List*list,void*datum);
547+
externpg_nodiscardList*list_delete_ptr(List*list,void*datum);
548+
externpg_nodiscardList*list_delete_int(List*list,intdatum);
549+
externpg_nodiscardList*list_delete_oid(List*list,Oiddatum);
550+
externpg_nodiscardList*list_delete_first(List*list);
551+
externpg_nodiscardList*list_delete_last(List*list);
552+
externpg_nodiscardList*list_delete_nth_cell(List*list,intn);
553+
externpg_nodiscardList*list_delete_cell(List*list,ListCell*cell);
554554

555555
externList*list_union(constList*list1,constList*list2);
556556
externList*list_union_ptr(constList*list1,constList*list2);
@@ -567,24 +567,24 @@ extern List *list_difference_ptr(const List *list1, const List *list2);
567567
externList*list_difference_int(constList*list1,constList*list2);
568568
externList*list_difference_oid(constList*list1,constList*list2);
569569

570-
externList*list_append_unique(List*list,void*datum);
571-
externList*list_append_unique_ptr(List*list,void*datum);
572-
externList*list_append_unique_int(List*list,intdatum);
573-
externList*list_append_unique_oid(List*list,Oiddatum);
570+
externpg_nodiscardList*list_append_unique(List*list,void*datum);
571+
externpg_nodiscardList*list_append_unique_ptr(List*list,void*datum);
572+
externpg_nodiscardList*list_append_unique_int(List*list,intdatum);
573+
externpg_nodiscardList*list_append_unique_oid(List*list,Oiddatum);
574574

575-
externList*list_concat_unique(List*list1,constList*list2);
576-
externList*list_concat_unique_ptr(List*list1,constList*list2);
577-
externList*list_concat_unique_int(List*list1,constList*list2);
578-
externList*list_concat_unique_oid(List*list1,constList*list2);
575+
externpg_nodiscardList*list_concat_unique(List*list1,constList*list2);
576+
externpg_nodiscardList*list_concat_unique_ptr(List*list1,constList*list2);
577+
externpg_nodiscardList*list_concat_unique_int(List*list1,constList*list2);
578+
externpg_nodiscardList*list_concat_unique_oid(List*list1,constList*list2);
579579

580580
externvoidlist_deduplicate_oid(List*list);
581581

582582
externvoidlist_free(List*list);
583583
externvoidlist_free_deep(List*list);
584584

585-
externList*list_copy(constList*list);
586-
externList*list_copy_tail(constList*list,intnskip);
587-
externList*list_copy_deep(constList*oldlist);
585+
externpg_nodiscardList*list_copy(constList*list);
586+
externpg_nodiscardList*list_copy_tail(constList*list,intnskip);
587+
externpg_nodiscardList*list_copy_deep(constList*oldlist);
588588

589589
typedefint (*list_sort_comparator) (constListCell*a,constListCell*b);
590590
externvoidlist_sort(List*list,list_sort_comparatorcmp);

‎src/include/utils/palloc.h‎

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -77,7 +77,7 @@ extern void *MemoryContextAllocExtended(MemoryContext context,
7777
externvoid*palloc(Sizesize);
7878
externvoid*palloc0(Sizesize);
7979
externvoid*palloc_extended(Sizesize,intflags);
80-
externvoid*repalloc(void*pointer,Sizesize);
80+
externpg_nodiscardvoid*repalloc(void*pointer,Sizesize);
8181
externvoidpfree(void*pointer);
8282

8383
/*
@@ -95,7 +95,7 @@ extern void pfree(void *pointer);
9595

9696
/* Higher-limit allocators. */
9797
externvoid*MemoryContextAllocHuge(MemoryContextcontext,Sizesize);
98-
externvoid*repalloc_huge(void*pointer,Sizesize);
98+
externpg_nodiscardvoid*repalloc_huge(void*pointer,Sizesize);
9999

100100
/*
101101
* Although this header file is nominally backend-only, certain frontend

0 commit comments

Comments
 (0)

[8]ページ先頭

©2009-2025 Movatter.jp