// RUN: --target solana --emit cfg contract C { // BEGIN-CHECK: C::C::function::combineToFunctionPointer__address_bytes8 function combineToFunctionPointer(address newAddress, bytes8 newSelector) public pure returns (bytes8, address) { function() external fun; assembly { // CHECK: store (struct %fun field 0), (arg #1) fun.selector := newSelector // CHECK: store (struct %fun field 1), (arg #0) fun.address := newAddress } return (fun.selector, fun.address); } }