Adriaan van Os wrote:
Frank Heckenbach wrote:
Adriaan van Os wrote:
While trying to build a Mach-O dynamically linked shared library with GPC and LD, I get the following error:
ld: common symbols not allowed with MH_DYLIB output format with the -multi_module option /Developer/Pascal/gpc321d11/lib/gcc-lib/powerpc-apple-darwin6.3/ 3.2.1// libgpc.a(filename.o) definition of common ___set_result_0__ (size 32) /Developer/Pascal/gpc321d11/lib/gcc-lib/powerpc-apple-darwin6.3/ 3.2.1// libgpc.a(filename.o) definition of common ___set_result_1__ (size 32) /Developer/Pascal/gpc321d11/lib/gcc-lib/powerpc-apple-darwin6.3/ 3.2.1// libgpc.a(filename.o) definition of common ___set_result_2__ (size 32) /Developer/Pascal/gpc321d11/lib/gcc-lib/powerpc-apple-darwin6.3/ 3.2.1// libgpc.a(filename.o) definition of common ___set_result_3__ (size 32)
My questions are: 1. Is there something special about symbols for sets ?
The special thing is that they're temporary variables that may occur in the values of constants (e.g. `const Foo = [a, b] + [c .. d]'). It would be nicer to avoid it. For `+', merging the set constructors would be easy, but for the other operators, it gets hairier ...
I hope I can fix this problem in the next release.
A quick test revealed that gpc-20030507 fixes it, am I correct ?
Fixes it for `+', works around it for other operators. Frank -- Frank Heckenbach, frank@g-n-u.de, http://fjf.gnu.de/, 7977168E GPC To-Do list, latest features, fixed bugs: http://www.gnu-pascal.de/todo.html GPC download signing key: 51FF C1F0 1A77 C6C2 4482 4DDC 117A 9773 7F88 1707