Does anyone reading this have experience submitting bugs to the LLVM project? If I submit to the llvm-project github issues page is that a place that actually gets looked at?
Yes, this is still about fucking libunwind. I think I'm going to wind up filing five separate bugs on four separate projects by the time I'm done with this. And this may or may not actually get me any closer to actually being able to build programs with libc++
Okay, actually, here is a question. Has anyone reading this ever used the program `llvm-config`? Is llvm-config meant to be used with *clang*, or is it meant to be used when linking raw llvm with like idk IR or something? That is, is llvm-config a replacement for pkg-config used by llvm projects, or is it a different thing entirely?
@mcc “how do I link libllvm, which is actually 40 different libs, into my dotnet runtime? I use the flags llvm-config —libs tells me”
@directhex okay. but do you do this with clang, with lld, with llc, directly against the llvm libraries with some C# tooling?
@directhex sorry i mean like, what program do you pass those flags to?

@mcc @directhex it's for programs that want to use the LLVM C++ API or libclang, so basically custom tooling for C or programming language implementations.

I've used llvm-config via llvm-sys to obtain a C AST for a C-to-Rust transpiler, and make it link my patched libclang fork.

It's just a take on pkg-config, avoiding pkg-config's limitations and inconsistent support. libpng-config exists for the same reasons.

https://gitlab.com/taricorp/llvm-sys.rs/-/blob/main/build.rs?ref_type=heads

build.rs · main · Peter Marheine / llvm-sys.rs · GitLab

Rust bindings to LLVM's C API.

GitLab
@mcc it really just is pkg-config for LLVM libs. Pass values to clang or g++ or whatever's appropriate for a set of -I or -L flags
@mcc I absolutely don't understand about 90% of what you've posted, here. I'm an old guy looking for an alternative to the BS site that FB has become, but, maybe, this site is for the very high tech inclined folks.
@MilesFromNowhere72 Haha, yeah, this account is about 30-50% computer programming by volume. On the bright side if I ever get the programming WORKING I will produce some beepy music from it
@MilesFromNowhere72 @mcc heh — if it makes you feel better, I'm a programmer and a linux nerd and I don't understand 90% of this either. This is C programming talk. I don't code in C.

@mcc llvm-config is only for linking against LLVM as a library, when you want to use functions with names like LLVMModuleCreateWithName.

[Many binary distributions of LLVM (reasonably) don't include llvm-config, which is a common source of confusion among users of my llvm-sys bindings crate which needs llvm-config.]

@mcc yeah that's the official bug reporting channel now
@mcc lol, I was going to say "I thought they used Phabricator", but no, they've migrated to GitHub. And it looks like that was back in 2019. I'm pretty out of date.

@mcc I did once. After spending days following their rules and jumping through their hoops to get a minimised test case that showed a reproducible compiler crash, I got a response.

The response was “you’re using Apple’s supplied version, fuck you”.

Apple who is the main developer of llvm.

https://github.com/llvm/llvm-project/issues/87944

C++ parser crash with too many user-defined literals in an expression · Issue #87944 · llvm/llvm-project

clang-crash.zip The C++ parser crashes with "Illegal instruction" when compiling a C++ file with a very long expression consisting of user-defined literals. My use-case is in creating a bitstring f...

GitHub