Skip to content
This repository has been archived by the owner on May 4, 2024. It is now read-only.

Pushing Aptos changes upstream #1066

Merged
merged 58 commits into from
Jul 12, 2023
Merged

Pushing Aptos changes upstream #1066

merged 58 commits into from
Jul 12, 2023

Commits on Jul 12, 2023

  1. fix diem specs (#7754)

    GitOrigin-RevId: c218c01a35bb551a6fbd269b667c3c7aabca4352
    rahxephon89 authored and wrwg committed Jul 12, 2023
    Configuration menu
    Copy the full SHA
    0c56f8c View commit details
    Browse the repository at this point in the history
  2. [bytecote verifier] fix the abstract interpreter bypass bug (#7810)

    GitOrigin-RevId: e28d32f58ea770797ed8e7e6c9fbd75724412950
    vgao1996 authored and wrwg committed Jul 12, 2023
    Configuration menu
    Copy the full SHA
    8054d8a View commit details
    Browse the repository at this point in the history
  3. [resource-viewer] Fix resolution of generics in move types

    If there's a generic, the Fat type parsing didn't use the type from
    the type arguments, which caused it to fail to parse.  Now, this will
    take in the type arguments to properly parse the inputs.
    
    GitOrigin-RevId: ba8c0de4e81e23bbe88e7c90ea6356e4c20b5c24
    gregnazario authored and wrwg committed Jul 12, 2023
    Configuration menu
    Copy the full SHA
    446e567 View commit details
    Browse the repository at this point in the history
  4. Remove unnecessary *& syntax (#7830)

    GitOrigin-RevId: 8244cda0130337e8c864f6f6fbc33b0a510e97cf
    movekevin authored and wrwg committed Jul 12, 2023
    Configuration menu
    Copy the full SHA
    0f0c68a View commit details
    Browse the repository at this point in the history
  5. [model compiler] Introduce patterns and type check assign

    This introduces the new type of patterns into the model. Patterns are like expressions but represent lvalues or matches. This is used to implement type checking of assignment. Lets also have been refactored to use patterns during checking, but this isn't yet pushed into the AST, which will be a larger breaking change.
    
    GitOrigin-RevId: d5c6a8139d96fb16c3fc8bc8d09aaeb28498c57c
    wrwg committed Jul 12, 2023
    Configuration menu
    Copy the full SHA
    d12c36d View commit details
    Browse the repository at this point in the history
  6. [vm] propagate error message up instead of logging directly

    GitOrigin-RevId: 51cc46a991d2e2e5445c591ef39da7975f60818a
    zekun000 authored and wrwg committed Jul 12, 2023
    Configuration menu
    Copy the full SHA
    bfb7037 View commit details
    Browse the repository at this point in the history
  7. Remove dead traits (DataStore), remove unnecessary generics (MoveReso…

    …lver::Error) and introduce "dyn" instead of "impl" at boundaries (#7817)
    
    GitOrigin-RevId: 54f0ce8f8aabac0685174456139e7e2e2ea006cb
    gerben-stavenga authored and wrwg committed Jul 12, 2023
    Configuration menu
    Copy the full SHA
    379c2ce View commit details
    Browse the repository at this point in the history
  8. [model-compiler] Use patterns everywhere in the AST; remove interpret…

    …er and simplifier
    
    This replaces the use of `LocalVarDecl` accross the model with the new `Pattern` type. This applies to `Block`, `Quant`, and 'Lambda` expression variants.
    
    It also removes some code which is currently not used in applications, namely the stackless bytecode interpreter, the spec simplifier and the flattener. While we are refactoring, we have better agility without this code. We can bring it back from git history later if needed.
    
    GitOrigin-RevId: a514e89e805b5a5d552c443dd5dad6b5ae117a03
    wrwg committed Jul 12, 2023
    Configuration menu
    Copy the full SHA
    ce46386 View commit details
    Browse the repository at this point in the history
  9. [bytecode verifier] improved signature checker impl (#7856)

    GitOrigin-RevId: 70e6068d2c690209232dbf5896d7ac89496f228f
    vgao1996 authored and wrwg committed Jul 12, 2023
    Configuration menu
    Copy the full SHA
    5a2685f View commit details
    Browse the repository at this point in the history
  10. refactor a bit (#7918)

    * refactor a bit
    
    * remove arc from VM
    
    * Fix is_resource_group
    
    * fix build error
    
    * temp
    
    * tmp
    
    * refactor
    
    * add utils
    
    * remove generic type params
    
    * remove unused
    
    * revert
    
    * fmt
    
    * Add new macro
    
    * undo changes
    
    * improve map_err
    
    * remove map_err
    
    GitOrigin-RevId: 41cf4715bbfd3a2d7862e810e12ebd1b5d87485d
    gerben-stavenga authored and wrwg committed Jul 12, 2023
    Configuration menu
    Copy the full SHA
    5d7a62b View commit details
    Browse the repository at this point in the history
  11. Revert "refactor a bit (#7918)"

    This reverts commit 41cf4715bbfd3a2d7862e810e12ebd1b5d87485d.
    
    GitOrigin-RevId: 04e2662ad9d47b1ecebada305af5376a6575830a
    sherry-x authored and wrwg committed Jul 12, 2023
    Configuration menu
    Copy the full SHA
    a696d0f View commit details
    Browse the repository at this point in the history
  12. [move] Use identstr! everywhere possible for consistency (#8049)

    GitOrigin-RevId: b6f79f71b373799d4b21c2e3180119e868320d62
    gregnazario authored and wrwg committed Jul 12, 2023
    Configuration menu
    Copy the full SHA
    b4564d3 View commit details
    Browse the repository at this point in the history
  13. Revert "Revert "refactor a bit (#7918)"" (#8044)

    * Revert "Revert "refactor a bit (#7918)""
    
    This reverts commit 04e2662ad9d47b1ecebada305af5376a6575830a.
    
    * check
    
    * remove cache fallback
    
    GitOrigin-RevId: a26b2821feabdc36f83f19f5c16018335daf22a1
    gerben-stavenga authored and wrwg committed Jul 12, 2023
    Configuration menu
    Copy the full SHA
    c1ac8b8 View commit details
    Browse the repository at this point in the history
  14. Refactor resolver with metadata (#8089)

    * Refactor resolver with metadata
    
    * Further refactor
    
    * fix api
    
    * fix module publishing
    
    * make get_resource member of MoveResolver trait
    
    * rename remote -> resolver
    
    * Address coments
    
    * another comment
    
    * make session just carry movevm
    
    * fix metadata mismatch
    
    GitOrigin-RevId: 0e3956259aa7c823e27e16f379d9e63233e6ed6f
    gerben-stavenga authored and wrwg committed Jul 12, 2023
    Configuration menu
    Copy the full SHA
    e7bb355 View commit details
    Browse the repository at this point in the history
  15. track storage slot payer

    GitOrigin-RevId: 0f9891e346180661375e65ef0e1800116cf7e8d7
    msmouse authored and wrwg committed Jul 12, 2023
    Configuration menu
    Copy the full SHA
    6dc086e View commit details
    Browse the repository at this point in the history
  16. [move] skip core dump with storage error and replace unknown invarian…

    …t error with storage error
    
    GitOrigin-RevId: ebd06050196e4900fe912983453d67f22143d3cb
    zekun000 authored and wrwg committed Jul 12, 2023
    Configuration menu
    Copy the full SHA
    73e98bc View commit details
    Browse the repository at this point in the history
  17. [model compiler] Refactor move-model to be independent of bytecode

    This is a large refactor of the `move-model` to become independent of bytecode, and an essential step towards the new compiler. In
    
    Originally the move-model was designed to work from bytecode as generated by the Move compiler. As such it was input the prover, docgen, and other tools. This PR makes this dependency optional:
    
    - The model can still operate base off bytecode, supporting all exisiting use cases and tests. This is important for the incremental introduction of the new compiler infra.
    - In a new execution path enabled by this PR, the model can also operate without having bytecode as input. In this case, the model builder will completely compile the model from the Move sources.
    
    The focus of this PR is preparing the 2nd operation mode without breaking the first.
    
    This PR also removes a number of unused crates to simplify refactoring:
    
    - stackless bytecode interpreter
    - legacy read-write set analysis
    - legacy escape analysis
    
    GitOrigin-RevId: eecbcfc1c627048418a0e62e59aa8d69803cc6cd
    wrwg committed Jul 12, 2023
    Configuration menu
    Copy the full SHA
    ed306fe View commit details
    Browse the repository at this point in the history
  18. [move] Hook for VM session output format (#8189)

    Move `ChangeSet` and `AccountChangeSet` types are now generic. The
    motivation for this change is to avoid any particular representation being used
    to communicate changes.
    
    All Move code is fully compatible with the change, all old APIs are preserved.
    However, additionally session can take a hook which dictates how resources
    should be outputed. The hook is implemented as a callback which the user can
    pass on the adapter's side.
    
    GitOrigin-RevId: 1e6db1183ec924ca5fe5490e1fd4b571867c150e
    georgemitenkov authored and wrwg committed Jul 12, 2023
    Configuration menu
    Copy the full SHA
    a3eaa83 View commit details
    Browse the repository at this point in the history
  19. [docs]update module file name recommendation (#8463)

    GitOrigin-RevId: 65d160be3a168d5dd887eca0218261c881db8808
    fgfm999 authored and wrwg committed Jul 12, 2023
    Configuration menu
    Copy the full SHA
    3f729e5 View commit details
    Browse the repository at this point in the history
  20. cherry-pick: improved value depth checks in the VM (#8485)

    GitOrigin-RevId: a8ca28437a4ddb1e0f09d8621cf59a2f706c1011
    vgao1996 authored and wrwg committed Jul 12, 2023
    Configuration menu
    Copy the full SHA
    c1d0931 View commit details
    Browse the repository at this point in the history
  21. Update gas metering (#8526)

    * Add accurate resource group gas metering
    
    * Add accurate resource group gas metering
    
    * fix
    
    * add test
    
    * Correct feature version
    
    * change trait signature
    
    * Clear any resource cache after proloque
    
    * bump gas feature
    
    * add comment
    
    * fix trigger condition for build jobs
    
    * test loadtest
    
    * add improvement
    
    * Fix respawn session whatever that maybe
    
    ---------
    
    Co-authored-by: gerben <[email protected]>
    Co-authored-by: geekflyer <[email protected]>
    GitOrigin-RevId: 09359aa961e909699939783bd438e967ca381bdb
    3 people authored and wrwg committed Jul 12, 2023
    Configuration menu
    Copy the full SHA
    99bc9c0 View commit details
    Browse the repository at this point in the history
  22. [Prover][Spec] Fix apply schema (#8518)

    * fix apply schema
    
    * fix coin spec
    
    * fix trigger condition for build jobs
    
    ---------
    
    Co-authored-by: geekflyer <[email protected]>
    GitOrigin-RevId: aaadc26166e57780c01e566cedc1588ecadd9d78
    2 people authored and wrwg committed Jul 12, 2023
    Configuration menu
    Copy the full SHA
    8f8ae0f View commit details
    Browse the repository at this point in the history
  23. add new fuzzer + google oss-fuzz integration files (#8534)

    This commit introduces a new fuzzer crate that hosts fuzz tests for aptos-core.
    
    The first version of the fuzzer includes these fuzz tests:
    - Move Bytecode Verifier CodeUnit and Mixed modules
    - Move execute entry function
    - Move MoveValue decorate/undecorate
    - Move MoveValue deserialize
    - Move Value deserialize
    - Signed Transaction deserialize
    
    GitOrigin-RevId: e267e3ed1f07e1f5a430256854dcff33e71c2263
    gedigi authored and wrwg committed Jul 12, 2023
    Configuration menu
    Copy the full SHA
    cde7090 View commit details
    Browse the repository at this point in the history
  24. [gas] fix gas metering for resource groups (#8549)

    GitOrigin-RevId: faff4ee44632e772ff6881d12eb5d2eabdf69566
    vgao1996 authored and wrwg committed Jul 12, 2023
    Configuration menu
    Copy the full SHA
    fe1fc22 View commit details
    Browse the repository at this point in the history
  25. Add docgen support for attributes (e.g., #[view]) (Issue #7932) (#8636)

    * Fix aptos-labs/aptos-core#7932
    
    Docgen should output attributes (#7932).
    
    Output attributes (e.g., #[view] or #[resource_group(scope = global)])
    from docgen for move code.  Currently only handles attibutes on
    Function, Script/Module, and Struct/Resource.
    
    Note that attributes are allowed on some other syntactic objects
    (address scope, use statement, const definition, spec), but how to
    format these usefully in docgen is unclear.  for these in docgen is
    unclear.
    
    Also fix an unrelated bug discovered when adapting
    attribute_placement.move as a test of docgen: previously, only a
    single Module/Script per input file would be output in docgen.
    
    * Update move library docs with new docgen.
    
    ---------
    
    Co-authored-by: Brian R. Murphy <[email protected]>
    GitOrigin-RevId: bea5520c277d8e57982798a36c6b60c5aa8bee00
    2 people authored and wrwg committed Jul 12, 2023
    Configuration menu
    Copy the full SHA
    47cfcf9 View commit details
    Browse the repository at this point in the history
  26. [Rust Toolchain] Upgrade up to rust version 1.7

    GitOrigin-RevId: 1e65e9703625693801fb335d83fc27690354c2c7
    JoshLind authored and wrwg committed Jul 12, 2023
    Configuration menu
    Copy the full SHA
    2b88f23 View commit details
    Browse the repository at this point in the history
  27. [compiler v2] Setup basic driver and test environment

    This creates a new crate `move-compiler-v2`, containing a few basic components:
    
    - A model of options and experiments for the compiler. This has been adapted from the Move-to-Yul compiler from last year.
    - A test driver which supports experiments, with a first smoke test to ensure basic functionality of the setup.
    - Top level entry function to call the compiler. It invokes the  new compilation mode of the move-model, which types check and constructs an AST. After that is unimplemented.
    
    The PR also adds an additional entry point for the move-model to support the above.
    
    GitOrigin-RevId: 1b7b553f3682f1a2ae060e113b4720bfd0799d7e
    wrwg committed Jul 12, 2023
    Configuration menu
    Copy the full SHA
    023dd85 View commit details
    Browse the repository at this point in the history
  28. [aptos-vm] Log cleanups (#8749)

    GitOrigin-RevId: 66de618e4ddb823ca2c2aabaa3726a0e3a43a6eb
    runtian-zhou authored and wrwg committed Jul 12, 2023
    Configuration menu
    Copy the full SHA
    e761055 View commit details
    Browse the repository at this point in the history
  29. [deps] Upgrade to Clap 4

    GitOrigin-RevId: f4a2a656156071dd162333924e4ec02732d8a27b
    gregnazario authored and wrwg committed Jul 12, 2023
    Configuration menu
    Copy the full SHA
    bed9878 View commit details
    Browse the repository at this point in the history
  30. [deps] Update defaults for clap

    GitOrigin-RevId: ad4adbea8c95a82205f22d13058bca9cf433e543
    gregnazario authored and wrwg committed Jul 12, 2023
    Configuration menu
    Copy the full SHA
    ade08ea View commit details
    Browse the repository at this point in the history
  31. [deps] Upgrade Move to clap 4

    Every tool in Move is now upgraded to clap 4 except for prover
    
    GitOrigin-RevId: c4f07e8b73d5ce0acf7847df20ca8cdd0cc73c09
    gregnazario authored and wrwg committed Jul 12, 2023
    Configuration menu
    Copy the full SHA
    84ef914 View commit details
    Browse the repository at this point in the history
  32. [deps] Upgrade Move Prover to Clap 4

    GitOrigin-RevId: a5978350e2d45aff3e75c8698a10102ddbd7db04
    gregnazario authored and wrwg committed Jul 12, 2023
    Configuration menu
    Copy the full SHA
    0499385 View commit details
    Browse the repository at this point in the history
  33. [cli] Add color back into the Aptos CLI

    This includes putting completions and color into a common crate
    to be used by any CLI tools
    
    GitOrigin-RevId: 8f7ea9a48df70b96fb040ff778dedc6a3773e56d
    gregnazario authored and wrwg committed Jul 12, 2023
    Configuration menu
    Copy the full SHA
    7d47c2f View commit details
    Browse the repository at this point in the history
  34. [prover] upgrade to clap 4 / fix tests

    GitOrigin-RevId: 6c2dcd284629036d86d0a56ed7fea5ae4beee17f
    gregnazario authored and wrwg committed Jul 12, 2023
    Configuration menu
    Copy the full SHA
    0aad946 View commit details
    Browse the repository at this point in the history
  35. [move] Fix CLI incompatibilities in Move tools

    GitOrigin-RevId: ed0b35113acc71acc499c388c62f3d522a97bf01
    gregnazario authored and wrwg committed Jul 12, 2023
    Configuration menu
    Copy the full SHA
    3bce35c View commit details
    Browse the repository at this point in the history
  36. [cli] Add syntax check test for every CLI tool

    GitOrigin-RevId: 216c346f7ebccc6ce82a3f5ad945fff2a23a1c36
    gregnazario authored and wrwg committed Jul 12, 2023
    Configuration menu
    Copy the full SHA
    ea2ffda View commit details
    Browse the repository at this point in the history
  37. [aptos-vm] Accumulate errors (#8799)

    * [aptos-vm] Add sub_status for error
    
    * [aptos-vm] Make groups for sub statuses.
    
    GitOrigin-RevId: 76d65fa4bed35a3d15dfa0892ede5b420291dc8a
    runtian-zhou authored and wrwg committed Jul 12, 2023
    Configuration menu
    Copy the full SHA
    4eb7fd1 View commit details
    Browse the repository at this point in the history
  38. [compiler v2] Initial setup of bytecode processing

    This extends the compiler driver and testsuite by the basic modules for bytecode generation and processing:
    
    - Adds a generator from the Move Model AST to stackless bytecode. This first version only deals with basic expressions.
    - Configures a stackless bytecode processor pipeline. This will allow us to add multiple phases like safety and borrow analysis and optimizations. For now the pipeline is empty.
    - Adopts the testsuite to support a test configuration which is configured via the test source directory. This allows us to group tests for testing different aspects of a pipeline.
    
    Some of this may look like overkill but this apporach has been worked well for the stackless bytecode processing of the Move Prover. Subsequent PRs will add first processors to the pipeline and iilustrate the usage.
    
    GitOrigin-RevId: 7b4aecb3176b8fb7367b65e7fd34a5dac82873b3
    wrwg committed Jul 12, 2023
    Configuration menu
    Copy the full SHA
    510af02 View commit details
    Browse the repository at this point in the history
  39. Addressing reviewer comments

    GitOrigin-RevId: 54304af41e5b2d2d2aa5210c89f30ca1c98560ca
    wrwg committed Jul 12, 2023
    Configuration menu
    Copy the full SHA
    c583ab5 View commit details
    Browse the repository at this point in the history
  40. Aptos gas payer (#8773)

    * initial commit
    
    * Support gas payer
    
    * Remove relics
    
    * Fix
    
    * Make verification know about gas payer bit
    
    * update comments
    
    * Remove merge conflict
    
    * Give MSB a good name
    
    * Reformat
    
    * improve
    
    * add comment
    
    * Fix spec
    
    GitOrigin-RevId: 6d4b49514f1fba0a23c2d515f67b7345ec7c1603
    gerben-stavenga authored and wrwg committed Jul 12, 2023
    Configuration menu
    Copy the full SHA
    b1837eb View commit details
    Browse the repository at this point in the history
  41. [cli] Add dev address mode for compiler

    This allows --dev to be added to use the [dev-addresses] as well as updates
    that really confusing error message to match
    
    GitOrigin-RevId: 9b4c616057b234cad468bde2e8539004701752ca
    gregnazario authored and wrwg committed Jul 12, 2023
    Configuration menu
    Copy the full SHA
    c568eb4 View commit details
    Browse the repository at this point in the history
  42. [move] Update test outputs for --dev flag

    GitOrigin-RevId: 8b5d8548721ad88b166440fb55558bf7d6e5c1cf
    gregnazario authored and wrwg committed Jul 12, 2023
    Configuration menu
    Copy the full SHA
    29be5b7 View commit details
    Browse the repository at this point in the history
  43. [deps] Upgrade windows dependencies to ensure aptos CLI builds (#8884)

    The previous dependent dependencies were using an incompatible
    changes with rust 1.70.  This should fix it and condense some
    of the dependencies.
    
    GitOrigin-RevId: c67c15f5bbc5e8d7a65b7d9acabe3fad995f812d
    gregnazario authored and wrwg committed Jul 12, 2023
    Configuration menu
    Copy the full SHA
    88d38af View commit details
    Browse the repository at this point in the history
  44. [vm] add error messages for failing to initialize gas parameters (#8813)

    GitOrigin-RevId: 9004a5157fba7380419661c9a223014142f8d646
    vgao1996 authored and wrwg committed Jul 12, 2023
    Configuration menu
    Copy the full SHA
    16abeb6 View commit details
    Browse the repository at this point in the history
  45. [move-prover] on different theories for vector modeling (#8121)

    This PR contains two test cases to show how vector theories might have
    an impact on the prover's ability on proving complicated propositions
    w.r.t vector, especially with heavy involvement of quantifiers:
    
    - On test case `f1`:
      - `BoogieArray` (the default vector theory) will given a verification
        error with an inconsistent counterexample while
      - `BoogieArrayIntern` and `SmtSeq` can prove the proposition
    
    - On test case `f2`:
      - `BoogieArray` times out while
      - `BoogieArrayIntern` and `SmtSeq` can prove the proposition
    
    GitOrigin-RevId: d3522e12878e7ffbf125cd55bb867ab07838e90e
    meng-xu-cs authored and wrwg committed Jul 12, 2023
    Configuration menu
    Copy the full SHA
    a0f7a36 View commit details
    Browse the repository at this point in the history
  46. fix some lints

    GitOrigin-RevId: cb39784fad84d6ae32759f3056c9bf7ccddb4a21
    davidiw authored and wrwg committed Jul 12, 2023
    Configuration menu
    Copy the full SHA
    5548c5b View commit details
    Browse the repository at this point in the history
  47. [move-compiler-v2] Type checker: porting tests for name resolution an…

    …d fixing issues
    
    This ports the tests from the v1 compiler for name resolution into the v2  compiler and fixes related issues:
    
    - Add support for macros (`assert!`) which are expanded before type checking
    - Renames and extends the builtin function representation to capture all Move builtins
    - Distinguishing between symbols defined both in spec and impl or only one of those
    - Improve error messages
    - Fixes issues as needed to pass tests
    
    GitOrigin-RevId: 691b520464e2fa5927de5807713644a876f676e2
    wrwg committed Jul 12, 2023
    Configuration menu
    Copy the full SHA
    5786318 View commit details
    Browse the repository at this point in the history
  48. Fix move-compiler panic in case of inlined method use in parameter to…

    … inlined method. (#8867)
    
    Includes test case illustrating original bug (aptos-labs/aptos-core#8516)
    plus a number of tests to check corner cases of multiple inlining and recursive inlining.
    (Several failed without this fix.)
    
    Also replace panic!("ICE expected function parameter to be a lambda") with a more useful diag
    output.
    
    GitOrigin-RevId: ea19ce1b272e5e2e979057bd58990e76e6c4d03a
    brmataptos authored and wrwg committed Jul 12, 2023
    Configuration menu
    Copy the full SHA
    2c67b5b View commit details
    Browse the repository at this point in the history
  49. [Spec] add spec to the math modules (#8915)

    * [Spec] add spec to the math modules
    
    * Added `math8.move` as the Prover test
    
    GitOrigin-RevId: 3d281ad455bd5881c41ae86cd7982b1fa2092cbf
    junkil-park authored and wrwg committed Jul 12, 2023
    Configuration menu
    Copy the full SHA
    a677c3d View commit details
    Browse the repository at this point in the history
  50. [move-compiler] Inlining: raise an error instead of ICE on a native i…

    …nline fun declaration. (#8934) (#8958)
    
    GitOrigin-RevId: 564f66ad09f3fe26cfa10e63c834c2de69a7ca31
    brmataptos authored and wrwg committed Jul 12, 2023
    Configuration menu
    Copy the full SHA
    19545b9 View commit details
    Browse the repository at this point in the history
  51. [move-compiler-v2] Refining type checker and porting test cases

    This ports some first batch of 100 test cases from the v1 compiler related to typing, and adapts the implementation to handles those scenarios correctly.
    
    - Adds the concept of _constraints_ to type unification. These are basically a first simple version of (for now) builtin traits. For example, a constant `0` has type `X where Constraint::SomePrimitive(u8,u16,..,u256)`. This was needed to match the behavipr of the v1 compiler regards inference related to constants, bu in a more general way. It was not needed previously in the specification language checker because there, we have a unified `num` type for integers.
    - Implements `&` class of operators in the checker, which weren't supported before.
    - Cleans up state of the `ExpBuilder` with an `ExpBuilderMode` type instead of multiple booleans.
    - Multiple smaller improvements, reporting additional errors, making error messages more clearer, etc.
    
    GitOrigin-RevId: c8e0581f9b8a8aa1888f118c881a8073d1e5172a
    wrwg committed Jul 12, 2023
    Configuration menu
    Copy the full SHA
    cad0896 View commit details
    Browse the repository at this point in the history
  52. add compiler tests for const = break (#9004)

    GitOrigin-RevId: c107cbeff4cad50f67ecc49997264bb526029666
    brmataptos authored and wrwg committed Jul 12, 2023
    Configuration menu
    Copy the full SHA
    7341602 View commit details
    Browse the repository at this point in the history
  53. Add stack trace for invariant violation to error message (#8081)

    * Add stack trace for invariant violation to error message
    
    * fmt
    
    GitOrigin-RevId: 91bf46d8d639abfce8e3bf5395fdd5dd347cb159
    gerben-stavenga authored and wrwg committed Jul 12, 2023
    Configuration menu
    Copy the full SHA
    36363e0 View commit details
    Browse the repository at this point in the history
  54. [deps] Upgrade bitvec to 1.0.1

    GitOrigin-RevId: 723e57b89a3d24bd94440ab0e0d2632512225751
    gregnazario authored and wrwg committed Jul 12, 2023
    Configuration menu
    Copy the full SHA
    b32bae9 View commit details
    Browse the repository at this point in the history
  55. [move-compiler v2] Porting remaining typing tests and refining type c…

    …hecker
    
    This ports the remaining 200+ tests of the v1 compiler `typing` testsuite and refines the v2 compiler to handle those correctly. Major changes include:
    
    - Introducing ordering in type unification. This is necessary to deal with conversions like `&mut T` to `&T`. The general mechanism will allow us to have also other conversions if we need down the road.
    - Introducing a mechanism to define a default for type inference via constraints. If a type variable has no unique instantiation, then the default is chosen. For example, the default for integer constants is `u64`.
    - Implementing the remaining expansion AST constructs from the Move parser. All expression variants are now handled.
    
    With this, we should have a fairly feature complete and tested type checker. This doesn't do, however:
    
    - visibility checking (private/friend)
    - mutation checking (whether something which is mutated can be actually mutated)
    - ability (copy, drop, ...) checking
    - reference safety (borrow) checking
    
    Those phases have been merged partly into the v1 type checker. For the v2 compiler, the plan is to handle them on bytecode level, similar as in the bytecode verifier.
    
    GitOrigin-RevId: b69b4de30cd37f4ca6799c096b6c1069771ba3fd
    wrwg committed Jul 12, 2023
    Configuration menu
    Copy the full SHA
    11fb13f View commit details
    Browse the repository at this point in the history
  56. Addressing reviewer comments around error messages

    GitOrigin-RevId: 9510d7896510c4bb179220acfd4bbaf70e544c2b
    wrwg committed Jul 12, 2023
    Configuration menu
    Copy the full SHA
    481a508 View commit details
    Browse the repository at this point in the history
  57. Adding dump of parsed and type checked AST to .exp baseline files. Ov…

    …erhaul the AST pretty printer for that.
    
    GitOrigin-RevId: d0a02371edfbe647d46f99f18e59458831ca3a91
    wrwg committed Jul 12, 2023
    Configuration menu
    Copy the full SHA
    9dd0672 View commit details
    Browse the repository at this point in the history
  58. Pushing Aptos changes upstream

    This is a collection of commits submitted to the Aptos version of the Move tree.
    wrwg committed Jul 12, 2023
    Configuration menu
    Copy the full SHA
    23cef60 View commit details
    Browse the repository at this point in the history