Thread overview | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
|
July 30, 2012 [Issue 8477] New: [2.060 beta] Strange error calling member func from overridden Exception::toString() | ||||
---|---|---|---|---|
| ||||
http://d.puremagic.com/issues/show_bug.cgi?id=8477 Summary: [2.060 beta] Strange error calling member func from overridden Exception::toString() Product: D Version: unspecified Platform: All OS/Version: All Status: NEW Keywords: rejects-valid Severity: regression Priority: P2 Component: DMD AssignedTo: nobody@puremagic.com ReportedBy: cbkbbejeap@mailinator.com --- Comment #0 from Nick Sabalausky <cbkbbejeap@mailinator.com> 2012-07-30 15:35:04 PDT --- class Foo : Exception { this() { super(""); } int line() { return 0; } override string toString() { line(); return ""; } } Worked on 2.059. On 2.060 beta: test.d(12): Error: function test.Foo.line () is not callable using argument types () const Problem goes away if Foo is *not* derived from Exception. -- Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- |
July 30, 2012 [Issue 8477] [2.060 beta] Strange error calling member func from overridden Exception::toString() | ||||
---|---|---|---|---|
| ||||
Posted in reply to Nick Sabalausky | http://d.puremagic.com/issues/show_bug.cgi?id=8477 Dmitry Olshansky <dmitry.olsh@gmail.com> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |dmitry.olsh@gmail.com --- Comment #1 from Dmitry Olshansky <dmitry.olsh@gmail.com> 2012-07-30 15:41:59 PDT --- That means Exception has its toString defined as const thus your override also must be const (and implicitly supposed to be). Then it tries to call line and dies. Marking lines as const fixes issue. So it's either invalid report or request for better diagnostics. -- Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- |
July 30, 2012 [Issue 8477] [2.060 beta] Strange error calling member func from overridden Exception::toString() | ||||
---|---|---|---|---|
| ||||
Posted in reply to Nick Sabalausky | http://d.puremagic.com/issues/show_bug.cgi?id=8477 Andrej Mitrovic <andrej.mitrovich@gmail.com> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |andrej.mitrovich@gmail.com --- Comment #2 from Andrej Mitrovic <andrej.mitrovich@gmail.com> 2012-07-30 15:49:37 PDT --- (In reply to comment #1) > So it's either invalid report or request for better diagnostics. Your second point is implicit as the numerous complaints show. But toString needs to be implemented with some consistency in Phobos.. Object.toString isn't const, but Throwable.toString is. What's it gonna be? -- Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- |
July 31, 2012 [Issue 8477] [2.060 beta] Strange error calling member func from overridden Exception::toString() | ||||
---|---|---|---|---|
| ||||
Posted in reply to Nick Sabalausky | http://d.puremagic.com/issues/show_bug.cgi?id=8477 Jonathan M Davis <jmdavisProg@gmx.com> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |jmdavisProg@gmx.com --- Comment #3 from Jonathan M Davis <jmdavisProg@gmx.com> 2012-07-30 17:22:22 PDT --- > But toString needs to be implemented with some consistency in Phobos.. Object.toString isn't const, but Throwable.toString is. What's it gonna be? We're going to move to a model where Object doesn't even _have_ toString on it. So, in the long run, the constancy of Object's toString is irrelevant, and since whether a particular type should have a const toString or not depends on the type and what it's doing, it's ultimately _not_ a question of consistency. I'd expect Throwable and its ilk to have a const toString in the long run. Whether it should be const right now or not, I don't know, since the issue with Object and its various functions is still being sorted out. -- Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- |
July 31, 2012 [Issue 8477] [2.060 beta] Strange error calling member func from overridden Exception::toString() | ||||
---|---|---|---|---|
| ||||
Posted in reply to Nick Sabalausky | http://d.puremagic.com/issues/show_bug.cgi?id=8477 --- Comment #4 from Kenji Hara <k.hara.pg@gmail.com> 2012-07-30 17:27:36 PDT --- (In reply to comment #2) > (In reply to comment #1) > > So it's either invalid report or request for better diagnostics. > > Your second point is implicit as the numerous complaints show. But toString needs to be implemented with some consistency in Phobos.. Object.toString isn't const, but Throwable.toString is. What's it gonna be? It's my mistake. I had reverted const qualifer of Object member functions, but forgotten about Throwable's. -- Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- |
July 31, 2012 [Issue 8477] [2.060 beta] Strange error calling member func from overridden Exception::toString() | ||||
---|---|---|---|---|
| ||||
Posted in reply to Nick Sabalausky | http://d.puremagic.com/issues/show_bug.cgi?id=8477 Kenji Hara <k.hara.pg@gmail.com> changed: What |Removed |Added ---------------------------------------------------------------------------- Keywords| |pull Component|DMD |druntime Version|unspecified |D2 --- Comment #5 from Kenji Hara <k.hara.pg@gmail.com> 2012-07-30 18:11:27 PDT --- This is druntime issue. https://github.com/D-Programming-Language/druntime/pull/284 -- Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- |
July 31, 2012 [Issue 8477] [2.060 beta] Strange error calling member func from overridden Exception::toString() | ||||
---|---|---|---|---|
| ||||
Posted in reply to Nick Sabalausky | http://d.puremagic.com/issues/show_bug.cgi?id=8477 --- Comment #6 from github-bugzilla@puremagic.com 2012-07-30 18:32:40 PDT --- Commits pushed to master at https://github.com/D-Programming-Language/druntime https://github.com/D-Programming-Language/druntime/commit/6654dcfbaa23c1b64362c739914b8ba9bb098f05 fix Issue 8477 - [2.060 beta] Strange error calling member func from overridden Exception::toString() Revert const qualifier of Throwable.toString https://github.com/D-Programming-Language/druntime/commit/7ff4fb1e37e00caa7187b39bda403377d888400d Merge pull request #284 from 9rnsr/rev_const Issue 8477 - [2.060 beta] Strange error calling member func from overridden Exception::toString() -- Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- |
July 31, 2012 [Issue 8477] [2.060 beta] Strange error calling member func from overridden Exception::toString() | ||||
---|---|---|---|---|
| ||||
Posted in reply to Nick Sabalausky | http://d.puremagic.com/issues/show_bug.cgi?id=8477 Kenji Hara <k.hara.pg@gmail.com> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |RESOLVED Resolution| |FIXED -- Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- |
July 31, 2012 [Issue 8477] [2.060 beta] Strange error calling member func from overridden Exception::toString() | ||||
---|---|---|---|---|
| ||||
Posted in reply to Nick Sabalausky | http://d.puremagic.com/issues/show_bug.cgi?id=8477 Jacob Carlborg <doob@me.com> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |doob@me.com --- Comment #7 from Jacob Carlborg <doob@me.com> 2012-07-31 01:14:25 PDT --- > We're going to move to a model where Object doesn't even _have_ toString on it. Has there been some kind of official agreement on this? I followed the discussion and to me it looked more like it was going to be possible to have both const and non-const versions of the methods in Object. Is this only your opinion, were there a private discussion or have I just missed it? This is a big change and I really think these decisions need to be properly announced. -- Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- |
July 31, 2012 [Issue 8477] [2.060 beta] Strange error calling member func from overridden Exception::toString() | ||||
---|---|---|---|---|
| ||||
Posted in reply to Nick Sabalausky | http://d.puremagic.com/issues/show_bug.cgi?id=8477 --- Comment #8 from Jonathan M Davis <jmdavisProg@gmx.com> 2012-07-31 01:23:51 PDT --- It's official. http://forum.dlang.org/post/jtlj1k$1fdj$1@digitalmars.com -- Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- |
Copyright © 1999-2021 by the D Language Foundation