{"action":"created","issue":{"url":"https://api.github.com/repos/rust-lang/rust/issues/29126","labels_url":"https://api.github.com/repos/rust-lang/rust/issues/29126/labels{/name}","comments_url":"https://api.github.com/repos/rust-lang/rust/issues/29126/comments","events_url":"https://api.github.com/repos/rust-lang/rust/issues/29126/events","html_url":"https://github.com/rust-lang/rust/issues/29126","id":111983937,"number":29126,"title":"Split the /opt:ref,icf arguments to i686-pc-windows-msvc linker","user":{"login":"alexchandel","id":637714,"avatar_url":"https://avatars.githubusercontent.com/u/637714?v=3","gravatar_id":"","url":"https://api.github.com/users/alexchandel","html_url":"https://github.com/alexchandel","followers_url":"https://api.github.com/users/alexchandel/followers","following_url":"https://api.github.com/users/alexchandel/following{/other_user}","gists_url":"https://api.github.com/users/alexchandel/gists{/gist_id}","starred_url":"https://api.github.com/users/alexchandel/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/alexchandel/subscriptions","organizations_url":"https://api.github.com/users/alexchandel/orgs","repos_url":"https://api.github.com/users/alexchandel/repos","events_url":"https://api.github.com/users/alexchandel/events{/privacy}","received_events_url":"https://api.github.com/users/alexchandel/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/rust-lang/rust/labels/A-linkage","name":"A-linkage","color":"d7e102"},{"url":"https://api.github.com/repos/rust-lang/rust/labels/A-windows-msvc","name":"A-windows-msvc","color":"d7e102"}],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":10,"created_at":"2015-10-17T20:47:43Z","updated_at":"2015-12-01T18:12:11Z","closed_at":null,"body":"Currently rustc passes `/opt:ref,icf` to the linker for the i686-pc-windows-msvc target, even when `-C opt-level=0` is explicitly passed. LLD's `link.exe` flavor doesn't support comma-separated arguments, and would require `/opt:ref /opt:icf`. rustc should pass these separately.\r\n\r\nMoreover, rustc needs provide a way to stop them from being passed at all, as I explicitly specified zero optimiations, and didn't pass `-C lto`.\r\n"},"comment":{"url":"https://api.github.com/repos/rust-lang/rust/issues/comments/161051438","html_url":"https://github.com/rust-lang/rust/issues/29126#issuecomment-161051438","issue_url":"https://api.github.com/repos/rust-lang/rust/issues/29126","id":161051438,"user":{"login":"alexchandel","id":637714,"avatar_url":"https://avatars.githubusercontent.com/u/637714?v=3","gravatar_id":"","url":"https://api.github.com/users/alexchandel","html_url":"https://github.com/alexchandel","followers_url":"https://api.github.com/users/alexchandel/followers","following_url":"https://api.github.com/users/alexchandel/following{/other_user}","gists_url":"https://api.github.com/users/alexchandel/gists{/gist_id}","starred_url":"https://api.github.com/users/alexchandel/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/alexchandel/subscriptions","organizations_url":"https://api.github.com/users/alexchandel/orgs","repos_url":"https://api.github.com/users/alexchandel/repos","events_url":"https://api.github.com/users/alexchandel/events{/privacy}","received_events_url":"https://api.github.com/users/alexchandel/received_events","type":"User","site_admin":false},"created_at":"2015-12-01T18:12:11Z","updated_at":"2015-12-01T18:12:11Z","body":"@9prady9 rustc still doesn't split the arguments, but LLD's head can handle them now. However, we are still relying on an undocumented feature.\r\n\r\nThe other tangential issue discussed still exists, in that Rust's standard library isn't compatible with VC6's msvcrt, but requires VS 2013's. That could be resolved by rolling our own libm, which also solves many other issues, as proposed in rust-lang/rfcs#711."}}