{"action":"opened","issue":{"url":"https://api.github.com/repos/JuliaLang/julia/issues/11611","labels_url":"https://api.github.com/repos/JuliaLang/julia/issues/11611/labels{/name}","comments_url":"https://api.github.com/repos/JuliaLang/julia/issues/11611/comments","events_url":"https://api.github.com/repos/JuliaLang/julia/issues/11611/events","html_url":"https://github.com/JuliaLang/julia/issues/11611","id":85976342,"number":11611,"title":"Unexpected behavior when quoting a destructuring assignment","user":{"login":"yurivish","id":114388,"avatar_url":"https://avatars.githubusercontent.com/u/114388?v=3","gravatar_id":"","url":"https://api.github.com/users/yurivish","html_url":"https://github.com/yurivish","followers_url":"https://api.github.com/users/yurivish/followers","following_url":"https://api.github.com/users/yurivish/following{/other_user}","gists_url":"https://api.github.com/users/yurivish/gists{/gist_id}","starred_url":"https://api.github.com/users/yurivish/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/yurivish/subscriptions","organizations_url":"https://api.github.com/users/yurivish/orgs","repos_url":"https://api.github.com/users/yurivish/repos","events_url":"https://api.github.com/users/yurivish/events{/privacy}","received_events_url":"https://api.github.com/users/yurivish/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":0,"created_at":"2015-06-08T01:16:07Z","updated_at":"2015-06-08T01:16:07Z","closed_at":null,"body":"```julia\r\njulia> :(begin x, y = 1, 2 end)\r\nquote  # none, line 1:\r\n    (x,y) = (1,2)\r\nend\r\n\r\njulia> @eval :(x, y = 1, 2)\r\n:((x,y = 1,2))\r\n\r\njulia> versioninfo()\r\nJulia Version 0.4.0-dev+5218\r\nCommit 2817084* (2015-06-05 17:11 UTC)\r\nPlatform Info:\r\n  System: Darwin (x86_64-apple-darwin13.4.0)\r\n  CPU: Intel(R) Core(TM) i7-3615QM CPU @ 2.30GHz\r\n  WORD_SIZE: 64\r\n  BLAS: libopenblas (USE64BITINT DYNAMIC_ARCH NO_AFFINITY Sandybridge)\r\n  LAPACK: libopenblas\r\n  LIBM: libopenlibm\r\n  LLVM: libLLVM-3.3\r\n```\r\n\r\nThe second variation generates a syntax error when evaluated, though typing it in at the REPL is fine:\r\n\r\n```julia\r\njulia> x, y = 1, 2\r\n(1,2)\r\n\r\njulia> eval(:((x,y = 1,2)))\r\nERROR: syntax: assignment not allowed inside tuple\r\n```\r\n\r\nIt's tempting to assume that the quoted version of some code would parse the same when written inside of a function, at the REPL, or inside of a quite block, but it looks like there's a difference in this case. Is there a reason for this to be so?"}}