Examples: query, "exact match", wildcard*, wild?ard, wild*rd
Fuzzy search: cake~ (finds cakes, bake)
Term boost: "red velvet"^4, chocolate^2
Field grouping: tags:(+work -"fun-stuff")
Escape special characters +-&|!(){}[]^"~*?:\ - e.g. \+ \* \!
Range search: properties.timestamp:[1587729413488 TO *] (inclusive), properties.title:{A TO Z}(excluding A and Z)
Combinations: chocolate AND vanilla, chocolate OR vanilla, (chocolate OR vanilla) NOT "vanilla pudding"
Field search: properties.title:"The Title" AND text
Can't deploy a FunC smart contract: failing with exit code 34.

I've been trying to create a simple wallet smart contract by myself to learn FunC, but my transactions keep failing with exit code 34. What am I doing wrong?

() recv_external (slice in_msg) impure {
    var valid_until = in_msg~load_uint(32);

    throw_if(35, valid_until <= now());

    var dest_addr = in_msg~load_bits(256);

    var msg = begin_cell()
        .store_uint(0x18, 6)
        .store_uint(0, 1 + 4 + 4 + 64 + 32 + 1 + 1)


    send_raw_message(msg, 3);

This question was imported from Telegram Chat: https://t.me/tondev_eng/9054

Posted 6 months ago
Votes Newest


Two issues:

  1. You should read address from slice via load_msg_addr, not load_bits
  2. Store address to builder via Addr, not addr

addr, is an alias for 256uint. Meanwhile full address serialization with Addr also includes address format tag, workchain, 256bit part and some additional fields.

Posted 6 months ago
384 × 5 Administrator
1 Answer
6 months ago
6 months ago