Skip to content

Sync/update wrap subtree#2587

Merged
dellaert merged 4 commits into
borglab:developfrom
thatdudegrantt:sync/update-wrap-subtree
Jul 2, 2026
Merged

Sync/update wrap subtree#2587
dellaert merged 4 commits into
borglab:developfrom
thatdudegrantt:sync/update-wrap-subtree

Conversation

@thatdudegrantt

Copy link
Copy Markdown
Contributor

What this does

Syncs the gtsam/wrap/ subtree with the current borglab/wrap master branch using update_wrap.sh. This pulls in:

  • borglab/wrap PR #183 — guards wrap<size_t> and unwrap<size_t> specializations in matlab.h with #if !defined(_WIN64) to prevent duplicate template specialization errors on Win64 MSVC builds
  • borglab/wrap PR #186 — extends the same guard to LP64 Unix systems with !defined(__LP64__)

Changes

Guards wrap<size_t> and unwrap<size_t> specializations in matlab.h with #if (!defined(_WIN64) && !defined(__LP64__)) || defined(__CUDACC__) to prevent the collision on 64-bit systems where size_t and uint64_t resolve to the same underlying type.

Testing

Fix was locally verified on Windows 11 x64, Visual Studio 2026 Community (MSVC 19.51), MATLAB R2026a, CMake 4.2.3. Fixes #2505.

Process

Synced using update_wrap.sh against borglab/wrap master, producing the canonical 2 commits (squash + merge) as described in the wrap README.

0ba6534a9 Merge pull request borglab#186 from svenangerer/fix-linux-size_t
211bba1ba fix: guard size_t template specializations for 64-bit Unix (__LP64__)
f1743dfee Merge pull request borglab#183 from thatdudegrantt/fix/matlab-size_t-win64-duplicate
b330797be Updating comments on copilot's suggestion
5fe01237e fix: guard size_t template specializations for Win64

git-subtree-dir: wrap
git-subtree-split: 0ba6534a9f01a7e8f0b0422b33ebd07c8a7bdd3c
@thatdudegrantt

Copy link
Copy Markdown
Contributor Author

@dellaert I had to open a new PR when resyncing via update_wrap.sh thank you in advance for reviewing.

@dellaert

Copy link
Copy Markdown
Member

I don't follow :-) Which PR? And what should happen with this one?

@dellaert

Copy link
Copy Markdown
Member

This one also has changes in wrap sub-tree...

@thatdudegrantt

thatdudegrantt commented Jun 29, 2026

Copy link
Copy Markdown
Contributor Author

i guess I am confused, how do I ensure there are no changes to the subtree? when I ran the update_wrap.sh within my gtsam fork, it pulled from the master which contained the merges from 183 and 186, which changes matlab.h. Is there something I am missing within the readme/proper way to update this? Thank you so much for your help, I really appreciate it.

For context, PR #2572 was the previous version of this sync which it was closed accidentally when I deleted the branch during cleanup, as I was hoping running the update_wrap.sh on a new branch would solve the issue of not properly syncing the changes from borglab/wrap to the gtsam/wrap subtree. This PR (#2587) is the replacement, created fresh using update_wrap.sh as described in the wrap README, but contains the same content found in the #2572.

dellaert added 2 commits July 1, 2026 15:25
aa4a5a6d7 Merge pull request borglab#187 from thatdudegrantt/fix/matlab-noisemodel-virtual-downcast
29d4073ec Fix MATLAB wrapper virtual class downcasting for namespaced types

git-subtree-dir: wrap
git-subtree-split: aa4a5a6d7a50bffcd6b37fe45f89813554743330
@dellaert

dellaert commented Jul 1, 2026

Copy link
Copy Markdown
Member

I think I was confused. @ProfFan reviewed the wrap PR and I synced it in this PR. That added changes in seven more files. I'm running CI and once that passes I'll merge. Thank you, @thatdudegrantt !

@dellaert dellaert left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks!!!

@dellaert dellaert merged commit f1a6956 into borglab:develop Jul 2, 2026
35 of 36 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Duplicate template instantiation with Matlab wrappers under x64

2 participants