lua-users home
lua-l archive

[Date Prev][Date Next][Thread Prev][Thread Next] [Date Index] [Thread Index]


Hi,

Maybe I don't totally understand the problem, but could this be solved
by just making buffer_init a static function?

Buffer_init is a function exported from one of LuaSocket's
modules, used by other LuaSocket modules, so it can't be
made static. However, there is no reason for this function
to be visible from outside of the LuaSocket library.

On Windows, the default behavior of dynamic libraries is to
export only the symbols that are specifically marked as
such.

On Unix, the default behavior is to export every extern
symbol. Starting with gcc 4.0, it is trivial to change this
default and make only luaopen_socket visible. This would
eliminate any possible conflicts.

Maybe I should change the makefile to use this gcc 4.0
feature. At any rate, I think the package maintainers may
want to have a say on this.

The alternative of using a prefix to all LuaSocket symbols seems to be an uglier "solution" to the problem.

Regards,
Diego