REF: use fused types for join_helper
Related but orthogonal to #23022.
Hello @jbrockmendel! Thanks for submitting the PR.

 - There are no PEP8 issues in the file [`pandas/core/indexes/base.py`](https://github.com/jbrockmendel/pandas/blob/01e5c40b5553c52c29a4587c980e405b58d2fe22/pandas/core/indexes/base.py) !

 - There are no PEP8 issues in the file [`pandas/core/indexes/numeric.py`](https://github.com/jbrockmendel/pandas/blob/01e5c40b5553c52c29a4587c980e405b58d2fe22/pandas/core/indexes/numeric.py) !

 - There are no PEP8 issues in the file [`setup.py`](https://github.com/jbrockmendel/pandas/blob/01e5c40b5553c52c29a4587c980e405b58d2fe22/setup.py) !

 I'm seeing this same Travis failure in several unrelated PRs. https://github.com/pandas-dev/pandas/issues/23172

I haven't made any progress debugging it though. # [Codecov](https://codecov.io/gh/pandas-dev/pandas/pull/23171?src=pr&el=h1) Report
> Merging [#23171](https://codecov.io/gh/pandas-dev/pandas/pull/23171?src=pr&el=desc) into [master](https://codecov.io/gh/pandas-dev/pandas/commit/913f71f74709e4d4814e50f21768b97ce2c6ef8d?src=pr&el=desc) will **decrease** coverage by `<.01%`.
> The diff coverage is `100%`.

[![Impacted file tree graph](https://codecov.io/gh/pandas-dev/pandas/pull/23171/graphs/tree.svg?width=650&token=eZ4WkYLtcO&height=150&src=pr)](https://codecov.io/gh/pandas-dev/pandas/pull/23171?src=pr&el=tree)

```diff
@@            Coverage Diff             @@
##           master   #23171      +/-   ##
==========================================
- Coverage   92.19%   92.19%   -0.01%     
==========================================
  Files         169      169              
  Lines       50959    50956       -3     
==========================================
- Hits        46980    46977       -3     
  Misses       3979     3979
```

| Flag | Coverage Δ | |
|---|---|---|
| #multiple | `90.61% <100%> (-0.01%)` | :arrow_down: |
| #single | `42.27% <66.66%> (-0.02%)` | :arrow_down: |

| [Impacted Files](https://codecov.io/gh/pandas-dev/pandas/pull/23171?src=pr&el=tree) | Coverage Δ | |
|---|---|---|
| [pandas/core/indexes/numeric.py](https://codecov.io/gh/pandas-dev/pandas/pull/23171/diff?src=pr&el=tree#diff-cGFuZGFzL2NvcmUvaW5kZXhlcy9udW1lcmljLnB5) | `97.27% <100%> (-0.15%)` | :arrow_down: |
| [pandas/core/indexes/base.py](https://codecov.io/gh/pandas-dev/pandas/pull/23171/diff?src=pr&el=tree#diff-cGFuZGFzL2NvcmUvaW5kZXhlcy9iYXNlLnB5) | `96.55% <100%> (ø)` | :arrow_up: |
| [pandas/core/reshape/merge.py](https://codecov.io/gh/pandas-dev/pandas/pull/23171/diff?src=pr&el=tree#diff-cGFuZGFzL2NvcmUvcmVzaGFwZS9tZXJnZS5weQ==) | `93.94% <0%> (+0.04%)` | :arrow_up: |

------

[Continue to review full report at Codecov](https://codecov.io/gh/pandas-dev/pandas/pull/23171?src=pr&el=continue).
> **Legend** - [Click here to learn more](https://docs.codecov.io/docs/codecov-delta)
> `Δ = absolute <relative> (impact)`, `ø = not affected`, `? = missing data`
> Powered by [Codecov](https://codecov.io/gh/pandas-dev/pandas/pull/23171?src=pr&el=footer). Last update [913f71f...d7d0145](https://codecov.io/gh/pandas-dev/pandas/pull/23171?src=pr&el=lastupdated). Read the [comment docs](https://docs.codecov.io/docs/pull-request-comments).
 thanks!