diff --git a/glnx-macros.h b/glnx-macros.h
index 700fc75ceed0ab1248a95e4fe03abb8b8bc6c6e9..7b3afd4fd52c02023ee910338c4d1888f03b672b 100644
--- a/glnx-macros.h
+++ b/glnx-macros.h
@@ -52,7 +52,7 @@ G_BEGIN_DECLS
                 unsigned _i_;                                           \
                 for (_i_ = 0; _i_ < G_N_ELEMENTS(_appendees_) && _appendees_[_i_]; _i_++) \
                         _len_ += strlen(_appendees_[_i_]);              \
-                _p_ = _d_ = alloca(_len_ + 1);                          \
+                _p_ = _d_ = (char*) alloca(_len_ + 1);                          \
                 for (_i_ = 0; _i_ < G_N_ELEMENTS(_appendees_) && _appendees_[_i_]; _i_++) \
                         _p_ = stpcpy(_p_, _appendees_[_i_]);            \
                 *_p_ = 0;                                               \