Files
AntlrLab/cmake/antlr_runtime_compat.h
T
2026-10-07 18:11:55 -03:00

39 lines
1.0 KiB
C++

// Force-included into the ANTLR C++ runtime's own build (see CMakeLists.txt).
//
// ANTLR 4.13's sources use some standard library facilities (std::chrono in
// ProfilingATNSimulator.cpp, for one) without including the header that
// declares them. That only worked because older standard libraries included
// those headers indirectly; newer Visual C++ versions no longer do, and the
// build fails with errors like "'high_resolution_clock': is not a class or
// namespace name". Including them up front is harmless everywhere else.
#pragma once
#include <cstdio>
#include <algorithm>
#include <atomic>
#include <chrono>
#include <cstddef>
#include <cstdint>
#include <cstdlib>
#include <cstring>
#include <exception>
#include <functional>
#include <iostream>
#include <iterator>
#include <limits>
#include <map>
#include <memory>
#include <mutex>
#include <numeric>
#include <set>
#include <sstream>
#include <stdexcept>
#include <string>
#include <thread>
#include <typeinfo>
#include <unordered_map>
#include <unordered_set>
#include <utility>
#include <vector>