{"action":"created","issue":{"url":"https://api.github.com/repos/cppformat/cppformat/issues/207","labels_url":"https://api.github.com/repos/cppformat/cppformat/issues/207/labels{/name}","comments_url":"https://api.github.com/repos/cppformat/cppformat/issues/207/comments","events_url":"https://api.github.com/repos/cppformat/cppformat/issues/207/events","html_url":"https://github.com/cppformat/cppformat/pull/207","id":111071548,"number":207,"title":"Update Sphinx with C++11 literals fix and add fmt::literals API docs","user":{"login":"dean0x7d","id":4831417,"avatar_url":"https://avatars.githubusercontent.com/u/4831417?v=3","gravatar_id":"","url":"https://api.github.com/users/dean0x7d","html_url":"https://github.com/dean0x7d","followers_url":"https://api.github.com/users/dean0x7d/followers","following_url":"https://api.github.com/users/dean0x7d/following{/other_user}","gists_url":"https://api.github.com/users/dean0x7d/gists{/gist_id}","starred_url":"https://api.github.com/users/dean0x7d/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/dean0x7d/subscriptions","organizations_url":"https://api.github.com/users/dean0x7d/orgs","repos_url":"https://api.github.com/users/dean0x7d/repos","events_url":"https://api.github.com/users/dean0x7d/events{/privacy}","received_events_url":"https://api.github.com/users/dean0x7d/received_events","type":"User","site_admin":false},"labels":[],"state":"closed","locked":false,"assignee":null,"milestone":null,"comments":12,"created_at":"2015-10-12T23:03:08Z","updated_at":"2015-10-17T22:39:52Z","closed_at":"2015-10-13T14:26:26Z","pull_request":{"url":"https://api.github.com/repos/cppformat/cppformat/pulls/207","html_url":"https://github.com/cppformat/cppformat/pull/207","diff_url":"https://github.com/cppformat/cppformat/pull/207.diff","patch_url":"https://github.com/cppformat/cppformat/pull/207.patch"},"body":"Sphinx 1.3.1 can't parse user-defined literals. This updates the doc build script to the (currently) [latest state on the Sphinx master branch](https://github.com/sphinx-doc/sphinx/commit/4d2c17e043d9e8197fa5cd0db34212af3bb17069) which has the fix.\r\n\r\nAs for the `fmt::literals` API docs, the examples do most of the explaining. They mirror the `fmt::format` and `fmt::args` examples right above them. The description text just points to the equivalent function. I really couldn't think of anything to write in the description that would be clearer than the example."},"comment":{"url":"https://api.github.com/repos/cppformat/cppformat/issues/comments/148958069","html_url":"https://github.com/cppformat/cppformat/pull/207#issuecomment-148958069","issue_url":"https://api.github.com/repos/cppformat/cppformat/issues/207","id":148958069,"user":{"login":"dean0x7d","id":4831417,"avatar_url":"https://avatars.githubusercontent.com/u/4831417?v=3","gravatar_id":"","url":"https://api.github.com/users/dean0x7d","html_url":"https://github.com/dean0x7d","followers_url":"https://api.github.com/users/dean0x7d/followers","following_url":"https://api.github.com/users/dean0x7d/following{/other_user}","gists_url":"https://api.github.com/users/dean0x7d/gists{/gist_id}","starred_url":"https://api.github.com/users/dean0x7d/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/dean0x7d/subscriptions","organizations_url":"https://api.github.com/users/dean0x7d/orgs","repos_url":"https://api.github.com/users/dean0x7d/repos","events_url":"https://api.github.com/users/dean0x7d/events{/privacy}","received_events_url":"https://api.github.com/users/dean0x7d/received_events","type":"User","site_admin":false},"created_at":"2015-10-17T22:39:52Z","updated_at":"2015-10-17T22:39:52Z","body":"##### Missing anchors for `_format` and `_a`\r\n\r\nAs far as I can tell, it's an issue in Breathe related to the \"Duplicate ID\" warnings for overloaded functions. If I comment out the `wchar_t` overload of `_format` in `format.h` and request `.. doxygenfunction:: operator\"\"_format` without parameters, the anchor shows up.\r\n\r\nThis issue affects UDLs because they only have the `id_v2` in Sphinx, unlike older functions which also have `id_v1`. I'm not sure why this is, but I've tested it by adding a mock `id_v1` to UDLs in the Sphinx source and it restores the anchor. However, I'm pretty sure the error is on Breathe's side since the number of ids shouldn't really matter.\r\n\r\nI couldn't figure out exactly what's causing the issue in Breathe, but I'm fairly sure it's related to the function overload resolution. As I said, removing the `wchar_t` `_format` overload resolves the issue. I guess you're familiar with Breathe so maybe it's something obvious I'm missing. If not, let me know and I'll submit a proper issue report with example code to Breathe.\r\n\r\n##### Broken `fmt::format()` link\r\n\r\nIt's pointing to the wrong functions because Sphinx can't handle overloads. Maybe the simplest solution is to remove the link entirely since `fmt::format` is actually right above it already. Same goes for `_a` and `fmt::arg`.\r\n\r\n"}}