This is the mail archive of the
libstdc++@gcc.gnu.org
mailing list for the libstdc++ project.
Re: [Ping] Port of VTV for Cygwin and MinGW
- From: Patrick Wollgast <patrick dot wollgast at rub dot de>
- To: Kai Tietz <ktietz70 at googlemail dot com>, "cmtice at google dot com >> Caroline Tice" <cmtice at google dot com>, bkoz at gnu dot org, "jwakely at redhat dot com >> Jonathan Wakely" <jwakely at redhat dot com>, iant at google dot com
- Cc: gcc-patches at gcc dot gnu dot org, libstdc++ at gcc dot gnu dot org
- Date: Wed, 10 Dec 2014 17:37:09 +0100
- Subject: Re: [Ping] Port of VTV for Cygwin and MinGW
- Authentication-results: sourceware.org; auth=none
- References: <53FF0C8C dot 8090507 at rub dot de> <5411213F dot 1070104 at rub dot de> <CABtf2+RU7frwOXOX2FF8Tmfc6ssrpfFVj1Vuue4cZt19FpSWtQ at mail dot gmail dot com> <CABtf2+QWxvv1FUW_-kD3d0FBhYQWkZcPWAx8ASies_4j7thmoA at mail dot gmail dot com> <541B5B7E dot 2090300 at rub dot de> <20140923102235 dot GJ2669 at redhat dot com> <542344CB dot 6050600 at rub dot de> <CAEwic4b+KWO3pWQN_sbXqyf2MNWdnN8ZpaUKBVY8ECSqhe0cYg at mail dot gmail dot com> <54369316 dot 7070001 at rub dot de> <CAEwic4bT+OBQcatruiZ5Cnv1d6YMGckuf4Auf9+WzKLchNNZEg at mail dot gmail dot com> <543F9BB8 dot 1040503 at rub dot de> <54524B43 dot 7000105 at rub dot de> <5463893D dot 50807 at rub dot de> <CAEwic4YwnLjJCLii=AdG_-RXEnS3=b1nK90FA5iEsd497aRn8g at mail dot gmail dot com> <54639CC5 dot 4050508 at rub dot de> <CAEwic4YUkQfCo+hZi5BrYyurWzZ7FxLBxaR=HL5TuBdB38ePuA at mail dot gmail dot com> <5476F20C dot 5010801 at rub dot de>
Ping.
https://gcc.gnu.org/ml/gcc-patches/2014-11/msg03368.html
On 27.11.2014 10:42, Patrick Wollgast wrote:
> On 12.11.2014 19:40, Kai Tietz wrote:
>> TerminateProcess is actually bad, as it doesn't call any of the atexit
>> handlers. You simply nuke the process off. For cygwin this behavior
>> is inacceptable. Why a classical abort, or a classical exit call
>> cause for you that issues? It seems to me more related to some other
>> thing you try to paper over by this.
>>
>
> It turns out the test program made some trouble. I rewrote it to the
> attached program (virtual_func_test_min_AW.cpp). I changed obstack.c and
> vtv_rts.cc to the C-runtime functions. For testing I used a program just
> containing an abort and all three tests in the attached test program.
> The call stack, passed parameters and behavior matched at the crucial
> parts (tested again on MinGW 32/64bit).
>
>>
>>> Regarding the question, why I reimplemented mprotect, I also haven't
>>> changed anything in the patch but answered the question.
>>
>> And this doesn't make it better. It is present in the static part of
>> libgcc. Have you tried to declare it with extern "C" (for C++ case)
>> and simply use it?
>> Cygwin provides its own version too. So there seems to me no real
>> need to re-implement it.
>>
>
> You're right. I was stuck with the idea of importing it dynamically, but
> changed it to extern "C" now.
>
> Regards,
> Patrick
>