http://gcc.gnu.org/bugzilla/show_bug.cgi?id=55485



Eric Botcazou <ebotcazou at gcc dot gnu.org> changed:



           What    |Removed                     |Added

----------------------------------------------------------------------------

             Status|UNCONFIRMED                 |NEW

   Last reconfirmed|                            |2012-11-27

          Component|ada                         |sanitizer

                 CC|                            |dodji at gcc dot gnu.org,

                   |                            |dvyukov at gcc dot gnu.org,

                   |                            |ebotcazou at gcc dot

                   |                            |gnu.org, jakub at gcc dot

                   |                            |gnu.org, kcc at gcc dot

                   |                            |gnu.org

     Ever Confirmed|0                           |1

            Summary|stack-buffer-overflow in    |probable false positive on

                   |sem_ch8.adb                 |__builtin_setjmp/__builtin_

                   |                            |longjmp



--- Comment #1 from Eric Botcazou <ebotcazou at gcc dot gnu.org> 2012-11-27 
16:12:57 UTC ---

It looks rather like AddressSanitizer is confused by the __builtin_setjmp based

exception handling scheme, as hinted at by:



Address 0x7fff47f1b588 is located at offset 72 in frame

<ada__exceptions__raise_current_excep> of T0's stack:

  This frame has 1 object(s):

    [32, 40) 'id'

HINT: this may be a false positive if your program uses some custom stack

unwind mechanism or swapcontext

      (longjmp and C++ exceptions *are* supported)



So, does AddressSanitizer support __builtin_setjmp/__builtin_longjmp?

Reply via email to