digitalmars.D.bugs - [Issue 4296] New: Reduce parasitic error messages
- d-bugmail puremagic.com (54/54) Jun 08 2010 http://d.puremagic.com/issues/show_bug.cgi?id=4296
- d-bugmail puremagic.com (12/12) Jun 09 2010 http://d.puremagic.com/issues/show_bug.cgi?id=4296
http://d.puremagic.com/issues/show_bug.cgi?id=4296 Summary: Reduce parasitic error messages Product: D Version: 2.041 Platform: Other OS/Version: Windows Status: NEW Keywords: diagnostic Severity: enhancement Priority: P2 Component: DMD AssignedTo: nobody puremagic.com ReportedBy: clugdbug yahoo.com.au The test case below generates many spurious error messages. In the beta of 2.047, they have references to type _error. Now that there is a distinct error type, it is straightforward to eliminate them all. Most occur in expression.c. For example, all the checkXXX() functions should start with: if (type == Type::terror) return new ErrorExp(); Likewise cases such as: void BinExp::incompatibleTypes() { + if (e1->type == Type::terror || e2->type == Type::terror) + return; -------------- TEST CASES -------------- void error_message_tests() { int x = y * 1; x = 4 + y; int *p = *y; x = y++; x = 7 - y; x = y[3]; x = ++y; x = y ? 2 : 3; x = null[y]; x = p[y..y]; y += y; x = y/1; // and where the heck did those two divs by 0 come from???? x = y ~ y; x ~= y; x = !y; x = 3 in y; x = y is 2; x = y ^^ 2; x ^^= y; } -- Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email ------- You are receiving this mail because: -------
Jun 08 2010
http://d.puremagic.com/issues/show_bug.cgi?id=4296 Walter Bright <bugzilla digitalmars.com> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |RESOLVED CC| |bugzilla digitalmars.com Resolution| |FIXED 13:00:26 PDT --- http://www.dsource.org/projects/dmd/changeset/528 -- Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email ------- You are receiving this mail because: -------
Jun 09 2010