about summary refs log tree commit diff
path: root/src/rustllvm/ExecutionEngineWrapper.cpp
diff options
context:
space:
mode:
authorJakub Wieczorek <jakub@jakub.cc>2014-06-25 19:07:37 +0200
committerJakub Wieczorek <jakub@jakub.cc>2014-07-02 18:27:12 +0200
commit9b3f9d94441340f0cdf6ec59aab739baef0f1ac0 (patch)
treee8ba6e275bab9b3d873fc2b654111b5308a8d774 /src/rustllvm/ExecutionEngineWrapper.cpp
parentca2778ede7c21efc3cf2e4e1152875ec09360770 (diff)
downloadrust-9b3f9d94441340f0cdf6ec59aab739baef0f1ac0.tar.gz
rust-9b3f9d94441340f0cdf6ec59aab739baef0f1ac0.zip
Change exhaustiveness analysis to permit multiple constructors per pattern
Slice patterns are different from the rest in that a single slice pattern
does not have a distinct constructor if it contains a variable-length subslice
pattern. For example, the pattern [a, b, ..tail] can match a slice of length 2, 3, 4
and so on.

As a result, the decision tree for exhaustiveness and redundancy analysis should
explore each of those constructors separately to determine if the pattern could be useful
when specialized for any of them.
Diffstat (limited to 'src/rustllvm/ExecutionEngineWrapper.cpp')
0 files changed, 0 insertions, 0 deletions