aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRoberto I <roberto@inf.puc-rio.br>2025-09-05 15:36:47 -0300
committerRoberto I <roberto@inf.puc-rio.br>2025-09-05 15:36:47 -0300
commit9ea06e61f20ae34974226074fc6123dbb54a07c2 (patch)
treefe3333a7b89490be71b26047a5bc2d836113bf72
parentffbcadfb4197213d55222bca3ecc52606cd980f4 (diff)
downloadlua-master.tar.gz
lua-master.tar.bz2
lua-master.zip
DetailsHEADmaster
- LUAMOD_API defined as 'extern "C"' in C++. - "ANSI C" is in fact "ISO C" (comments) - Removed option -std from makefile in testes/libs. (Easier to change to C++ for tests).
-rw-r--r--lapi.c2
-rw-r--r--lmathlib.c2
-rw-r--r--loslib.c2
-rw-r--r--luaconf.h6
-rw-r--r--testes/libs/lib11.c2
-rw-r--r--testes/libs/makefile2
6 files changed, 11 insertions, 5 deletions
diff --git a/lapi.c b/lapi.c
index 55e371dc..27fa5247 100644
--- a/lapi.c
+++ b/lapi.c
@@ -484,7 +484,7 @@ LUA_API lua_State *lua_tothread (lua_State *L, int idx) {
484 484
485/* 485/*
486** Returns a pointer to the internal representation of an object. 486** Returns a pointer to the internal representation of an object.
487** Note that ANSI C does not allow the conversion of a pointer to 487** Note that ISO C does not allow the conversion of a pointer to
488** function to a 'void*', so the conversion here goes through 488** function to a 'void*', so the conversion here goes through
489** a 'size_t'. (As the returned pointer is only informative, this 489** a 'size_t'. (As the returned pointer is only informative, this
490** conversion should not be a problem.) 490** conversion should not be a problem.)
diff --git a/lmathlib.c b/lmathlib.c
index 2f0f3d1b..a6b13f96 100644
--- a/lmathlib.c
+++ b/lmathlib.c
@@ -278,7 +278,7 @@ static int math_type (lua_State *L) {
278*/ 278*/
279 279
280/* 280/*
281** This code uses lots of shifts. ANSI C does not allow shifts greater 281** This code uses lots of shifts. ISO C does not allow shifts greater
282** than or equal to the width of the type being shifted, so some shifts 282** than or equal to the width of the type being shifted, so some shifts
283** are written in convoluted ways to match that restriction. For 283** are written in convoluted ways to match that restriction. For
284** preprocessor tests, it assumes a width of 32 bits, so the maximum 284** preprocessor tests, it assumes a width of 32 bits, so the maximum
diff --git a/loslib.c b/loslib.c
index 3f605028..b7a2b0d1 100644
--- a/loslib.c
+++ b/loslib.c
@@ -34,7 +34,7 @@
34#if defined(LUA_USE_WINDOWS) 34#if defined(LUA_USE_WINDOWS)
35#define LUA_STRFTIMEOPTIONS "aAbBcdHIjmMpSUwWxXyYzZ%" \ 35#define LUA_STRFTIMEOPTIONS "aAbBcdHIjmMpSUwWxXyYzZ%" \
36 "||" "#c#x#d#H#I#j#m#M#S#U#w#W#y#Y" /* two-char options */ 36 "||" "#c#x#d#H#I#j#m#M#S#U#w#W#y#Y" /* two-char options */
37#elif defined(LUA_USE_C89) /* ANSI C 89 (only 1-char options) */ 37#elif defined(LUA_USE_C89) /* C89 (only 1-char options) */
38#define LUA_STRFTIMEOPTIONS "aAbBcdHIjmMpSUwWxXyYZ%" 38#define LUA_STRFTIMEOPTIONS "aAbBcdHIjmMpSUwWxXyYZ%"
39#else /* C99 specification */ 39#else /* C99 specification */
40#define LUA_STRFTIMEOPTIONS "aAbBcCdDeFgGhHIjmMnprRStTuUVwWxXyYzZ%" \ 40#define LUA_STRFTIMEOPTIONS "aAbBcCdDeFgGhHIjmMnprRStTuUVwWxXyYzZ%" \
diff --git a/luaconf.h b/luaconf.h
index 1ac64328..96a77802 100644
--- a/luaconf.h
+++ b/luaconf.h
@@ -319,7 +319,13 @@
319** More often than not the libs go together with the core. 319** More often than not the libs go together with the core.
320*/ 320*/
321#define LUALIB_API LUA_API 321#define LUALIB_API LUA_API
322
323#if defined(__cplusplus)
324/* Lua uses the "C name" when calling open functions */
325#define LUAMOD_API extern "C"
326#else
322#define LUAMOD_API LUA_API 327#define LUAMOD_API LUA_API
328#endif
323 329
324/* }================================================================== */ 330/* }================================================================== */
325 331
diff --git a/testes/libs/lib11.c b/testes/libs/lib11.c
index 377d0c48..6a85f4d6 100644
--- a/testes/libs/lib11.c
+++ b/testes/libs/lib11.c
@@ -1,7 +1,7 @@
1#include "lua.h" 1#include "lua.h"
2 2
3/* function from lib1.c */ 3/* function from lib1.c */
4int lib1_export (lua_State *L); 4LUAMOD_API int lib1_export (lua_State *L);
5 5
6LUAMOD_API int luaopen_lib11 (lua_State *L) { 6LUAMOD_API int luaopen_lib11 (lua_State *L) {
7 return lib1_export(L); 7 return lib1_export(L);
diff --git a/testes/libs/makefile b/testes/libs/makefile
index 4e7f965e..cf4c6881 100644
--- a/testes/libs/makefile
+++ b/testes/libs/makefile
@@ -5,7 +5,7 @@ LUA_DIR = ../../
5CC = gcc 5CC = gcc
6 6
7# compilation should generate Dynamic-Link Libraries 7# compilation should generate Dynamic-Link Libraries
8CFLAGS = -Wall -std=c99 -O2 -I$(LUA_DIR) -fPIC -shared 8CFLAGS = -Wall -O2 -I$(LUA_DIR) -fPIC -shared
9 9
10# libraries used by the tests 10# libraries used by the tests
11all: lib1.so lib11.so lib2.so lib21.so lib2-v2.so 11all: lib1.so lib11.so lib2.so lib21.so lib2-v2.so