NatLabRockies / NatLabRockies/OpenStudio

Windows x86 build fails in Conan ANTLR runtime (missing <chrono> include)

Open
#5,590 0 comments 0 reactions 1 assignee View on GitHub

@kbenne is already working on this.

Since Jan 15, 2026.

Triage
Dominant language
C++
Stars
646
Forks
237
Avg merge
3d 11h
Merged PRs (30d)
10

Description

Description

Windows 32-bit builds fail while Conan builds antlr4-cppruntime/4.13.1 from source. This is a dependency failure in ANTLR, not OpenStudio sources.

Failure details

  • Occurs in Conan cache build: antlr4_static.vcxproj
  • Errors in runtime/src/atn/ProfilingATNSimulator.cpp:
    • error C2653: 'high_resolution_clock': is not a class or namespace name
    • error C3861: 'now': identifier not found
  • Only on x86; x64 builds succeed.

Root cause
ProfilingATNSimulator.cpp uses std::chrono::high_resolution_clock but does not include <chrono>. On MSVC x86, <chrono> is not pulled in transitively, so std::chrono is undefined.

Workaround / Fix options

  • Patch ANTLR runtime to #include <chrono> in ProfilingATNSimulator.cpp (or antlr4-common.h) for x86.
  • Alternatively downgrade/upgrade antlr4-cppruntime to a version that fixes this.
  • Long term: create a local Conan recipe patch if we need to keep 4.13.1.
Current Behavior

32 bit windows builds fail

Expected Behavior

32 bit windows builds should not fail

Steps to reproduce

Try to build openstudio on 32 bit windows

Possible Solution

Patch ANTLR runtime to #include in ProfilingATNSimulator.cpp (or antlr4-common.h) for x86.

Operating System affected

Windows 10, Windows 11

Environment
Version of OpenStudio
Context

No response

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.