Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

ldc doesn't quite work with dyaml shared object #136

Closed
russel opened this issue May 16, 2018 · 8 comments
Closed

ldc doesn't quite work with dyaml shared object #136

russel opened this issue May 16, 2018 · 8 comments

Comments

@russel
Copy link
Contributor

russel commented May 16, 2018

Anyone know how to solve this one?

ldc2 -I=. -Jsource/resources -J. -I/usr/include/d/gtkd-3/ -I/home/users/russel/Built/include/d -I/home/users/russel/Built/include/d/yaml -I/home/users/russel/Built/include/d -g -of=me-tv -L-L/usr/lib/x86_64-linux-gnu/ -L-lgtkd-3 -L-ldl -L-L/home/users/russel/Built/lib -L-ldinotify -L-L/home/users/russel/Built/lib -L-ldyaml source/about.d source/channel_names.d source/configuration.d source/control_window.d source/frontend_manager.d source/frontend_window.d source/inotify_daemon.d source/main.d source/preference_dialog.d source/preferences.d
/home/users/russel/Built/lib/libdyaml.so: undefined reference to `_D3std4conv__T7toCharsVii10TaVEQBd5ascii10LetterCasei1TmZQBrFNaNbNiNfmZ6Result5emptyMFNaNbNdNiNfZb'
/home/users/russel/Built/lib/libdyaml.so: undefined reference to `_D3std4conv__T7toCharsVii10TaVEQBd5ascii10LetterCasei1TmZQBrFNaNbNiNfmZ6Result8popFrontMFNaNbNiNfZv'
/home/users/russel/Built/lib/libdyaml.so: undefined reference to `_D3std4conv__T7toCharsVii10TaVEQBd5ascii10LetterCasei1TmZQBrFNaNbNiNfmZSQCsQCr__TQCpVii10TaVQCki1TmZQDiFNaNbNiNfmZ6Result'
/home/users/russel/Built/lib/libdyaml.so: undefined reference to `_D3std4conv__T7toCharsVii10TaVEQBd5ascii10LetterCasei1TmZQBrFNaNbNiNfmZ6Result6lengthMFNaNbNdNiNfZm'
/home/users/russel/Built/lib/libdyaml.so: undefined reference to `_D3std4conv__T7toCharsVii10TaVEQBd5ascii10LetterCasei1TmZQBrFNaNbNiNfmZ6Result5frontMFNaNbNdNiNfZa'
@ghost
Copy link

ghost commented May 16, 2018

The linker messages you get strangely look like those i have in an unrelated D project. I suspect a compiler or maybe phobos bug, it cant be randomly the same symbols:
mine are

dictionnary_suffixarray.d:(.text._D3std4conv__T8textImplTAyaTQeTQhTQkTQnTkZQBcFNaNbNfQBcQBfQBiQBlkZQBq[_D3std4conv__T8textImplTAyaTQeTQhTQkTQnTkZQBcFNaNbNfQBcQBfQBiQBlkZQBq]+0x151) : référence indéfinie vers « _D3std4conv__T7toCharsVii10TaVEQBd5ascii10LetterCasei1TkZQBrFNaNbNiNfkZSQCsQCr__TQCpVii10TaVQCki1TkZQDiFNaNbNiNfkZ6Result »
dictionnary_suffixarray.d:(.text._D3std4conv__T8textImplTAyaTQeTQhTQkTQnTkZQBcFNaNbNfQBcQBfQBiQBlkZQBq[_D3std4conv__T8textImplTAyaTQeTQhTQkTQnTkZQBcFNaNbNfQBcQBfQBiQBlkZQBq]+0x16d) : référence indéfinie vers « _D3std4conv__T7toCharsVii10TaVEQBd5ascii10LetterCasei1TkZQBrFNaNbNiNfkZ6Result5emptyMFNaNbNdNiNfZb »
dictionnary_suffixarray.d:(.text._D3std4conv__T8textImplTAyaTQeTQhTQkTQnTkZQBcFNaNbNfQBcQBfQBiQBlkZQBq[_D3std4conv__T8textImplTAyaTQeTQhTQkTQnTkZQBcFNaNbNfQBcQBfQBiQBlkZQBq]+0x184) : référence indéfinie vers « _D3std4conv__T7toCharsVii10TaVEQBd5ascii10LetterCasei1TkZQBrFNaNbNiNfkZ6Result5frontMFNaNbNdNiNfZa »
dictionnary_suffixarray.d:(.text._D3std4conv__T8textImplTAyaTQeTQhTQkTQnTkZQBcFNaNbNfQBcQBfQBiQBlkZQBq[_D3std4conv__T8textImplTAyaTQeTQhTQkTQnTkZQBcFNaNbNfQBcQBfQBiQBlkZQBq]+0x1c5) : référence indéfinie vers « _D3std4conv__T7toCharsVii10TaVEQBd5ascii10LetterCasei1TkZQBrFNaNbNiNfkZ6Result8popFrontMFNaNbNiNfZv »

as you can see the template instance is different but it's the same template.

@ghost
Copy link

ghost commented May 16, 2018

So i'm gonna close this because this is not a D-YAML bug.

If it's the same bug then when using the LDC based on latest 2.074.x front-end you should see the problem disappear.

@ghost ghost closed this as completed May 16, 2018
@russel
Copy link
Contributor Author

russel commented May 16, 2018

|> ldc2 -v
binary    /usr/bin/ldc2
version   1.8.0 (DMD v2.078.3, LLVM 5.0.2)
config    /etc/ldc2.conf (x86_64-pc-linux-gnu)
OVERVIEW: LDC - the LLVM D compiler

@ghost
Copy link

ghost commented May 16, 2018

Can you try with this one https://github.com/ldc-developers/ldc/releases/tag/v1.4.0 ?

@russel
Copy link
Contributor Author

russel commented May 16, 2018

Probably not as the Debian package is at 1.8.0.

@ghost
Copy link

ghost commented May 16, 2018

Maybe someone will have a workaround after all, but it's certainly the same issue.

@ghost ghost reopened this May 16, 2018
@russel
Copy link
Contributor Author

russel commented May 17, 2018

I'll raise it on the LDC list, to see if there is some insight to be had there.

@ghost
Copy link

ghost commented May 20, 2018

I close. Now it's sure that it's a compiler front-end issue. With DMD the "-allinst" option works as workaround, if LDC has an equivalent option try it.

@ghost ghost closed this as completed Jul 10, 2018
This issue was closed.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant