Date: Wed, 17 Jul 2024 16:53:42 -0400
On 7/17/24 16:49, Tiago Freire via Std-Proposals wrote:
>> Only in a very shallow sense, though. If I switch msvc build mode from release to debug, sizeof (std::string) changes from 32 bytes to 40 bytes. I also had to get two 3rd-party manufacturers to upgrade their compilers (from msvc2010 to msvc2017, IIRC) because they were using std::strings in their public interface, and their std::strings were not the same as mine.
>
> And I get it. I have been there. I had to deal with this sort of problem over and over again.
> You have a vendor that only gives you binaries and just sends out their C++ interfaces and they don't even realize that it is a problem, because it works for them and their tools, and they couldn't convince anyone else using a different compiler (that is not at least 15 years old) and that this would be a problem.
> Annoying as it is that you are almost practically forced to use their preferred tools instead of the ones you have been developing your product in up until now, that will only get you so far as the next vendor comes along and does something completely different, you can't even combine both components on the same application no matter your best efforts to be accommodating.
I 100% agree with you. There's nothing magic with name mangling and this
should be standardized at all costs.
>> Only in a very shallow sense, though. If I switch msvc build mode from release to debug, sizeof (std::string) changes from 32 bytes to 40 bytes. I also had to get two 3rd-party manufacturers to upgrade their compilers (from msvc2010 to msvc2017, IIRC) because they were using std::strings in their public interface, and their std::strings were not the same as mine.
>
> And I get it. I have been there. I had to deal with this sort of problem over and over again.
> You have a vendor that only gives you binaries and just sends out their C++ interfaces and they don't even realize that it is a problem, because it works for them and their tools, and they couldn't convince anyone else using a different compiler (that is not at least 15 years old) and that this would be a problem.
> Annoying as it is that you are almost practically forced to use their preferred tools instead of the ones you have been developing your product in up until now, that will only get you so far as the next vendor comes along and does something completely different, you can't even combine both components on the same application no matter your best efforts to be accommodating.
I 100% agree with you. There's nothing magic with name mangling and this
should be standardized at all costs.
-- Logo <https://www.fornux.com/> *Phil Bouchard* facebook icon <https://www.linkedin.com/in/phil-bouchard-5723a910/> Founder & CEO T: (819) 328-4743 E: phil_at_[hidden]| www.fornux.com <http://www.fornux.com> 320-345 de la Gauchetière Ouest| Montréal (Qc), H2Z 0A2 Canada Banner <https://static.fornux.com/c-superset/> Le message ci-dessus, ainsi que les documents l'accompagnant, sont destinés uniquement aux personnes identifiées et peuvent contenir des informations privilégiées, confidentielles ou ne pouvant être divulguées. Si vous avez reçu ce message par erreur, veuillez le détruire. This communication (and/or the attachments) is intended for named recipients only and may contain privileged or confidential information which is not to be disclosed. If you received this communication by mistake please destroy all copies.
Received on 2024-07-17 20:53:59