[PATCH] D39619: Correct atexit(3) support in TSan/NetBSD

Dmitry Vyukov via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Mon Nov 6 06:30:11 PST 2017


dvyukov added a comment.

> The behavior of atexit(3) LIFO has been defined in the C standard.

C++ also defines order of destruction of static and thread-local objects as LIFO:

3.6.3/1
If the completion of the constructor or dynamic initialization of an object with static storage
duration is sequenced before that of another, the completion of the destructor of the second is sequenced
before the initiation of the destructor of the first.

So I think we can assume they all are LIFO.


Repository:
  rL LLVM

https://reviews.llvm.org/D39619





More information about the llvm-commits mailing list