diff --git a/py/builtinimport.c b/py/builtinimport.c index 795d9fd5e1ace2612bbe01095ce51061df5960fd..44ba4d5541567ca8b121aebf45cd5d35ad1f4b2c 100644 --- a/py/builtinimport.c +++ b/py/builtinimport.c @@ -29,7 +29,6 @@ #include <stdio.h> #include <string.h> #include <assert.h> -#include <alloca.h> #include "mpconfig.h" #include "nlr.h" diff --git a/py/objfun.c b/py/objfun.c index 77d57821b9bc7c70059476b045eb9abd59f50b00..5c085f883c905180ac1b0350ad394411635912cb 100644 --- a/py/objfun.c +++ b/py/objfun.c @@ -28,7 +28,6 @@ #include <stdbool.h> #include <string.h> #include <assert.h> -#include <alloca.h> #include "mpconfig.h" #include "nlr.h" diff --git a/py/runtime.c b/py/runtime.c index cdbf99d4a5d2438ff92d8f5b1e7bd40d6b79d56e..b1fd19499c03a03e71492345670284a509ce6b54 100644 --- a/py/runtime.c +++ b/py/runtime.c @@ -27,7 +27,6 @@ #include <stdio.h> #include <string.h> #include <assert.h> -#include <alloca.h> #include "mpconfig.h" #include "nlr.h" diff --git a/py/vm.c b/py/vm.c index d57fbf17e3bcf9a6b2a505b03bfb3ffc3dc9ce72..b24c85a4919b1312ff0a598c7c0704e8809cfbcd 100644 --- a/py/vm.c +++ b/py/vm.c @@ -28,7 +28,6 @@ #include <stdio.h> #include <string.h> #include <assert.h> -#include <alloca.h> #include "mpconfig.h" #include "nlr.h" diff --git a/unix/modsocket.c b/unix/modsocket.c index d6f732377d3a6ecb23fc84e1ba86946afca7b401..b1a34a39b8fcb88b0640e090f3d702e100b81200 100644 --- a/unix/modsocket.c +++ b/unix/modsocket.c @@ -37,7 +37,6 @@ #include <arpa/inet.h> #include <netdb.h> #include <errno.h> -#include <alloca.h> #include "mpconfig.h" #include "nlr.h" diff --git a/unix/mpconfigport.h b/unix/mpconfigport.h index ace7a419b4663b3441ae221ba733095b1812d87e..fe68b99341ff0437aca5410bf2da16bdeb9d98fb 100644 --- a/unix/mpconfigport.h +++ b/unix/mpconfigport.h @@ -98,3 +98,11 @@ extern const struct _mp_obj_fun_native_t mp_builtin_open_obj; #define MICROPY_PORT_BUILTINS \ { MP_OBJ_NEW_QSTR(MP_QSTR_input), (mp_obj_t)&mp_builtin_input_obj }, \ { MP_OBJ_NEW_QSTR(MP_QSTR_open), (mp_obj_t)&mp_builtin_open_obj }, + + +/* We need the correct header for alloca() */ +#ifdef __FreeBSD__ +#include <stdlib.h> +#else +#include <alloca.h> +#endif diff --git a/windows/mpconfigport.h b/windows/mpconfigport.h index 94304e20d2a60167cf973d7b64565f706c62375d..831a218fbc4d6284b6fba5b2adbcdc94ca8e636e 100644 --- a/windows/mpconfigport.h +++ b/windows/mpconfigport.h @@ -114,7 +114,7 @@ void msec_sleep(double msec); #include <stddef.h> //for NULL #include <assert.h> //for assert - +#include <alloca.h> //for alloca() // Functions implemented in platform code