summaryrefslogtreecommitdiffhomepage
path: root/libbb
diff options
context:
space:
mode:
authorYU Jincheng <shana@zju.edu.cn>2021-09-29 17:37:26 +0800
committerDenys Vlasenko <vda.linux@googlemail.com>2021-10-07 15:22:35 +0200
commit1f925038ab9c6bd8f6b3cd40ed7aab0ef10d898e (patch)
treea625455a60081738812f469de6a02010f0c5b252 /libbb
parent17e6fb06b3d36eae11575b226858e8474e2b46d3 (diff)
*: generalize "const trick"
While at it, change all "__asm__" to "asm" Co-authored-by: canyie <31466456+canyie@users.noreply.github.com> Signed-off-by: YU Jincheng <shana@zju.edu.cn> Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
Diffstat (limited to 'libbb')
-rw-r--r--libbb/appletlib.c3
-rw-r--r--libbb/lineedit.c5
2 files changed, 3 insertions, 5 deletions
diff --git a/libbb/appletlib.c b/libbb/appletlib.c
index 5c5d7eb95..bf26c99e9 100644
--- a/libbb/appletlib.c
+++ b/libbb/appletlib.c
@@ -247,8 +247,7 @@ void lbb_prepare(const char *applet
IF_FEATURE_INDIVIDUAL(, char **argv))
{
#ifdef bb_cached_errno_ptr
- (*(int **)not_const_pp(&bb_errno)) = get_perrno();
- barrier();
+ ASSIGN_CONST_PTR(bb_errno, get_perrno());
#endif
applet_name = applet;
diff --git a/libbb/lineedit.c b/libbb/lineedit.c
index a7a3ee103..3c87abcf9 100644
--- a/libbb/lineedit.c
+++ b/libbb/lineedit.c
@@ -192,7 +192,7 @@ struct lineedit_statics {
};
/* See lineedit_ptr_hack.c */
-extern struct lineedit_statics *const lineedit_ptr_to_statics;
+extern struct lineedit_statics *BB_GLOBAL_CONST lineedit_ptr_to_statics;
#define S (*lineedit_ptr_to_statics)
#define state (S.state )
@@ -214,8 +214,7 @@ extern struct lineedit_statics *const lineedit_ptr_to_statics;
#define delbuf (S.delbuf )
#define INIT_S() do { \
- (*(struct lineedit_statics**)not_const_pp(&lineedit_ptr_to_statics)) = xzalloc(sizeof(S)); \
- barrier(); \
+ ASSIGN_CONST_PTR(lineedit_ptr_to_statics, xzalloc(sizeof(S))); \
} while (0)
static void deinit_S(void)