annotate tests/mini/staticvars.d @ 1419:a6dfd3cb5b99 0.9.1

Error instead of assert on delegate literals as constant expressions. Make function literal linkage internal inside functions and external otherwise.
author Christian Kamm <kamm incasoftware de>
date Wed, 27 May 2009 19:20:18 +0200
parents 1bb99290e03a
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
26
99737f94abfb [svn r30] * Fixed static function-local variables.
lindquist
parents:
diff changeset
1 module staticvars;
99737f94abfb [svn r30] * Fixed static function-local variables.
lindquist
parents:
diff changeset
2
99737f94abfb [svn r30] * Fixed static function-local variables.
lindquist
parents:
diff changeset
3 int func()
99737f94abfb [svn r30] * Fixed static function-local variables.
lindquist
parents:
diff changeset
4 {
99737f94abfb [svn r30] * Fixed static function-local variables.
lindquist
parents:
diff changeset
5 static int i;
99737f94abfb [svn r30] * Fixed static function-local variables.
lindquist
parents:
diff changeset
6 return i++;
99737f94abfb [svn r30] * Fixed static function-local variables.
lindquist
parents:
diff changeset
7 }
99737f94abfb [svn r30] * Fixed static function-local variables.
lindquist
parents:
diff changeset
8
99737f94abfb [svn r30] * Fixed static function-local variables.
lindquist
parents:
diff changeset
9 void main()
99737f94abfb [svn r30] * Fixed static function-local variables.
lindquist
parents:
diff changeset
10 {
99737f94abfb [svn r30] * Fixed static function-local variables.
lindquist
parents:
diff changeset
11 assert(func() == 0);
99737f94abfb [svn r30] * Fixed static function-local variables.
lindquist
parents:
diff changeset
12 assert(func() == 1);
99737f94abfb [svn r30] * Fixed static function-local variables.
lindquist
parents:
diff changeset
13 }