diff options
author | Hans Bolinder <[email protected]> | 2018-02-07 15:16:15 +0100 |
---|---|---|
committer | Hans Bolinder <[email protected]> | 2018-02-14 08:25:06 +0100 |
commit | 120760b543159d36d88f1feb204ff84c74306515 (patch) | |
tree | fc981f75d7cc755b89b6b35fcbfbc37c9132083f /lib/dialyzer/test | |
parent | 17a20d8f16f638697c64b4154968215835868d31 (diff) | |
download | otp-120760b543159d36d88f1feb204ff84c74306515.tar.gz otp-120760b543159d36d88f1feb204ff84c74306515.tar.bz2 otp-120760b543159d36d88f1feb204ff84c74306515.zip |
dialyzer: Fix a crash
Diffstat (limited to 'lib/dialyzer/test')
-rw-r--r-- | lib/dialyzer/test/small_SUITE_data/results/record_match | 3 | ||||
-rw-r--r-- | lib/dialyzer/test/small_SUITE_data/src/record_match.erl | 17 |
2 files changed, 20 insertions, 0 deletions
diff --git a/lib/dialyzer/test/small_SUITE_data/results/record_match b/lib/dialyzer/test/small_SUITE_data/results/record_match new file mode 100644 index 0000000000..a0dd6f560a --- /dev/null +++ b/lib/dialyzer/test/small_SUITE_data/results/record_match @@ -0,0 +1,3 @@ + +record_match.erl:16: Function select/0 has no local return +record_match.erl:17: Matching of pattern {'b_literal', 'undefined'} tagged with a record name violates the declared type of #b_local{} | #b_remote{} diff --git a/lib/dialyzer/test/small_SUITE_data/src/record_match.erl b/lib/dialyzer/test/small_SUITE_data/src/record_match.erl new file mode 100644 index 0000000000..8e9b91937f --- /dev/null +++ b/lib/dialyzer/test/small_SUITE_data/src/record_match.erl @@ -0,0 +1,17 @@ +-module(record_match). + +-export([select/0]). + +-record(b_literal, {val}). +-record(b_remote, {mod,name,arity}). +-record(b_local, {name,arity}). + +-type b_remote() :: #b_remote{}. +-type b_local() :: #b_local{}. + +-type argument() :: b_remote() | b_local(). + +-record(b_set, {args=[] :: [argument()]}). + +select() -> + #b_set{args=[#b_remote{},#b_literal{}]}. |