Skip to content

Instantly share code, notes, and snippets.

@RCasatta
Created May 5, 2017 14:20
Show Gist options
  • Save RCasatta/b04c778b06de02bf1f029cad6f5a7a97 to your computer and use it in GitHub Desktop.
Save RCasatta/b04c778b06de02bf1f029cad6f5a7a97 to your computer and use it in GitHub Desktop.
Compiling bitcoin v0.3.10
error: `$r:expr` may be followed by `copy`, which is not allowed for `expr` fragments
--> /Users/casatta/.cargo/registry/src/github.com-1ecc6299db9ec823/bitcoin-0.3.10/src/blockdata/script.rs:1690:16
|
1690 | $(copy $c:expr);*
| ^^^^
error: `$r:expr` may be followed by `swap`, which is not allowed for `expr` fragments
--> /Users/casatta/.cargo/registry/src/github.com-1ecc6299db9ec823/bitcoin-0.3.10/src/blockdata/script.rs:1691:16
|
1691 | $(swap ($a:expr, $b:expr));*
| ^^^^
error: `$r:expr` may be followed by `perm`, which is not allowed for `expr` fragments
--> /Users/casatta/.cargo/registry/src/github.com-1ecc6299db9ec823/bitcoin-0.3.10/src/blockdata/script.rs:1692:16
|
1692 | $(perm ($first:expr, $($i:expr),*) );*
| ^^^^
error: `$r:expr` may be followed by `drop`, which is not allowed for `expr` fragments
--> /Users/casatta/.cargo/registry/src/github.com-1ecc6299db9ec823/bitcoin-0.3.10/src/blockdata/script.rs:1693:16
|
1693 | $(drop $d:expr);*
| ^^^^
error: `$c:expr` may be followed by `swap`, which is not allowed for `expr` fragments
--> /Users/casatta/.cargo/registry/src/github.com-1ecc6299db9ec823/bitcoin-0.3.10/src/blockdata/script.rs:1691:16
|
1691 | $(swap ($a:expr, $b:expr));*
| ^^^^
error: `$c:expr` may be followed by `perm`, which is not allowed for `expr` fragments
--> /Users/casatta/.cargo/registry/src/github.com-1ecc6299db9ec823/bitcoin-0.3.10/src/blockdata/script.rs:1692:16
|
1692 | $(perm ($first:expr, $($i:expr),*) );*
| ^^^^
error: `$c:expr` may be followed by `drop`, which is not allowed for `expr` fragments
--> /Users/casatta/.cargo/registry/src/github.com-1ecc6299db9ec823/bitcoin-0.3.10/src/blockdata/script.rs:1693:16
|
1693 | $(drop $d:expr);*
| ^^^^
error[E0308]: match arms have incompatible types
--> /Users/casatta/.cargo/registry/src/github.com-1ecc6299db9ec823/bitcoin-0.3.10/src/blockdata/script.rs:2271:25
|
2271 | match op {
| ^ expected (), found bool
|
= note: expected type `()`
found type `bool`
note: match arm with an incompatible type
--> /Users/casatta/.cargo/registry/src/github.com-1ecc6299db9ec823/bitcoin-0.3.10/src/blockdata/script.rs:2339:60
|
2339 | opcodes::Ordinary::OP_2DROP => stack_opcode!(stack(2): require 2 drop 1; drop 2),
| ------------------------------------------------- in this macro invocation
error[E0308]: mismatched types
--> /Users/casatta/.cargo/registry/src/github.com-1ecc6299db9ec823/bitcoin-0.3.10/src/blockdata/script.rs:2361:33
|
2361 | match top_n {
| _________________________________^ starting here...
2362 | | Some(n) => stack_opcode!(stack(n + 1): require n + 1 copy n + 1),
2363 | | // The stack will wind up with the 1 and nth inputs being identical
2364 | | // with n input-dependent. I can imagine scripts which check this
2365 | | // condition or its negation for various n to get arbitrary finite
2366 | | // sets of allowable values. It's not clear to me that this is
2367 | | // feasible to analyze.
2368 | | None => { return Err(Error::Unanalyzable); }
2369 | | }
| |_________________________________^ ...ending here: expected (), found bool
|
= note: expected type `()`
found type `bool`
error[E0308]: mismatched types
--> /Users/casatta/.cargo/registry/src/github.com-1ecc6299db9ec823/bitcoin-0.3.10/src/blockdata/script.rs:2379:33
|
2379 | match top_n {
| _________________________________^ starting here...
2380 | | Some(n) => stack_opcode!(stack(n + 1): require n + 1 copy n + 1 drop n + 1),
2381 | | // The stack will wind up reordered, so in principle I could just force
2382 | | // the input to be zero (other n values can be converted to zero by just
2383 | | // manually rearranging the input). The problem is if numeric bounds are
2384 | | // later set on n. I can't analyze that.
2385 | | None => { return Err(Error::Unanalyzable); }
2386 | | }
| |_________________________________^ ...ending here: expected (), found bool
|
= note: expected type `()`
found type `bool`
error[E0308]: match arms have incompatible types
--> /Users/casatta/.cargo/registry/src/github.com-1ecc6299db9ec823/bitcoin-0.3.10/src/blockdata/script.rs:1916:21
|
1916 | match op {
| ^ expected (), found bool
|
= note: expected type `()`
found type `bool`
note: match arm with an incompatible type
--> /Users/casatta/.cargo/registry/src/github.com-1ecc6299db9ec823/bitcoin-0.3.10/src/blockdata/script.rs:1956:56
|
1956 | opcodes::Ordinary::OP_2DROP => stack_opcode!(stack(2): drop 1; drop 2),
| --------------------------------------- in this macro invocation
error[E0308]: mismatched types
--> /Users/casatta/.cargo/registry/src/github.com-1ecc6299db9ec823/bitcoin-0.3.10/src/blockdata/script.rs:1974:29
|
1974 | stack_opcode!(stack(n + 1): copy n + 1)
| ---------------------------------------
| |
| expected (), found bool
| in this macro invocation
|
= note: expected type `()`
found type `bool`
error[E0308]: mismatched types
--> /Users/casatta/.cargo/registry/src/github.com-1ecc6299db9ec823/bitcoin-0.3.10/src/blockdata/script.rs:1983:29
|
1983 | stack_opcode!(stack(n + 1): copy n + 1 drop n + 1)
| --------------------------------------------------
| |
| expected (), found bool
| in this macro invocation
|
= note: expected type `()`
found type `bool`
error: aborting due to 6 previous errors
error: Could not compile `bitcoin`.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment