At the level that LLVM's LTO operates, no information about classes or objects is left, so LLVM itself can't really devirtualize C++ methods in most cases
I think this is a bug. There's dedicated metadata that's supposed to end up on the indirect call to list the possible targets and when that list of possible targets is this short it should be turning into a switch over concrete targets. Don't have time to dig into the IR now but it might be worth posting to the github llvm issues.
They don't make the compiler. GCC in very many places substitutes standard library names with intrinsics for the purposes of optimization or static analysis. I'm not aware of it doing so for ssize, but in principle this is a bad idea.
Likely that it supports the Supervisor execution environment from the riscv spec [1]. This means it can run the typical ring 0 and ring 3 for kernelspace and userspace respectively, and importantly the board supports virtual memory.
From the article: "New York Public Radio's investment in Pocket Casts was made possible, in part, by Cynthia King Vance and a grant from Carnegie Corporation of New York."
I don't think it was from donations, but I could be wrong
You can argue that donations to local NPR stations helps free up revenue for NPR the organization, but donations don't directly translate in to anything that NPR does.