digitalmars.D.bugs - [Issue 4893] New: Function pointer assignments ignore constness
- d-bugmail puremagic.com (43/43) Sep 18 2010 http://d.puremagic.com/issues/show_bug.cgi?id=4893
- d-bugmail puremagic.com (8/8) Sep 18 2010 http://d.puremagic.com/issues/show_bug.cgi?id=4893
- d-bugmail puremagic.com (11/11) Oct 19 2010 http://d.puremagic.com/issues/show_bug.cgi?id=4893
http://d.puremagic.com/issues/show_bug.cgi?id=4893 Summary: Function pointer assignments ignore constness Product: D Version: unspecified Platform: Other OS/Version: Linux Status: NEW Severity: normal Priority: P2 Component: DMD AssignedTo: nobody puremagic.com ReportedBy: jmdavisProg gmx.com PDT --- Take this program: struct S { public: this(int[] function(const int[])func) { _func = func; } property int[] function(const int[]) func() { return func; } private: int[] function(const int[]) _func; } int[] add1(int[] num) { return num ~ 1; } void main() { auto s = S(&add1); } It shouldn't compile, but it does. add1() does not take a const int[] and therefore could theoretically modify its arguments (though it doesn't here), violating the type of the function pointer. Using in and immutable instead of const has the same problem. They compile when they shouldn't. -- Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email ------- You are receiving this mail because: -------
Sep 18 2010
http://d.puremagic.com/issues/show_bug.cgi?id=4893 PDT --- Oh, there's an error in my example - func return func instead of _func, resulting infinite recursion and therefore a segfault. I could have removed that function for the bug report anyway. -- Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email ------- You are receiving this mail because: -------
Sep 18 2010
http://d.puremagic.com/issues/show_bug.cgi?id=4893 Sobirari Muhomori <dfj1esp02 sneakemail.com> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |RESOLVED Resolution| |DUPLICATE 11:03:16 PDT --- *** This issue has been marked as a duplicate of issue 3797 *** -- Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email ------- You are receiving this mail because: -------
Oct 19 2010