### Version 3.2.26 ### Reproduction link [sfc.vuejs.org/](https://sfc.vuejs.org/#eyJBcHAudnVlIjoiPHNjcmlwdCBzZXR1cCBsYW5nPVwidHNcIj5cbmltcG9ydCB7IHJlZiB9IGZyb20gJ3Z1ZSdcbmNvbnN0IHByb3BzID0gd2l0aERlZmF1bHRzKGRlZmluZVByb3BzPHtcbiAgZm4/OiAobmFtZTogc3RyaW5nKSA9PiB2b2lkXG59PigpLCB7XG4gIGZuKG5hbWU6IHN0cmluZykge1xuICAgIHJldHVybiBuYW1lLnRvVXBwZXJDYXNlKClcbiAgfVxufSlcbmNvbnNvbGUubG9nKHByb3BzLmZuKVxuLyoqXG50aGUgcHJvcHMuZm4gaXNcbmRlZmF1bHQoKSB7XG4gICAgcmV0dXJuIG5hbWUudG9VcHBlckNhc2UoKVxuICB9XG4qL1xuPC9zY3JpcHQ+XG5jb25zdCBtc2cgPSByZWYoJycpXG48dGVtcGxhdGU+XG4gIDxoMT57eyBmbihtc2cpIH19PC9oMT5cbiAgPGlucHV0IHYtbW9kZWw9XCJtc2dcIj5cbjwvdGVtcGxhdGU+IiwiaW1wb3J0LW1hcC5qc29uIjoie1xuICBcImltcG9ydHNcIjoge1xuICAgIFwidnVlXCI6IFwiaHR0cHM6Ly9zZmMudnVlanMub3JnL3Z1ZS5ydW50aW1lLmVzbS1icm93c2VyLmpzXCJcbiAgfVxufSJ9) ### Steps to reproduce ```typescript const props = withDefaults(defineProps<{ fn?: (name: string) => void }>(), { fn(name: string) { return name.toUpperCase() } }) console.log(props.fn) ``` ### What is expected? Returns the correct default value ### What is actually happening? Function defaults lose arguments <!-- generated by vue-issues. DO NOT REMOVE -->