I think FunctionEx() is a better way to evolve an interface than setting different structure tags for the same old function.
-
-
Replying to @ID_AA_Carmack
Would love to see this solved through a permastable ABI for the subset of C++ including overloaded functions and templated types.
3 replies 0 retweets 15 likes -
Replying to @TimSweeneyEpic @ID_AA_Carmack
That’d require standardizing a full AST serialization scheme for the C++ language, because of decltype, etc. Search for “<expression>” here: https://itanium-cxx-abi.github.io/cxx-abi/abi.html#mangling …
2 replies 0 retweets 3 likes -
Holy shit, what's going on here? Why?
1 reply 0 retweets 0 likes -
Short answer: when functions have templated overloads, giving them a unique mangled name that persists across recompiles requires serializing the contents of any decltype the template uses. It’s an unforeseen flaw of language design.
1 reply 0 retweets 0 likes -
Is it because the decltype cannot always be fully "resolved" when the function declaration is being compiled? Or is there generally no simpler canonical representation of the type at all?
1 reply 0 retweets 0 likes
These types are fully instantiated, so they do have a canonical representation. However the spec demands that overloads in separate translation units can coexist if their decltype expressions differ, even if their canonical types are the same. (Obviously madness!)
Loading seems to be taking a while.
Twitter may be over capacity or experiencing a momentary hiccup. Try again or visit Twitter Status for more information.