digitalmars.D.bugs - [Issue 5145] New: override error with forward ref of superclass
- d-bugmail puremagic.com (55/55) Oct 31 2010 http://d.puremagic.com/issues/show_bug.cgi?id=5145
- d-bugmail puremagic.com (8/8) Oct 31 2010 http://d.puremagic.com/issues/show_bug.cgi?id=5145
- d-bugmail puremagic.com (36/36) Nov 01 2010 http://d.puremagic.com/issues/show_bug.cgi?id=5145
- d-bugmail puremagic.com (7/7) Nov 01 2010 http://d.puremagic.com/issues/show_bug.cgi?id=5145
- d-bugmail puremagic.com (10/10) Nov 22 2010 http://d.puremagic.com/issues/show_bug.cgi?id=5145
- d-bugmail puremagic.com (11/13) Dec 05 2010 http://d.puremagic.com/issues/show_bug.cgi?id=5145
- d-bugmail puremagic.com (11/11) Dec 05 2010 http://d.puremagic.com/issues/show_bug.cgi?id=5145
http://d.puremagic.com/issues/show_bug.cgi?id=5145 Summary: override error with forward ref of superclass Product: D Version: D1 Platform: x86 OS/Version: Mac OS X Status: NEW Severity: normal Priority: P2 Component: DMD AssignedTo: nobody puremagic.com ReportedBy: fawzi gmx.ch The following code fails with {{{ t.d(24): Error: variable t.B.sync.this override cannot be applied to variable t.d(25): Error: function t.B.sync.__require override only applies to class member functions }}} then class B is declared after class A {{{ module t; interface I1{ void bla(); } interface I2 { I1 sync (); } class A : B { final override I1 sync() in { assert( valid ); } body { return null; } } class B : I2 { override I1 sync() in { assert( valid ); } body { return null; } final bool valid() { return true; } } }}} -- Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email ------- You are receiving this mail because: -------
Oct 31 2010
http://d.puremagic.com/issues/show_bug.cgi?id=5145 Fawzi Mohamed <fawzi gmx.ch> changed: What |Removed |Added ---------------------------------------------------------------------------- Severity|normal |regression -- Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email ------- You are receiving this mail because: -------
Oct 31 2010
http://d.puremagic.com/issues/show_bug.cgi?id=5145 Don <clugdbug yahoo.com.au> changed: What |Removed |Added ---------------------------------------------------------------------------- Keywords| |patch, rejects-valid CC| |clugdbug yahoo.com.au Version|D1 |D1 & D2 Summary|override error with forward |Regression(2.050, 1.065) |ref of superclass |override error with forward | |ref of superclass OS/Version|Mac OS X |All Applies to both D1 and D2. This was caused by svn683, which fixed bug 3602 "ICE(tocsym.c) compiling a class, if its super class has preconditions" And the problem is that it's using the scope from the parent function, which isn't quite right: some of the attributes should be dropped. I don't know if anything other than STCoverride can cause problems. func.c, FuncDeclaration::mergeFrequire, line 1688. FuncDeclaration *fdv = (FuncDeclaration *)foverrides.data[i]; /* The semantic pass on the contracts of the overridden functions must * be completed before code generation occurs (bug 3602). */ if (fdv->fdrequire && fdv->fdrequire->semanticRun != PASSsemantic3done) { assert(fdv->scope); + StorageClass oldstc = fdv->scope->stc; + fdv->scope->stc &= ~ STCoverride; fdv->semantic3(fdv->scope); + fdv->scope->stc = fdv->scope->stc; } sf = fdv->mergeFrequire(sf); if (fdv->fdrequire) -- Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email ------- You are receiving this mail because: -------
Nov 01 2010
http://d.puremagic.com/issues/show_bug.cgi?id=5145 This seems very similar to bug 5110, which is more general. Need to check if the patch for 5110 fixes this bug as well. -- Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email ------- You are receiving this mail because: -------
Nov 01 2010
http://d.puremagic.com/issues/show_bug.cgi?id=5145 Don <clugdbug yahoo.com.au> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |baryluk smp.if.uj.edu.pl *** Issue 5253 has been marked as a duplicate of this issue. *** -- Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email ------- You are receiving this mail because: -------
Nov 22 2010
http://d.puremagic.com/issues/show_bug.cgi?id=5145 Walter Bright <bugzilla digitalmars.com> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |bugzilla digitalmars.com 12:58:27 PST ---This seems very similar to bug 5110, which is more general. Need to check if the patch for 5110 fixes this bug as well.Nope, different problem. -- Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email ------- You are receiving this mail because: -------
Dec 05 2010
http://d.puremagic.com/issues/show_bug.cgi?id=5145 Walter Bright <bugzilla digitalmars.com> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |RESOLVED Resolution| |FIXED 16:31:14 PST --- http://www.dsource.org/projects/dmd/changeset/782 -- Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email ------- You are receiving this mail because: -------
Dec 05 2010