Skip to content

Add peer type resolution for compatible tuples and arrays #15220

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

Conversation

PastMoments
Copy link

Fixes #15138.

Adds Peer Type Resolution between tuples and arrays, where the tuple can coerce into the array.

@PastMoments PastMoments force-pushed the tuple-array-peer-type-resolution branch 2 times, most recently from 4dba6cc to 0cc5d30 Compare April 10, 2023 01:35
@PastMoments PastMoments force-pushed the tuple-array-peer-type-resolution branch 3 times, most recently from 1e983f4 to 598e965 Compare May 7, 2023 07:09
@PastMoments PastMoments force-pushed the tuple-array-peer-type-resolution branch from 598e965 to c266d73 Compare May 31, 2023 19:43
@PastMoments PastMoments force-pushed the tuple-array-peer-type-resolution branch from c266d73 to ac1a29a Compare May 31, 2023 19:48
@PastMoments
Copy link
Author

Sorry if anyone was waiting on this.

The summary is that i was using the wrong version of zig fmt mistakenly, and then got distracted trying to update to llvm 16.

Those issues (should) be fixed now.

@PastMoments
Copy link
Author

Actually, looks like the rework in #15726 will resolve this issue, so I'm going to close this PR.

@PastMoments PastMoments closed this Jun 7, 2023
@PastMoments
Copy link
Author

For anyone that happens to stumble on this and has the same issue that I do (pacman hasn't updated to llvm 16 yet). Here's how to compile and use llvm 16 (I copied this from edtoml in some AUR comment).

cd ~/llvm
git clone --depth 1 --branch release/16.x https://github.com/llvm/llvm-project llvm-project-16
cd llvm-project-16
git checkout release/16.x
mkdir build
cd build
cmake ../llvm \
  -DCMAKE_INSTALL_PREFIX=$HOME/local/llvm16 \
  -DCMAKE_PREFIX_PATH=$HOME/local/llvm16 \
  -DCMAKE_BUILD_TYPE=Release \
  -DLLVM_ENABLE_PROJECTS="lld;clang" \
  -DLLVM_ENABLE_LIBXML2=OFF \
  -DLLVM_ENABLE_TERMINFO=OFF \
  -DLLVM_ENABLE_LIBEDIT=OFF \
  -DLLVM_ENABLE_ASSERTIONS=ON \
  -G Ninja \
  -DLLVM_PARALLEL_LINK_JOBS=1 \
  -DLLVM_ENABLE_BINDINGS=OFF
ninja install

then set the environment variable
PATH=$HOME/local/llvm16/bin:$PATH

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Peer Type Resolution fails with Homogeneous tuple and array.
1 participant