{"action":"opened","issue":{"url":"https://api.github.com/repos/swig/swig/issues/533","labels_url":"https://api.github.com/repos/swig/swig/issues/533/labels{/name}","comments_url":"https://api.github.com/repos/swig/swig/issues/533/comments","events_url":"https://api.github.com/repos/swig/swig/issues/533/events","html_url":"https://github.com/swig/swig/issues/533","id":108547001,"number":533,"title":"csharp: CLS compliance: swigExceptionHelper, swigStringHelper","user":{"login":"xypron","id":2747104,"avatar_url":"https://avatars.githubusercontent.com/u/2747104?v=3","gravatar_id":"","url":"https://api.github.com/users/xypron","html_url":"https://github.com/xypron","followers_url":"https://api.github.com/users/xypron/followers","following_url":"https://api.github.com/users/xypron/following{/other_user}","gists_url":"https://api.github.com/users/xypron/gists{/gist_id}","starred_url":"https://api.github.com/users/xypron/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/xypron/subscriptions","organizations_url":"https://api.github.com/users/xypron/orgs","repos_url":"https://api.github.com/users/xypron/repos","events_url":"https://api.github.com/users/xypron/events{/privacy}","received_events_url":"https://api.github.com/users/xypron/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":0,"created_at":"2015-09-27T16:42:07Z","updated_at":"2015-09-27T16:42:07Z","closed_at":null,"body":"SWIG C# can be used to wrap native libraries as common language interface compatible assemblies.\r\nIf I want to use the assemblies with other languages like Visual Basic these assemblies should comply to the Common Language Specification (CLS).\r\n\r\nI use the following in my interface file to create a CLS compliant Pinvoke class:\r\n\r\n```\r\n%pragma(csharp) imclassclassmodifiers=\"\r\n[global::System.CLSCompliant(true)]\r\npublic class \"\r\n```\r\n\r\nUnfortunately the class is not CLS compliante. When compiling I receive the following warning:\r\n\r\n```\r\nsrc/csharp/GLPKPINVOKE.cs(125,40): warning CS3005: Identifier `org.gnu.glpk.GLPKPINVOKE.swigExceptionHelper' differing only in case is not CLS-compliant\r\nsrc/csharp/GLPKPINVOKE.cs(15,19): (Location of the symbol related to previous warning)\r\nsrc/csharp/GLPKPINVOKE.cs(184,37): warning CS3005: Identifier `org.gnu.glpk.GLPKPINVOKE.swigStringHelper' differing only in case is not CLS-compliant\r\nsrc/csharp/GLPKPINVOKE.cs(167,19): (Location of the symbol related to previous warning)\r\n```\r\n\r\nThe relevant generated code is:\r\n\r\n```\r\nprotected static SWIGExceptionHelper swigExceptionHelper = new SWIGExceptionHelper();\r\nstatic protected SWIGStringHelper swigStringHelper = new SWIGStringHelper();\r\n```\r\n\r\nPlease, use identifiers that differ by letter and not only by case."}}