{"action":"created","issue":{"url":"https://api.github.com/repos/insieme/insieme/issues/60","labels_url":"https://api.github.com/repos/insieme/insieme/issues/60/labels{/name}","comments_url":"https://api.github.com/repos/insieme/insieme/issues/60/comments","events_url":"https://api.github.com/repos/insieme/insieme/issues/60/events","html_url":"https://github.com/insieme/insieme/issues/60","id":71302394,"number":60,"title":"Frontend naming problem","user":{"login":"stefanmoosbrugger","id":8113223,"avatar_url":"https://avatars.githubusercontent.com/u/8113223?v=3","gravatar_id":"","url":"https://api.github.com/users/stefanmoosbrugger","html_url":"https://github.com/stefanmoosbrugger","followers_url":"https://api.github.com/users/stefanmoosbrugger/followers","following_url":"https://api.github.com/users/stefanmoosbrugger/following{/other_user}","gists_url":"https://api.github.com/users/stefanmoosbrugger/gists{/gist_id}","starred_url":"https://api.github.com/users/stefanmoosbrugger/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/stefanmoosbrugger/subscriptions","organizations_url":"https://api.github.com/users/stefanmoosbrugger/orgs","repos_url":"https://api.github.com/users/stefanmoosbrugger/repos","events_url":"https://api.github.com/users/stefanmoosbrugger/events{/privacy}","received_events_url":"https://api.github.com/users/stefanmoosbrugger/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/insieme/insieme/labels/bug","name":"bug","color":"fc2929"},{"url":"https://api.github.com/repos/insieme/insieme/labels/frontend","name":"frontend","color":"bfdadc"}],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":2,"created_at":"2015-04-27T14:36:54Z","updated_at":"2015-04-27T14:49:54Z","closed_at":null,"body":"There is a bug in the Insieme frontend \r\nrenaming conventions. It is very easy\r\nto produce name collisions.\r\n\r\nSimple example input code:\r\n```\r\nnamespace MPI {\r\n class Status {\r\n    ...\r\n };\r\n}\r\n\r\nstruct MPI_Status {\r\n...\r\n};\r\n\r\nint main() {\r\n MPI_Status element;\r\n MPI::Status another_element;\r\n}\r\n```\r\n\r\nThis will lead to a name collision because the MPI::Status \r\nclass will be renamed to MPI_Status. Unfortunately there is already\r\na struct called MPI_Status. We have to think about the renaming \r\nconvetions. For the list of renaming conventions see https://github.com/insieme/insieme/blob/master/code/frontend/src/utils/name_manager.cpp#L65-L81.\r\n"},"comment":{"url":"https://api.github.com/repos/insieme/insieme/issues/comments/96682778","html_url":"https://github.com/insieme/insieme/issues/60#issuecomment-96682778","issue_url":"https://api.github.com/repos/insieme/insieme/issues/60","id":96682778,"user":{"login":"stefanmoosbrugger","id":8113223,"avatar_url":"https://avatars.githubusercontent.com/u/8113223?v=3","gravatar_id":"","url":"https://api.github.com/users/stefanmoosbrugger","html_url":"https://github.com/stefanmoosbrugger","followers_url":"https://api.github.com/users/stefanmoosbrugger/followers","following_url":"https://api.github.com/users/stefanmoosbrugger/following{/other_user}","gists_url":"https://api.github.com/users/stefanmoosbrugger/gists{/gist_id}","starred_url":"https://api.github.com/users/stefanmoosbrugger/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/stefanmoosbrugger/subscriptions","organizations_url":"https://api.github.com/users/stefanmoosbrugger/orgs","repos_url":"https://api.github.com/users/stefanmoosbrugger/repos","events_url":"https://api.github.com/users/stefanmoosbrugger/events{/privacy}","received_events_url":"https://api.github.com/users/stefanmoosbrugger/received_events","type":"User","site_admin":false},"created_at":"2015-04-27T14:49:54Z","updated_at":"2015-04-27T14:49:54Z","body":"yep.. i solved it currently with the ```__ns_``` approach. But there \r\nare plenty of other possibilities to generate name collisions.\r\nSo I guess we should find a better solution for naming problems.."}}