digitalmars.D.bugs - [Issue 1279] New: const/invariant functions don't accept const/invariant return types
- d-bugmail puremagic.com (35/35) Jun 19 2007 http://d.puremagic.com/issues/show_bug.cgi?id=1279
- d-bugmail puremagic.com (9/9) Jun 19 2007 http://d.puremagic.com/issues/show_bug.cgi?id=1279
- d-bugmail puremagic.com (14/14) Jun 22 2007 http://d.puremagic.com/issues/show_bug.cgi?id=1279
- d-bugmail puremagic.com (9/9) Jun 27 2007 http://d.puremagic.com/issues/show_bug.cgi?id=1279
http://d.puremagic.com/issues/show_bug.cgi?id=1279
Summary: const/invariant functions don't accept const/invariant
return types
Product: D
Version: 2.000
Platform: PC
OS/Version: Linux
Status: NEW
Keywords: rejects-valid
Severity: normal
Priority: P2
Component: DMD
AssignedTo: bugzilla digitalmars.com
ReportedBy: kamm incasoftware.de
This fails to compile
class Foo
{
int x;
invariant invariant(int)* geti() // line 6
{ return &x; }
const const(int)* getc() // line 12
{ return &x;
} // line 15
}
with the errors
invartest.d(6): Declaration expected, not '('
invartest.d(12): Declaration expected, not '('
invartest.d(15): unrecognized declaration.
Putting the return types into aliases fixes the problem:
alias invariant(int)* RT_I;
invariant RT_I geti() {...}
alias const(int)* RT_C;
const RT_C getc() {...}
compiles.
--
Jun 19 2007
http://d.puremagic.com/issues/show_bug.cgi?id=1279
jarrett.billingsley gmail.com changed:
What |Removed |Added
----------------------------------------------------------------------------
CC| |jarrett.billingsley gmail.co
| |m
*** Bug 1281 has been marked as a duplicate of this bug. ***
--
Jun 19 2007
http://d.puremagic.com/issues/show_bug.cgi?id=1279
brunodomedeiros+bugz gmail.com changed:
What |Removed |Added
----------------------------------------------------------------------------
CC| |brunodomedeiros+bugz gmail.c
| |om
Nor even variables declared at module scope:
---- ----
module mod;
invariant(char)[] p;
----
mod.d(2): Declaration expected, not '('
--
Jun 22 2007
http://d.puremagic.com/issues/show_bug.cgi?id=1279
kamm incasoftware.de changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|NEW |RESOLVED
Resolution| |FIXED
Fixed in DMD 2.001
--
Jun 27 2007









d-bugmail puremagic.com 