{"action":"closed","issue":{"url":"https://api.github.com/repos/nim-lang/Nim/issues/3191","labels_url":"https://api.github.com/repos/nim-lang/Nim/issues/3191/labels{/name}","comments_url":"https://api.github.com/repos/nim-lang/Nim/issues/3191/comments","events_url":"https://api.github.com/repos/nim-lang/Nim/issues/3191/events","html_url":"https://github.com/nim-lang/Nim/issues/3191","id":99545977,"number":3191,"title":"Converter not called to convert member in compound type","user":{"login":"Varriount","id":524596,"avatar_url":"https://avatars.githubusercontent.com/u/524596?v=3","gravatar_id":"","url":"https://api.github.com/users/Varriount","html_url":"https://github.com/Varriount","followers_url":"https://api.github.com/users/Varriount/followers","following_url":"https://api.github.com/users/Varriount/following{/other_user}","gists_url":"https://api.github.com/users/Varriount/gists{/gist_id}","starred_url":"https://api.github.com/users/Varriount/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Varriount/subscriptions","organizations_url":"https://api.github.com/users/Varriount/orgs","repos_url":"https://api.github.com/users/Varriount/repos","events_url":"https://api.github.com/users/Varriount/events{/privacy}","received_events_url":"https://api.github.com/users/Varriount/received_events","type":"User","site_admin":false},"labels":[],"state":"closed","locked":false,"assignee":null,"milestone":null,"comments":1,"created_at":"2015-08-06T23:39:21Z","updated_at":"2015-08-07T09:40:06Z","closed_at":"2015-08-07T09:40:06Z","body":"For the below code, I expected `itemToSet` to be called in the 'recipes' assignment to convert `Item` members to set[Item] members. Instead, a mismatched types compiler error is given:\r\n\r\n```nim\r\ntype\r\n  Item = enum\r\n    # Basic Ingredients\r\n    greenBulb, redBulb,   specialBulb\r\n    jellyOil,  fishOil,   eelOil\r\n    fishMeat,  spicyMeat, crabMeat\r\n\r\n    # Compound recipes\r\n    hotSoup, veggieSoup\r\n\r\nconverter itemToSet(item: Item): set[Item] =\r\n  return {item} \r\n\r\nlet\r\n  oils      = {jellyOil, fishOil,   eelOil}\r\n  meats     = {fishMeat, crabMeat,  spicyMeat}\r\n  bulbs     = {redBulb,  greenBulb,  specialBulb}\r\n\r\n  recipes: (array[2, tuple[key: Item, value:tuple[a, b: set[Item]]]]) = {\r\n    hotSoup:          (oils,            meats ),\r\n    veggieSoup:       (hotSoup,         bulbs ),\r\n  }\r\n```\r\n\r\nThe error:\r\n```\r\nError: type mismatch: got ((Item, (Item, set[Item]))) but expected '(Item, (set[Item], set[Item]))'\r\n```"}}