Skip to content

Commit 9ede925

Browse files
authored
Work around MSVC arm64 issue (#7540)
1 parent 467eafe commit 9ede925

File tree

3 files changed

+8
-1
lines changed

3 files changed

+8
-1
lines changed

CHANGELOG.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@
77
* <How do the end-user experience this issue? what was the impact?> ([#????](https://github.com/realm/realm-core/issues/????), since v?.?.?)
88
* Fix an assertion failure "m_lock_info && m_lock_info->m_file.get_path() == m_filename" that appears to be related to opening a Realm while the file is in the process of being closed on another thread ([Swift #8507](https://github.com/realm/realm-swift/issues/8507)).
99
* Fixed diverging history due to a bug in the replication code when setting default null values (embedded objects included) ([#7536](https://github.com/realm/realm-core/issues/7536)).
10+
* Version 19.39.33523 of MSVC would crash when compiling for arm64 in release mode ([PR #7533](https://github.com/realm/realm-core/pull/7533)).
1011

1112
### Breaking changes
1213
* Updated default base URL to be `https://services.cloud.mongodb.com` to support the new domains (was `https://realm.mongodb.com`). ([PR #7534](https://github.com/realm/realm-core/pull/7534))

external/catch

Submodule catch updated 92 files

src/realm/object-store/index_set.hpp

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,8 @@
1919
#ifndef REALM_INDEX_SET_HPP
2020
#define REALM_INDEX_SET_HPP
2121

22+
#include <realm/util/features.h>
23+
2224
#include <cstddef>
2325
#include <initializer_list>
2426
#include <iterator>
@@ -385,6 +387,10 @@ inline ChunkedRangeVectorIterator<T> ChunkedRangeVectorIterator<T>::operator--(i
385387
}
386388

387389
template <typename T>
390+
#if REALM_WINDOWS && REALM_ARCHITECTURE_ARM64
391+
// Inlining this function crashes msvc when targeting arm64 in as of 19.39.33523
392+
__declspec(noinline)
393+
#endif
388394
inline void ChunkedRangeVectorIterator<T>::next_chunk() noexcept
389395
{
390396
++m_outer;

0 commit comments

Comments
 (0)