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: Sun, 04 Jan 2015 21:10:28 +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> <548876B5 dot 70306 at rub dot de>
On 10.12.2014 17:37, Patrick Wollgast wrote:
> 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
>>