3
0
Fork 0
mirror of https://github.com/Z3Prover/z3 synced 2026-01-18 16:28:56 +00:00
Commit graph

20361 commits

Author SHA1 Message Date
Copilot
b716d6350a
Fix mk_unix_dist.py cross-compilation from ARM to x64 on macOS (#8222)
* Initial plan

* Add support for ARM to X64 cross-compilation on macOS

- Initialize LINUX_X64 from mk_util.LINUX_X64
- Add support for --arch=x64 flag to force x64 builds
- Handle cross-compilation from ARM64 to x64 on macOS using -arch x86_64 flags
- Update help text to reflect both arm64 and x64 architecture options

Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com>

* Fix cross-compilation detection using HOST_IS_ARM64

Use separate HOST_IS_ARM64 variable to track the host architecture,
allowing proper detection of ARM to x64 cross-compilation scenarios.
This ensures the correct compiler flags are set when building x64
on ARM hosts.

Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com>

* Address code review: improve arch flag handling

- Extract target_arch_flag to variable to reduce duplication
- Add .strip() calls to handle trailing spaces in environment variables
- Ensure proper spacing in concatenated flags

Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com>

---------

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com>
2026-01-17 10:19:10 -08:00
Lev Nachmanson
d60373c5d5
Merge pull request #8218 from Z3Prover/copilot/fix-segmentation-fault-ufnira 2026-01-17 05:18:38 -10:00
Nikolaj Bjorner
d2253b61db
Update nightly.yml 2026-01-17 06:03:24 -08:00
Nikolaj Bjorner
cfe780cd71
Update C++ compiler version in cross-build workflow 2026-01-17 05:22:00 -08:00
Nikolaj Bjorner
c2a8416d3b
Change container image from ubuntu:jammy to ubuntu:noble 2026-01-17 05:20:24 -08:00
Nikolaj Bjorner
475087c83c
Update GCC version in cross-build workflow 2026-01-16 21:29:17 -08:00
Nikolaj Bjorner
8fbce2c75e
Update nightly.yml 2026-01-16 21:14:15 -08:00
Nikolaj Bjorner
3837baf00b
Update nightly.yml 2026-01-16 20:08:17 -08:00
Nikolaj Bjorner
559fd2f0aa
Add workflow_dispatch trigger to android-build.yml 2026-01-16 19:59:06 -08:00
Nikolaj Bjorner
e3dc7081fa
Update cross-build.yml 2026-01-16 19:57:19 -08:00
Copilot
6ec2d4bc8d
Replace fall-through comments with Z3_fallthrough macro (#8219)
* Initial plan

* Fix switch fall-through warnings with Z3_fallthrough attribute

Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com>

---------

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com>
2026-01-16 19:54:31 -08:00
Copilot
a574f97ebd
Update cross-build workflow to GCC 12 for C++20 support (#8220)
* Initial plan

* Update cross-build workflow to use g++-12 for C++20 support

Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com>

---------

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com>
2026-01-16 19:53:36 -08:00
copilot-swe-agent[bot]
bd67c3f7ae Clean up temporary test files
Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com>
2026-01-17 00:09:54 +00:00
copilot-swe-agent[bot]
522aa69e09 Fix segfault in dioph_eq.cpp by adding bounds check
Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com>
2026-01-17 00:04:21 +00:00
Copilot
36323f723b
Fix 13 compiler warnings: sign-comparison and unused parameters (#8215)
* Initial plan

* Fix 13 compiler warnings: sign-comparison and unused parameters

Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com>

---------

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com>
2026-01-16 16:00:42 -08:00
Copilot
9666915dca
Fix artifact extraction patterns in nightly Python packaging job (#8217)
* Initial plan

* Fix unzip patterns in Python packaging job

Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com>

---------

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com>
2026-01-16 15:50:22 -08:00
copilot-swe-agent[bot]
b5202c65c0 Initial analysis of segfault issue
Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com>
2026-01-16 23:48:19 +00:00
copilot-swe-agent[bot]
c277b39b1b Initial plan 2026-01-16 23:46:26 +00:00
Ilana Shapiro
b1b7270686
Fix UNKNOWN bug in search tree about inconsistent end state (#8214)
* restore more aggressive pruning in search tree

* restore where we close children to be correct

* add core strengthening check

* fix recursion bug

* less strict core propagation

* old search tree version

* restore search tree patch

* remove flag

* debugging inconsistent end state with search, some changes need to be made in search tree, only backtrack should be closing nodes, I think the bug is when we do find_highest_attach for nonchronological backjumping, you might get to a point where the sibling is closed, so then we need to resolve further up the tree

* clean up code, fix deadlock

* delete test files

* clean up

---------

Co-authored-by: Ilana Shapiro <ilanashapiro@Mac.localdomain>
Co-authored-by: Ilana Shapiro <ilanashapiro@Ilanas-MacBook-Pro.local>
Co-authored-by: Ilana Shapiro <ilanashapiro@Ilanas-MBP.lan1>
2026-01-16 10:41:13 -08:00
Copilot
596cd23efc
Fix nightly build failures in ARM64 and Python packaging jobs (#8213)
* Initial plan

* Fix nightly build workflow failures for ARM64 and Python packaging

Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com>

---------

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com>
2026-01-16 10:39:05 -08:00
Nuno Lopes
a7def9e65d bot: restore std::format 2026-01-16 09:35:42 +00:00
Copilot
fb0f8190e3
[WIP] Update nightly.yml to fix build error with macOS runner (#8209)
* Initial plan

* Fix macos-13 runner retirement: update to macos-14

Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com>

---------

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com>
2026-01-15 23:09:01 -08:00
Copilot
07929c3271
Fix checkout action GLIBC incompatibility in manylinux and macOS builds (#8207)
* Initial plan

* Fix checkout action compatibility with manylinux containers and macOS

Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com>

---------

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com>
2026-01-15 21:54:24 -08:00
Copilot
6e68911cbb
Reapply PR #8190: Replace std::ostringstream with C++20 std::format (#8204)
* Initial plan

* Reapply PR #8190: Replace std::ostringstream with C++20 std::format

Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com>

---------

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com>
2026-01-15 21:30:29 -08:00
Copilot
7d899fdc43
Migrate nightly builds from Azure DevOps to GitHub Actions (#8206)
* Initial plan

* Add GitHub Actions workflow for nightly builds

Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com>

* Fix Windows builds to use --zip flag instead of manual archiving

Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com>

---------

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com>
2026-01-15 21:08:55 -08:00
Nikolaj Bjorner
76182c7e66 fix #8195
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2026-01-15 14:39:29 -08:00
Copilot
be2d7ecb91
Change code-conventions-analyzer workflow discussion category to "Agentic Workflows" (#8203)
* Initial plan

* Update code-conventions-analyzer discussion category to "Agentic Workflows"

Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com>

---------

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com>
2026-01-15 12:45:47 -08:00
Copilot
6df16fad9c
Update api-coherence-checker workflow to use "Agentic Workflows" discussion category (#8202)
* Initial plan

* Update api-coherence-checker to use "Agentic Workflows" discussion category

Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com>

---------

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com>
2026-01-15 12:45:13 -08:00
Nikolaj Bjorner
778ed22dbf simplify contains check
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2026-01-15 12:01:44 -08:00
Ilana Shapiro
1d1fc69be3
Add core strengthening and non-chronological backtracking to parallel search tree (#8193)
* restore more aggressive pruning in search tree

* restore where we close children to be correct

* add core strengthening check

* fix recursion bug

* less strict core propagation

* old search tree version

* restore search tree patch

* remove flag

---------

Co-authored-by: Ilana Shapiro <ilanashapiro@Mac.localdomain>
Co-authored-by: Ilana Shapiro <ilanashapiro@Ilanas-MacBook-Pro.local>
Co-authored-by: Ilana Shapiro <ilanashapiro@Ilanas-MBP.lan1>
2026-01-15 11:49:18 -08:00
Copilot
7d4964a2f0
Fix api-coherence workflow to verify and filter resolved issues (#8201)
* Initial plan

* Update api-coherence workflow to verify and filter resolved issues

Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com>

---------

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com>
2026-01-15 11:40:26 -08:00
Copilot
2436943794
Standardize for-loop increments to prefix form (++i) (#8199)
* Initial plan

* Convert postfix to prefix increment in for loops

Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com>

* Fix member variable increment conversion bug

Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com>

* Update API generator to produce prefix increments

Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com>

---------

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com>
2026-01-14 19:55:31 -08:00
Copilot
1bf463d77a
Replace manual pair unpacking with structured bindings (#8197)
* Initial plan

* Apply structured bindings to enode_bool_pair usage

Replace manual unpacking of pairs with C++17 structured bindings in:
- src/ast/euf/euf_egraph.cpp
- src/smt/smt_internalizer.cpp
- src/smt/smt_context.cpp (2 locations)

This improves code readability and reduces boilerplate code.

Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com>

---------

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com>
2026-01-14 19:52:01 -08:00
Copilot
e7f9a31b25
Replace remaining NULL with nullptr (#8198)
* Initial plan

* Replace NULL with nullptr in spacer_context.cpp

Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com>

---------

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com>
2026-01-14 19:50:44 -08:00
Copilot
896e297bd4
Update ARM GCC toolchain to 13.3 for C++20 std::format support (#8196)
* Initial plan

* Update ARM GCC toolchain from 11.2 to 13.3 for C++20 std::format support

Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com>

---------

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com>
2026-01-14 17:09:06 -08:00
Nikolaj Bjorner
a2605e7b66 remove RCF example
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2026-01-14 17:07:25 -08:00
Nuno Lopes
1d8c50ebd6 fix build 2026-01-14 18:54:16 +00:00
Copilot
c5b28950d5
Remove redundant overridden default destructors (#8191)
Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com>
2026-01-14 18:41:26 +00:00
Lev Nachmanson
ece691285e throw an algebraic exception on a failure of m_limit.inc() instead of returning sign_zero
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2026-01-14 07:23:26 -10:00
Nuno Lopes
888d2fc480 copilot: don't use std::format and try using clang-tidy 2026-01-14 09:17:49 +00:00
Lev Nachmanson
d5e0216070 Revert "Merge pull request #8190 from Z3Prover/copilot/fix-std-format-usage"
This reverts commit d9bdb6b83c, reversing
changes made to 8b188621a5.
2026-01-13 18:18:07 -10:00
Copilot
3bf271bb42
Enhance Code Conventions Analyzer for empty constructors and non-virtual destructors (#8192)
* Initial plan

* Enhance Code Conventions Analyzer for empty constructors and non-virtual destructors

Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com>

---------

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com>
2026-01-13 18:57:10 -08:00
Lev Nachmanson
d9bdb6b83c
Merge pull request #8190 from Z3Prover/copilot/fix-std-format-usage
Modernize string formatting from std::ostringstream to std::format
2026-01-13 13:54:00 -10:00
copilot-swe-agent[bot]
0c2ea345fb Fix spacing in error message
Co-authored-by: levnach <5377127+levnach@users.noreply.github.com>
2026-01-13 21:36:14 +00:00
copilot-swe-agent[bot]
64957e2b0e Modernize more files to use std::format: bv_decl_plugin, dl_decl_plugin, datatype_decl_plugin, seq_decl_plugin
Co-authored-by: levnach <5377127+levnach@users.noreply.github.com>
2026-01-13 21:34:47 +00:00
copilot-swe-agent[bot]
99a40e79d4 Modernize ostringstream to std::format in ast.cpp and array_decl_plugin.cpp
Co-authored-by: levnach <5377127+levnach@users.noreply.github.com>
2026-01-13 21:29:51 +00:00
copilot-swe-agent[bot]
d274181c1f Initial plan 2026-01-13 21:07:21 +00:00
Nikolaj Bjorner
8b188621a5 coerce bool
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2026-01-13 11:45:57 -08:00
Nikolaj Bjorner
c78d5405d1 update iterator pattern
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2026-01-13 11:33:15 -08:00
Simon Jeanteur
deaced1711
Subterms Theory (#8115)
* somewhaat failed attempt at declaring subterm predicate

I can't really figure out how to link the smt parser to the rest of the
machinenery, so I will stop here and try from the other side. I'll start
implmenting the logic and see if it brings me back to the parser.

* initial logic implmentation

Very primitive, but I don't like have that much work uncommitted.

* parser implementation

* more theory

* Working base

* subterm reflexivity

* a few optimization

Skip adding obvious equalities or disequality

* removed some optimisations

* better handling of backtracking

* stupid segfault

Add m_subterm to the trail

* Update src/smt/theory_datatype.h

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* Update src/ast/rewriter/datatype_rewriter.cpp

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* Update src/smt/theory_datatype.cpp

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* Update src/smt/theory_datatype.cpp

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* Update src/smt/theory_datatype.cpp

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* review

* forgot to update `iterate_subterm`'s signature

* fix iterator segfault

* Remove duplicate include statement

Removed duplicate include of 'theory_datatype.h'.

* Replace 'optional' with 'std::option' in datatype_decl_plugin.h

* Add is_subterm_predicate matcher to datatype_decl_plugin

* Change std::option to std::optional for m_subterm

* Update pdecl.h

* Change has_subterm to use has_value method

* Update pdecl.cpp

---------

Co-authored-by: Nikolaj Bjorner <nbjorner@microsoft.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2026-01-13 10:53:17 -08:00