5#ifndef QANIMATIONJOBUTIL_P_H
6#define QANIMATIONJOBUTIL_P_H
19#include <QtCore/qcompilerdetection.h>
20#include <QtCore/qtconfigmacros.h>
28#if defined(Q_CC_GNU_ONLY) && Q_CC_GNU_ONLY >= 1300
29# define ACTION_IF_DISABLE_DANGLING_POINTER_WARNING QT_WARNING_DISABLE_GCC("-Wdangling-pointer")
31# define ACTION_IF_DISABLE_DANGLING_POINTER_WARNING
42 bool *m_wasDeleted =
nullptr;
48#define ACTION_IF_DELETED(p, func, action) do
52 static_assert(std::is_same<decltype((p)->m_selfDeletable), SelfDeletable>::value, "m_selfDeletable must be SelfDeletable");
53 bool *prevWasDeleted = (p)->m_selfDeletable.m_wasDeleted;
54 bool wasDeleted = false;
55 (p)->m_selfDeletable.m_wasDeleted = &wasDeleted;
59 *prevWasDeleted = true;
62 (p)->m_selfDeletable.m_wasDeleted = prevWasDeleted;
64}while (false)
66#define RETURN_IF_DELETED(func) ACTION_IF_DELETED
#define ACTION_IF_DISABLE_DANGLING_POINTER_WARNING
QT_REQUIRE_CONFIG(qml_animation)