You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
* Using the [josh](#synchronizing-a-josh-subtree) tool
44
+
*`miri`
45
+
*`rust-analyzer`
46
+
*`rustc-dev-guide`
47
+
*`compiler-builtins`
48
+
*`stdarch`
49
49
50
50
### Josh subtrees
51
51
52
-
The [josh] tool is an alternative to git subtrees, which manages git history in a different way and scales better to larger repositories. Specific tooling is required to work with josh; you can check out the `miri` or `rust-analyzer` scripts linked above for inspiration. We provide a helper [`rustc-josh-sync`][josh-sync] tool to help with the synchronization, described [below](#synchronizing-a-josh-subtree).
52
+
The [josh] tool is an alternative to git subtrees, which manages git history in a different way and scales better to larger repositories. Specific tooling is required to work with josh. We provide a helper [`rustc-josh-sync`][josh-sync] tool to help with the synchronization, described [below](#synchronizing-a-josh-subtree).
53
53
54
54
### Synchronizing a Josh subtree
55
55
56
56
We use a dedicated tool called [`rustc-josh-sync`][josh-sync] for performing Josh subtree updates.
57
-
Currently, we are migrating Josh repositories to it. So far, it is used in:
57
+
The commands below can be used for all our Josh subtrees, although note that `miri`
58
+
requires you to perform some [additional steps](https://github.com/rust-lang/miri/blob/master/CONTRIBUTING.md#advanced-topic-syncing-with-the-rustc-repo) during pulls.
58
59
59
-
- compiler-builtins
60
-
- rustc-dev-guide
61
-
- stdarch
62
-
63
-
To install the tool:
60
+
You can install the tool using the following command:
Copy file name to clipboardExpand all lines: src/hir/ambig-unambig-ty-and-consts.md
+2-2Lines changed: 2 additions & 2 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -38,7 +38,7 @@ Note that places 3 and 4 would never actually be possible to encounter as we alw
38
38
This has a few failure modes:
39
39
- People may write visitors which check for `GenericArg::Infer` but forget to check for `hir::TyKind/ConstArgKind::Infer`, only handling infers in ambig positions by accident.
40
40
- People may write visitors which check for `hir::TyKind/ConstArgKind::Infer` but forget to check for `GenericArg::Infer`, only handling infers in unambig positions by accident.
41
-
- People may write visitors which check for `GenerArg::Type/Const(TyKind/ConstArgKind::Infer)` and `GenerigArg::Infer`, not realising that we never represent inferred types/consts in ambig positions as a `GenericArg::Type/Const`.
41
+
- People may write visitors which check for `GenericArg::Type/Const(TyKind/ConstArgKind::Infer)` and `GenericArg::Infer`, not realising that we never represent inferred types/consts in ambig positions as a `GenericArg::Type/Const`.
42
42
- People may write visitors which check for *only*`TyKind::Infer` and not `ConstArgKind::Infer` forgetting that there are also inferred const arguments (and vice versa).
43
43
44
44
To make writing HIR visitors less error prone when caring about inferred types/consts we have a relatively complex system:
0 commit comments