Re: Proposal for Prototype Implementation to Enhance C/C++ Interoperability in PostgreSQL
| От | 盏一 |
|---|---|
| Тема | Re: Proposal for Prototype Implementation to Enhance C/C++ Interoperability in PostgreSQL |
| Дата | |
| Msg-id | tencent_7BE1BAE80365761411891DFE@qq.com обсуждение исходный текст |
| Ответ на | Re: Proposal for Prototype Implementation to Enhance C/C++ Interoperability in PostgreSQL (Peter Eisentraut <peter.eisentraut@enterprisedb.com>) |
| Список | pgsql-hackers |
I apologize for my previous hasty conclusion. I have conducted further testing on different platforms and would like to sharemy findings. > FreeBSD Based on my tests, it appears that FreeBSD follows the Itanium C++ ABI specification. The previous test failed because theC++ compiler was not used when linking libpgsjlj.so. > macOS, M1 My tests show that macOS M1 roughly follows the Itanium C++ ABI specification, with only slight differences, such as theparameters accepted by the _Unwind_Stop_Fn function. > macOS, x86 I don't have the resources to do the testing, but from a code perspective, it appears that macOS x86 follows the ItaniumC++ ABI specification. > Windows It seems that Windows does not follow the Itanium C++ ABI specification at all. If we compile the program using the `/EHsc`option, longjmp will also trigger forced unwinding. However, unlike the Itanium C++ ABI, the forced unwinding triggeredhere cannot be captured by a C++ catch statement.
В списке pgsql-hackers по дате отправления: