[Issue 4325] invariant syntax isn't strict

2011-06-15 Thread d-bugmail
http://d.puremagic.com/issues/show_bug.cgi?id=4325


yebblies yebbl...@gmail.com changed:

   What|Removed |Added

 Status|NEW |RESOLVED
 CC||yebbl...@gmail.com
 Resolution||INVALID


--- Comment #2 from yebblies yebbl...@gmail.com 2011-06-15 08:30:26 PDT ---
This has nothing to do with class invariants.  This is caused by invariant
currently being an alias for immutable.  Change invariant to immutable in the
examples and it will make sense.

-- 
Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email
--- You are receiving this mail because: ---


[Issue 4325] invariant syntax isn't strict

2011-06-15 Thread d-bugmail
http://d.puremagic.com/issues/show_bug.cgi?id=4325



--- Comment #3 from bearophile_h...@eml.cc 2011-06-15 09:51:04 PDT ---
(In reply to comment #2)
 This has nothing to do with class invariants.  This is caused by invariant
 currently being an alias for immutable.  Change invariant to immutable in the
 examples and it will make sense.

I see, thank you. Do you want me to open a new enhancement request where I ask
for the removal of this alias, or do you prefer me to reopen and rename this
bug report?

-- 
Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email
--- You are receiving this mail because: ---


[Issue 4325] invariant syntax isn't strict

2011-06-15 Thread d-bugmail
http://d.puremagic.com/issues/show_bug.cgi?id=4325



--- Comment #4 from yebblies yebbl...@gmail.com 2011-06-15 11:36:37 PDT ---
 I see, thank you. Do you want me to open a new enhancement request where I ask
 for the removal of this alias, or do you prefer me to reopen and rename this
 bug report?

A new report.  Changing the focus of old reports makes it more difficult to
process them. (for me at least)

-- 
Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email
--- You are receiving this mail because: ---


[Issue 4325] invariant syntax isn't strict

2010-08-30 Thread d-bugmail
http://d.puremagic.com/issues/show_bug.cgi?id=4325


Andrej Mitrovic andrej.mitrov...@gmail.com changed:

   What|Removed |Added

 CC||andrej.mitrov...@gmail.com


--- Comment #1 from Andrej Mitrovic andrej.mitrov...@gmail.com 2010-08-29 
20:01:39 PDT ---
The compiler will still print an error if you add any statements below a class
invariant, e.g.:

struct Foo {
invariant {}
}
struct Bar {
int x = 5;
invariant
assert(x == 1);
}
class CFoo {
invariant {}
}
class CBar {
invariant
}
void main() 
{
Bar bar;
}

bug4325.d(7): Declaration expected, not 'assert'


So it might not be that bad. The same thing happens if you put const pure
immutable without any opening braces or colons, e.g.:

struct Foo {
pure
}
struct Bar {
const
}
class CFoo {
immutable
}
class CBar {
invariant
}
void main() 
{
}

Compiles fine.

-- 
Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email
--- You are receiving this mail because: ---