Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Feat rust externs subsets eta names tests #5613

Merged
merged 92 commits into from
Sep 4, 2024

Commits on Jun 24, 2024

  1. feat-rust-synonymtype-charliterals Feat: Added support for erased syn…

    …onym types and UTF8 char literals.
    MikaelMayer committed Jun 24, 2024
    Configuration menu
    Copy the full SHA
    b8b7788 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    cf95ebd View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    2a42759 View commit details
    Browse the repository at this point in the history
  4. feat-classes-arrays: Support for trait types and upcast coercion as a…

    …ppropriate
    
    Fixed support for "this" and constants in reference counting mode.
    Removed old obsolete class implementations
    
    Added all tuples till 16 with a script
    
    Support for arrays with 16 dimensions
    
    Feature classes and arrays
    
    Added documentation about target type
    
    Full feat rust
    
    Support for Reference counted pointers everywhere.
    
    Fixed self type for datatypes vs classes
    Fixed detection of uninitialized reference counted array
    
    Fixed an issue about elseBranch's statements being in the wrong fork.
    
    No reading of objects, only borrows
    
    Assertion fixed
    
    fixup for feat-rust-classes: Nightly crimes no longer printing anything
    MikaelMayer committed Jun 24, 2024
    Configuration menu
    Copy the full SHA
    bdf1f31 View commit details
    Browse the repository at this point in the history
  5. feat-rust-boundedpool-loops: MapBoundedPool domain, map builder fixed…

    …, loops & quantifiers, datatype fields ownership, fixed cloning of closed lambda objects, fixed coercion problems
    
    Fixup for feat-rust-loops
    MikaelMayer committed Jun 24, 2024
    Configuration menu
    Copy the full SHA
    e3e1e2d View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    7e3346b View commit details
    Browse the repository at this point in the history
  7. Configuration menu
    Copy the full SHA
    1e60595 View commit details
    Browse the repository at this point in the history
  8. feat-rust-reserved-names: construction of Rust structs now has field …

    …names escaped
    
    reserved names: {s,S}elf become r#_{s,S}elf rather than r#{s,S}elf + removed them from reserved_rust
    Siva Somayyajula authored and MikaelMayer committed Jun 24, 2024
    Configuration menu
    Copy the full SHA
    0ffa0c2 View commit details
    Browse the repository at this point in the history
  9. feat-rust-traits: Support for traits, constructors, classes, self type

    Fixup feat-rust-traits expected test
    fixup traits - no full qualifier for methods if not necessary
    MikaelMayer committed Jun 24, 2024
    Configuration menu
    Copy the full SHA
    e107306 View commit details
    Browse the repository at this point in the history
  10. Configuration menu
    Copy the full SHA
    67a050f View commit details
    Browse the repository at this point in the history
  11. feat-rust-datatypes-fixes: PartialEq not for functions, print for fun…

    …ctions members in datatypes, reserved names
    
    - PartialEq, Eq, and Default traits not implemented when datatype contains non-equatable types
    - note: PartialEq does not have to be manually implemented for parameterized types
    - note: Auto-generated implementations of Hash constrain type arguments to be subtypes of DafnyType, not DafnyTypeEq
    - Implementations of fmt_print write "<function>" for members of function type
    - Implementations of hash ignore members of function type
    datatypes: style fixes
    reserved names: destructors containing reserved field names avoid field punning
    Siva Somayyajula authored and MikaelMayer committed Jun 24, 2024
    Configuration menu
    Copy the full SHA
    3f2d171 View commit details
    Browse the repository at this point in the history
  12. feat-rust-coercion-upcast-downcast: Coercion for upcast/downcast, env…

    …ironment closures owned
    MikaelMayer committed Jun 24, 2024
    Configuration menu
    Copy the full SHA
    ff611ed View commit details
    Browse the repository at this point in the history
  13. feat-rust-fixup-hash-sequences-miri: Loosen Hash for sequences, fixed…

    … memory leaks with MIRI
    MikaelMayer committed Jun 24, 2024
    Configuration menu
    Copy the full SHA
    61527d7 View commit details
    Browse the repository at this point in the history

Commits on Jun 25, 2024

  1. Configuration menu
    Copy the full SHA
    203b8da View commit details
    Browse the repository at this point in the history
  2. Back-ported fix from #5574

    MikaelMayer committed Jun 25, 2024
    Configuration menu
    Copy the full SHA
    a7fde0e View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    bb2ca4d View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    2adb014 View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    351f38e View commit details
    Browse the repository at this point in the history
  6. arrays and usize

    MikaelMayer committed Jun 25, 2024
    Configuration menu
    Copy the full SHA
    73b3561 View commit details
    Browse the repository at this point in the history
  7. Configuration menu
    Copy the full SHA
    5082cb5 View commit details
    Browse the repository at this point in the history
  8. Configuration menu
    Copy the full SHA
    7a42ea3 View commit details
    Browse the repository at this point in the history

Commits on Jun 26, 2024

  1. Configuration menu
    Copy the full SHA
    6ebdce7 View commit details
    Browse the repository at this point in the history

Commits on Jul 4, 2024

  1. feat-rust-externs: Support for additional rust files on the command line

    fixup extern: ExternCompanion
    
    fixup externs: Ensure it works for traits as well. Test for the compilation error
    
    Fixup external classes test
    
    Fixup external classes when no conflict + documentation
    
    Ensure order of imports is deterministic and alphabetic
    
    Fixup advanced externs and patterns
    
    Fixup: no emitting pub use extern if everything is defined. Fixed field change
    
    Fixup externs
    
    Fixup externs: Ensure the default class decl does not need the extern attribute
    
    Fixup externs
    
    fixup externs: Classes are extern means their implementation must be provided externally
    Function externs correctly have their full extern path
    MikaelMayer committed Jul 4, 2024
    Configuration menu
    Copy the full SHA
    12d5f36 View commit details
    Browse the repository at this point in the history
  2. feat-rust-subset-constraints: Support for compiled subset constraints…

    … in quantifiers
    
    Fixup init value for synonym types
    MikaelMayer committed Jul 4, 2024
    Configuration menu
    Copy the full SHA
    fe888e0 View commit details
    Browse the repository at this point in the history
  3. functions: eta-expansion of top level functions and correct type for …

    …lambdas
    
    functions: more robust eta-expansion
    fabiomadge authored and MikaelMayer committed Jul 4, 2024
    Configuration menu
    Copy the full SHA
    bd46d20 View commit details
    Browse the repository at this point in the history
  4. constants: function constants are eta-expanded with an additional call

    constants: test to make sure constant lambdas are compiled properly (eta-expanded and type-annotated)
    Siva Somayyajula authored and MikaelMayer committed Jul 4, 2024
    Configuration menu
    Copy the full SHA
    aafca78 View commit details
    Browse the repository at this point in the history
  5. reserved names: refactoring of name escaping to handle module-/type-l…

    …evel and value-level (variables, etc.) names differently, the latter accounting for reserved fields
    Siva Somayyajula authored and MikaelMayer committed Jul 4, 2024
    Configuration menu
    Copy the full SHA
    acdda1f View commit details
    Browse the repository at this point in the history
  6. elephant operator: desugaring modified so RHS avoids capturing variab…

    …les in scope
    
    - desugaring of elephant operator now declares and initializes head variable after error handling
    - as a result, code generation avoids declaring the head variable
    - the old type system now avoids duplicating the head variable in scope
    - NB: the new type system does not have this fix yet b/c by changing the declaration order of the head variable, a resolver invariant is broken
    Siva Somayyajula authored and MikaelMayer committed Jul 4, 2024
    Configuration menu
    Copy the full SHA
    371b62e View commit details
    Browse the repository at this point in the history
  7. fix-maps-issues: Fixed several issues regarding maps, datatype erasur…

    …e, conversions, etc.
    
    Items and map no longer requires V to have Eq trait
    MikaelMayer committed Jul 4, 2024
    Configuration menu
    Copy the full SHA
    e196ed0 View commit details
    Browse the repository at this point in the history
  8. maps: special field .Items now implemented

    Siva Somayyajula authored and MikaelMayer committed Jul 4, 2024
    Configuration menu
    Copy the full SHA
    3c235a6 View commit details
    Browse the repository at this point in the history
  9. type tests: implemented when the source type is object

    type tests: more general by using is_instance_of_object
    Siva Somayyajula authored and MikaelMayer committed Jul 4, 2024
    Configuration menu
    Copy the full SHA
    ed1750d View commit details
    Browse the repository at this point in the history
  10. Configuration menu
    Copy the full SHA
    8acecb6 View commit details
    Browse the repository at this point in the history
  11. datatypes: references to hash are fully qualified to avoid shadowing …

    …by datatype members
    Siva Somayyajula authored and MikaelMayer committed Jul 4, 2024
    Configuration menu
    Copy the full SHA
    92c176d View commit details
    Browse the repository at this point in the history
  12. feat-type-synonyms-complete: Feat: Support for type synonyms and conv…

    …ersion from Dafny
    
    Fixed regressions
    
    fixup feat-type-synonym-complete
    
    Fixup previous
    MikaelMayer committed Jul 4, 2024
    Configuration menu
    Copy the full SHA
    f82ce12 View commit details
    Browse the repository at this point in the history

Commits on Jul 5, 2024

  1. No creation of allocate() and upcast for default class.

    Map.Keys, .Values and .Items not forcing the clone of the object.
    Ensure not possible to create constructorless objects.
    MikaelMayer committed Jul 5, 2024
    Configuration menu
    Copy the full SHA
    a9ddfea View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    2831035 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    c28abcf View commit details
    Browse the repository at this point in the history

Commits on Jul 8, 2024

  1. feat-rust-simplify-paths: Simplify top-level paths and use clauses to…

    … reduce generated code size
    MikaelMayer committed Jul 8, 2024
    Configuration menu
    Copy the full SHA
    d6beb1e View commit details
    Browse the repository at this point in the history

Commits on Jul 9, 2024

  1. Fixup paths optimization

    MikaelMayer committed Jul 9, 2024
    Configuration menu
    Copy the full SHA
    828303d View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    537601e View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    e4b87dc View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    c7fb0d5 View commit details
    Browse the repository at this point in the history

Commits on Jul 10, 2024

  1. Configuration menu
    Copy the full SHA
    e7323d8 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    443a3dc View commit details
    Browse the repository at this point in the history
  3. Merge branch 'refs/heads/master' into feat-rust

    # Conflicts:
    #	Source/DafnyCore.Test/GeneratedFromDafny/DafnyToRustCompilerCoverage_RASTCoverage.cs
    #	Source/DafnyCore/Backends/Dafny/AST.dfy
    #	Source/DafnyCore/Backends/Dafny/DafnyCodeGenerator.cs
    #	Source/DafnyCore/Backends/Rust/Dafny-compiler-rust.dfy
    #	Source/DafnyCore/Backends/Rust/RustCodeGenerator.cs
    #	Source/DafnyCore/Backends/SinglePassCodeGenerator/SinglePassCodeGenerator.Statement.cs
    #	Source/DafnyCore/GeneratedFromDafny/DAST.cs
    #	Source/DafnyCore/GeneratedFromDafny/DCOMP.cs
    #	Source/DafnyCore/GeneratedFromDafny/RAST.cs
    #	Source/DafnyRuntime/DafnyRuntimeRust/src/lib.rs
    #	Source/DafnyRuntime/DafnyRuntimeRust/src/system/mod.rs
    #	Source/DafnyRuntime/DafnyRuntimeRust/src/tests/mod.rs
    #	Source/IntegrationTests/TestFiles/LitTests/LitTest/c++/class.dfy.rs.check
    #	Source/IntegrationTests/TestFiles/LitTests/LitTest/comp/AutoInit.dfy.rs.check
    #	Source/IntegrationTests/TestFiles/LitTests/LitTest/comp/DefaultParameters-Compile.dfy.rs.check
    #	Source/IntegrationTests/TestFiles/LitTests/LitTest/comp/rust/arrays.dfy.expect
    #	Source/IntegrationTests/TestFiles/LitTests/LitTest/comp/rust/borrowing.dfy
    #	Source/IntegrationTests/TestFiles/LitTests/LitTest/comp/rust/borrowing.dfy.expect
    #	Source/IntegrationTests/TestFiles/LitTests/LitTest/comp/rust/bymethod.dfy.expect
    #	Source/IntegrationTests/TestFiles/LitTests/LitTest/comp/rust/classes.dfy
    #	Source/IntegrationTests/TestFiles/LitTests/LitTest/comp/rust/classes.dfy.expect
    #	Source/IntegrationTests/TestFiles/LitTests/LitTest/comp/rust/loops.dfy
    #	Source/IntegrationTests/TestFiles/LitTests/LitTest/comp/rust/loops.dfy.expect
    #	Source/IntegrationTests/TestFiles/LitTests/LitTest/comp/rust/reserved-names.dfy
    #	Source/IntegrationTests/TestFiles/LitTests/LitTest/comp/rust/tests.dfy.expect
    #	Source/IntegrationTests/TestFiles/LitTests/LitTest/comp/rust/traits.dfy
    #	Source/IntegrationTests/TestFiles/LitTests/LitTest/comp/rust/traits.dfy.expect
    MikaelMayer committed Jul 10, 2024
    Configuration menu
    Copy the full SHA
    bbde91a View commit details
    Browse the repository at this point in the history
  4. Fixed the merge commit

    MikaelMayer committed Jul 10, 2024
    Configuration menu
    Copy the full SHA
    428072f View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    832205a View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    a306e24 View commit details
    Browse the repository at this point in the history
  7. Configuration menu
    Copy the full SHA
    32de2e4 View commit details
    Browse the repository at this point in the history
  8. Configuration menu
    Copy the full SHA
    ddea4d4 View commit details
    Browse the repository at this point in the history
  9. Configuration menu
    Copy the full SHA
    8197e83 View commit details
    Browse the repository at this point in the history
  10. Merged master

    MikaelMayer committed Jul 10, 2024
    Configuration menu
    Copy the full SHA
    9d2a8ef View commit details
    Browse the repository at this point in the history
  11. Merged master

    MikaelMayer committed Jul 10, 2024
    Configuration menu
    Copy the full SHA
    5002833 View commit details
    Browse the repository at this point in the history
  12. Configuration menu
    Copy the full SHA
    3d446bf View commit details
    Browse the repository at this point in the history
  13. Configuration menu
    Copy the full SHA
    b6e6531 View commit details
    Browse the repository at this point in the history
  14. Formatting

    MikaelMayer committed Jul 10, 2024
    Configuration menu
    Copy the full SHA
    dc6dc2e View commit details
    Browse the repository at this point in the history
  15. extern errors fix

    MikaelMayer committed Jul 10, 2024
    Configuration menu
    Copy the full SHA
    c2afb5d View commit details
    Browse the repository at this point in the history

Commits on Jul 11, 2024

  1. Fixed CI

    MikaelMayer committed Jul 11, 2024
    Configuration menu
    Copy the full SHA
    b6b8d65 View commit details
    Browse the repository at this point in the history
  2. Fixed CI

    MikaelMayer committed Jul 11, 2024
    Configuration menu
    Copy the full SHA
    a311e51 View commit details
    Browse the repository at this point in the history
  3. Fixed expect file

    MikaelMayer committed Jul 11, 2024
    Configuration menu
    Copy the full SHA
    5b1f288 View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    a27df22 View commit details
    Browse the repository at this point in the history

Commits on Aug 2, 2024

  1. Configuration menu
    Copy the full SHA
    6b08007 View commit details
    Browse the repository at this point in the history

Commits on Aug 7, 2024

  1. Configuration menu
    Copy the full SHA
    d082e85 View commit details
    Browse the repository at this point in the history

Commits on Aug 8, 2024

  1. Resolved merge conflicts

    MikaelMayer committed Aug 8, 2024
    Configuration menu
    Copy the full SHA
    0da1b6f View commit details
    Browse the repository at this point in the history
  2. fixup: guarded for each loops no longer generate ConcreteSyntaxTrees

    Siva Somayyajula authored and MikaelMayer committed Aug 8, 2024
    Configuration menu
    Copy the full SHA
    16d1333 View commit details
    Browse the repository at this point in the history
  3. reserved names: hash now in reserved_vars

    Siva Somayyajula authored and MikaelMayer committed Aug 8, 2024
    Configuration menu
    Copy the full SHA
    6bca265 View commit details
    Browse the repository at this point in the history
  4. fixup: bounded integer ranges now have explicit newtype conversions w…

    …hen necessary
    Siva Somayyajula authored and MikaelMayer committed Aug 8, 2024
    Configuration menu
    Copy the full SHA
    c6f44b0 View commit details
    Browse the repository at this point in the history

Commits on Aug 9, 2024

  1. formatting

    MikaelMayer committed Aug 9, 2024
    Configuration menu
    Copy the full SHA
    fceb8a7 View commit details
    Browse the repository at this point in the history

Commits on Aug 15, 2024

  1. Configuration menu
    Copy the full SHA
    03b6afe View commit details
    Browse the repository at this point in the history

Commits on Aug 16, 2024

  1. Configuration menu
    Copy the full SHA
    5599798 View commit details
    Browse the repository at this point in the history
  2. Review comments

    MikaelMayer committed Aug 16, 2024
    Configuration menu
    Copy the full SHA
    083affa View commit details
    Browse the repository at this point in the history
  3. Merge branch 'refs/heads/master' into feat-rust-externs-subsets-eta-n…

    …ames-tests
    
    # Conflicts:
    #	Source/DafnyCore/Options/CommonOptionBag.cs
    MikaelMayer committed Aug 16, 2024
    Configuration menu
    Copy the full SHA
    b1f5e24 View commit details
    Browse the repository at this point in the history

Commits on Aug 19, 2024

  1. Review comments

    MikaelMayer committed Aug 19, 2024
    Configuration menu
    Copy the full SHA
    5713b72 View commit details
    Browse the repository at this point in the history

Commits on Aug 20, 2024

  1. Configuration menu
    Copy the full SHA
    848b00c View commit details
    Browse the repository at this point in the history
  2. Review comments

    MikaelMayer committed Aug 20, 2024
    Configuration menu
    Copy the full SHA
    d8e2b3c View commit details
    Browse the repository at this point in the history

Commits on Aug 21, 2024

  1. Review comments

    MikaelMayer committed Aug 21, 2024
    Configuration menu
    Copy the full SHA
    5da9893 View commit details
    Browse the repository at this point in the history
  2. Merge branch 'feat-rust-externs-subsets-eta-names-tests' of https://g…

    …ithub.com/dafny-lang/dafny into feat-rust-externs-subsets-eta-names-tests
    MikaelMayer committed Aug 21, 2024
    Configuration menu
    Copy the full SHA
    5d90e60 View commit details
    Browse the repository at this point in the history

Commits on Aug 23, 2024

  1. Review comments

    MikaelMayer committed Aug 23, 2024
    Configuration menu
    Copy the full SHA
    9cbfe25 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    4a4cc38 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    34091f7 View commit details
    Browse the repository at this point in the history
  4. Fixed rust tests

    MikaelMayer committed Aug 23, 2024
    Configuration menu
    Copy the full SHA
    a0265d8 View commit details
    Browse the repository at this point in the history

Commits on Aug 26, 2024

  1. Update Source/DafnyCore/Options/CommonOptionBag.cs

    Co-authored-by: Robin Salkeld <[email protected]>
    MikaelMayer and robin-aws authored Aug 26, 2024
    Configuration menu
    Copy the full SHA
    eccadb1 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    d662e3f View commit details
    Browse the repository at this point in the history
  3. Fixed a test case

    MikaelMayer committed Aug 26, 2024
    Configuration menu
    Copy the full SHA
    c6d477d View commit details
    Browse the repository at this point in the history
  4. Updated DCOMP

    MikaelMayer committed Aug 26, 2024
    Configuration menu
    Copy the full SHA
    d5a7743 View commit details
    Browse the repository at this point in the history

Commits on Sep 3, 2024

  1. Configuration menu
    Copy the full SHA
    618131a View commit details
    Browse the repository at this point in the history
  2. Fixed a CI test

    MikaelMayer committed Sep 3, 2024
    Configuration menu
    Copy the full SHA
    a31cd03 View commit details
    Browse the repository at this point in the history
  3. Regenerated C# files

    MikaelMayer committed Sep 3, 2024
    Configuration menu
    Copy the full SHA
    fc2de36 View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    4323517 View commit details
    Browse the repository at this point in the history
  5. Added missing makefile

    MikaelMayer committed Sep 3, 2024
    Configuration menu
    Copy the full SHA
    5405773 View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    354e19b View commit details
    Browse the repository at this point in the history

Commits on Sep 4, 2024

  1. Configuration menu
    Copy the full SHA
    a20aafa View commit details
    Browse the repository at this point in the history