Changeset 1404
- Timestamp:
- 01/22/10 01:52:47 (2 years ago)
- Files:
-
- trunk/docsrc/attribute.dd (modified) (6 diffs)
- trunk/docsrc/changelog.d (modified) (6 diffs)
- trunk/docsrc/changelog.dd (modified) (1 diff)
- trunk/docsrc/cpp0x.dd (modified) (1 diff)
- trunk/docsrc/faq.dd (modified) (5 diffs)
- trunk/docsrc/function.dd (modified) (3 diffs)
- trunk/docsrc/index.dd (modified) (2 diffs)
- trunk/docsrc/win32.mak (modified) (6 diffs)
Legend:
- Unmodified
- Added
- Removed
- Modified
- Copied
- Moved
trunk/docsrc/attribute.dd
r1372 r1404 24 24 $(LINK2 #shared, $(B shared)) 25 25 $(LINK2 #immutable, $(B immutable)) 26 26 $(LINK2 #inout, $(B inout)) 27 $(LINK2 #disable, $(B @disable)) 27 28 ) 28 29 … … 37 38 ) 38 39 39 <pre> 40 attribute declaration; affects the declaration41 42 attribute: affects all declarations until the end of43 the current scope40 --- 41 attribute declaration; // affects the declaration 42 43 attribute: // affects all declarations until the end of 44 // the current scope 44 45 declaration; 45 46 declaration; 46 47 ... 47 48 48 attribute affects all declarations in the block49 attribute // affects all declarations in the block 49 50 { 50 51 declaration; … … 52 53 ... 53 54 } 54 </pre> 55 --- 55 56 56 57 $(P For attributes with an optional else clause:) 57 58 58 <pre> 59 --- 59 60 attribute 60 61 declaration; … … 62 63 declaration; 63 64 64 attribute affects all declarations in the block65 attribute // affects all declarations in the block 65 66 { 66 67 declaration; … … 74 75 ... 75 76 } 76 </pre> 77 --- 77 78 78 79 <h2>$(LNAME2 linkage, Linkage Attribute)</h2> … … 356 357 357 358 <h2>$(LNAME2 shared, shared Attribute)</h2> 359 360 <h2>$(LNAME2 inout, inout Attribute)</h2> 361 362 <h2>$(LNAME2 disable, @disable Attribute)</h2> 363 364 $(P A reference to a declaration marked with the $(CODE @disable) attribute causes 365 a compile time error. 366 This can be used to explicitly disallow certain operations or overloads 367 at compile time rather than relying on generating a runtime error. 368 ) 369 370 --- 371 struct T 372 { 373 @disable this(this) { } // disabling this makes T not copyable 374 } 375 376 struct S 377 { 378 T t; // uncopyable member makes S also not copyable 379 } 380 381 @disable void foo() { } 382 383 void main() 384 { 385 S s; 386 S t = s; // error, S is not copyable 387 foo(); // error, foo is disabled 388 } 389 --- 358 390 ) 359 391 trunk/docsrc/changelog.d
r1258 r1404 5 5 6 6 $(UL 7 $(NEW1 055) 8 $(NEW1 054) 9 $(NEW1 053) 10 $(NEW1 052) 11 $(NEW1 051) 12 $(NEW1 050) 13 $(NEW1 049) 14 $(NEW1 048) 7 15 $(NEW1 047) 8 16 $(NEW1 046) … … 66 74 ) 67 75 68 $(VERSION 047, July 7, 2009, =================================================, 76 $(VERSION 055, Jan 1, 2010, =================================================, 77 78 $(WHATSNEW 79 $(LI Add $(B -map) command line switch) 80 $(LI Delegates and function pointers may be used in CTFE) 81 $(LI Delegate literals and function literals may be used in CTFE) 82 $(LI Lazy function parameters may now be used in CTFE) 83 $(LI Slicing of char[] arrays may now be used in CTFE) 84 ) 85 $(BUGSFIXED 86 $(LI $(CPPBUGZILLA 48): Internal error: cgreg 784) 87 $(LI $(BUGZILLA 1298): CTFE: tuple foreach bugs) 88 $(LI $(BUGZILLA 1790): CTFE: foreach(Tuple) won't compile if Tuple contains string) 89 $(LI $(BUGZILLA 2101): CTFE: Please may I use mutable arrays at compile time?) 90 $(LI Partial fix for $(BUGZILLA 3569), stops the stack overflow) 91 $(LI $(BUGZILLA 3663): struct forward reference regresssion) 92 $(LI $(BUGZILLA 3664): struct forward declaration causes enum to conflict with itself) 93 $(LI $(BUGZILLA 3674): forward reference error with multiple overloads with same name) 94 $(LI $(BUGZILLA 3719): forward references can cause out-of-memory error) 95 $(LI $(BUGZILLA 3726): Regression: ICE(mangle.c 81): struct forward reference with static this) 96 ) 97 ) 98 99 $(VERSION 054, Dec 30, 2009, =================================================, 100 101 $(WHATSNEW 102 ) 103 $(BUGSFIXED 104 $(LI $(CPPBUGZILLA 45): Internal error: cgcod 1594) 105 $(LI $(CPPBUGZILLA 46): Constant folding with long doubles) 106 $(LI $(NG_digitalmars_D 103391): D1 garbage collector + threads + malloc = garbage?) 107 $(LI $(BUGZILLA 282): Bizarre circular import nested name invisibility issue) 108 $(LI $(BUGZILLA 390): Cannot forward reference enum nested in struct) 109 $(LI $(BUGZILLA 400): forward reference error; no propety X for type Y (struct within struct)) 110 $(LI $(BUGZILLA 1160): enums can not be forward referenced) 111 $(LI $(BUGZILLA 1564): Forward reference error for enum in circular import) 112 $(LI $(BUGZILLA 2029): Typesafe variadic functions don't work in CTFE) 113 $(LI $(BUGZILLA 2816): Sudden-death static assert is not very useful) 114 $(LI $(BUGZILLA 3455): Some Unicode characters not allowed in identifiers) 115 $(LI $(BUGZILLA 3575): CTFE: member structs not initialized correctly) 116 $(LI $(BUGZILLA 3584): DeclDef rule is missing entries) 117 $(LI $(BUGZILLA 3585): Duplicate clauses in EqualExpression and RelExpression rules) 118 $(LI $(BUGZILLA 3587): Aggregate rule references undefined Tuple) 119 $(LI $(BUGZILLA 3588): WithStatement rule references unspecified Symbol) 120 $(LI $(BUGZILLA 3589): BaseClassList and InterfaceClasses rules are incorrect, missing ',') 121 $(LI $(BUGZILLA 3590): FunctionParameterList rule is missing) 122 $(LI $(BUGZILLA 3591): TemplateIdentifier rule is misspelled) 123 $(LI $(BUGZILLA 3592): ClassTemplateDeclaration and FunctionTemplateDeclaration rules are unreferenced) 124 $(LI $(BUGZILLA 3593): IntegerExpression rule unspecified) 125 $(LI $(BUGZILLA 3594): AsmPrimaryExp rule references unspecified rules) 126 $(LI $(BUGZILLA 3595): Several rules are missing ':' after rule name) 127 $(LI $(BUGZILLA 3601): Debug and Release builds of DMD produce different object files) 128 $(LI $(BUGZILLA 3611): Enum forward referencing regression) 129 $(LI $(BUGZILLA 3612): ExpressionList is undefined) 130 $(LI $(BUGZILLA 3617): CTFE: wrong code for if(x) where x is int or smaller) 131 $(LI $(BUGZILLA 3628): can't cast null to int) 132 $(LI $(BUGZILLA 3633): Optimizer causes access violation) 133 $(LI $(BUGZILLA 3645): manifest constant (enum) crashes dmd) 134 ) 135 ) 136 137 $(VERSION 053, Dec 3, 2009, =================================================, 138 139 $(WHATSNEW 140 ) 141 $(BUGSFIXED 142 $(LI $(BUGZILLA 111): appending a dchar to a char[]) 143 $(LI $(BUGZILLA 370): Compiler stack overflow on recursive typeof in function declaration.) 144 $(LI $(BUGZILLA 2229): ICE(template.c) instantiating an invalid variadic template with more than one argument) 145 $(LI $(BUGZILLA 2967): spec does not mention that inline asm is a valid "return" statement) 146 $(LI $(BUGZILLA 3115): >>> and >>>= generate wrong code) 147 $(LI $(BUGZILLA 3171): % not implemented correctly for floats) 148 $(LI $(BUGZILLA 3381): [tdpl] Incorrect assessment of overriding in triangular-shaped hierarchy) 149 $(LI $(BUGZILLA 3469): ICE(func.c): Regression. Calling non-template function as a template, from another module) 150 $(LI $(BUGZILLA 3495): Segfault(typinf.c) instantiating D variadic function with too few arguments) 151 $(LI $(BUGZILLA 3496): ICE(cgelem.c, optimizer bug) cast(void *)(x&1)== null.) 152 $(LI $(BUGZILLA 3502): Fix for dropped Mac OS X 10.5) 153 $(LI $(BUGZILLA 3521): Optimized code access popped register) 154 $(LI $(BUGZILLA 3540): Another DWARF line number fix) 155 ) 156 ) 157 158 $(VERSION 052, Nov 12, 2009, =================================================, 159 160 $(WHATSNEW 161 $(LI OSX versions 10.5 and older are no longer supported.) 162 ) 163 $(BUGSFIXED 164 $(LI Works on OSX 10.6 now.) 165 ) 166 ) 167 168 $(VERSION 051, Nov 5, 2009, =================================================, 169 170 $(WHATSNEW 171 ) 172 $(BUGSFIXED 173 $(LI Problem with complicated array op expressions) 174 $(LI $(BUGZILLA 195): DDoc generates bad output when example contains "protected" attribute) 175 $(LI $(BUGZILLA 424): Unexpected OPTLINK Termination at EIP=0044C37B (too many fixups)) 176 $(LI $(BUGZILLA 874): Bad codegen: wrong value variable in tuple foreach, D1 only) 177 $(LI $(BUGZILLA 1117): ddoc generates corrupted docs if code examples contain attributes with colons) 178 $(LI $(BUGZILLA 1812): DDOC - Unicode identifiers are not correctly marked.) 179 $(LI $(BUGZILLA 2862): ICE(template.c) using type tuple as function argument) 180 $(LI $(BUGZILLA 3292): ICE(todt.c) when using a named mixin with an initializer as template alias parameter) 181 $(LI $(BUGZILLA 3397): Unintended function call to static opCall) 182 $(LI $(BUGZILLA 3401): Compiler crash on invariant + method overload) 183 $(LI $(BUGZILLA 3422): ICE(cgcod.c) Structs with default initializers bigger than register size cannot be default parameters) 184 $(LI $(BUGZILLA 3426): ICE(optimize.c): struct literal with cast, as function default parameter.) 185 $(LI $(BUGZILLA 3432): ICE(e2ir.c): casting template expression) 186 ) 187 ) 188 189 $(VERSION 050, Oct 14, 2009, =================================================, 190 191 $(WHATSNEW 192 $(LI Use $(B -X) to generate JSON files.) 193 ) 194 $(BUGSFIXED 195 $(LI Fold in patch from $(BUGZILLA 1170)) 196 $(LI $(BUGZILLA 923): No constant folding for template value default arguments, D1 only) 197 $(LI $(BUGZILLA 1534): Can't mix in a case statement.) 198 $(LI $(BUGZILLA 2423): Erroneous unreachable statement warning) 199 $(LI $(BUGZILLA 3392): a cast of this to void in tango.core.Thread is not allowed) 200 ) 201 ) 202 203 $(VERSION 049, Oct 11, 2009, =================================================, 204 205 $(WHATSNEW 206 ) 207 $(BUGSFIXED 208 $(LI $(BUGZILLA 258): Undefined identifier error for circular import) 209 $(LI $(BUGZILLA 928): nested struct definition in unittest section of a templated class, hangs DMD) 210 $(LI $(BUGZILLA 1140): ICE(cod1.c) casting last function parameter to 8 byte value) 211 $(LI $(BUGZILLA 1592): dmd fail to resolve class symbol when i put files in a package) 212 $(LI $(BUGZILLA 1787): Compiler segfaults on circular references.) 213 $(LI $(BUGZILLA 1897): ICE(template.c) with tuple delegate) 214 $(LI $(BUGZILLA 1934): ICE(e2ir.c) using static array as AA key) 215 $(LI $(BUGZILLA 2229): ICE(template.c) instantiating an invalid variadic template with more than one argument) 216 $(LI $(BUGZILLA 2687): ICE(statement.c): tuple foreach in an erroneous template.) 217 $(LI $(BUGZILLA 2773): ICE(go.c) array assignment through a pointer, only with -O.) 218 $(LI $(BUGZILLA 2829): ICE(expression.c) static array block-initialized in struct literal) 219 $(LI $(BUGZILLA 2851): Segfault(expression.c) using C-style struct initializer with too few arguments) 220 $(LI $(BUGZILLA 3006): ICE(e2ir.c, tocsym.c) template module using array operation) 221 $(LI $(BUGZILLA 3041): Array slices can be compared to their element type: bad codegen or ICE) 222 $(LI $(BUGZILLA 3101): Stack overflow: declaring aggregate member twice with static if) 223 $(LI $(BUGZILLA 3174): ICE(mtype.c): Compiler crash or compiler error with auto returns and const / immutable / invarient / pure) 224 $(LI $(BUGZILLA 3176): Compiler hangs on poorly formed mixin in variadic template) 225 $(LI $(BUGZILLA 3261): compiler crash with mixin and forward reference) 226 $(LI $(BUGZILLA 3286): Default parameter prevents to resolve inter-module circular dependency) 227 $(LI $(BUGZILLA 3301): Undefined identifier error dependent on order of imports when a circular import is involved) 228 $(LI $(BUGZILLA 3325): ICE(func.c) function literal with post-contract) 229 $(LI $(BUGZILLA 3343): Crash by "auto main(){}") 230 $(LI $(BUGZILLA 3344): ICE(e2ir.c) returning an invalid function from main()) 231 $(LI $(BUGZILLA 3357): ICE(cod1.c) using 'in' with a static char array as AA key) 232 $(LI $(BUGZILLA 3366): Segfault(declaration.c) variadic template with unmatched constraint) 233 $(LI $(BUGZILLA 3374): [tdpl] ICE(init.c): Associative array type not inferred) 234 ) 235 ) 236 237 $(VERSION 048, Oct 5, 2009, =================================================, 238 239 $(WHATSNEW 240 $(LI Compiler now detects some cases of illegal null dereferencing when compiled with -O) 241 $(LI $(BUGZILLA 2905): Faster +-*/ involving a floating-pointing literal) 242 ) 243 $(BUGSFIXED 244 $(LI gdb stack trace should work now) 245 $(LI $(BUGZILLA 302): in/out contract inheritance yet to be implemented) 246 $(LI $(BUGZILLA 718): ICE(cgcod.c) with int /= cast(creal)) 247 $(LI $(BUGZILLA 814): lazy argument + variadic arguments = segfault) 248 $(LI $(BUGZILLA 1168): Passing a .stringof of an expression as a template value parameter results in the string of the type) 249 $(LI $(BUGZILLA 1571): Segfault(class.c) const on function parameters not carried through to .di file) 250 $(LI $(BUGZILLA 1731): forward reference of function type alias resets calling convention) 251 $(LI $(BUGZILLA 2202): Error getting type of non-static member of a class) 252 $(LI $(BUGZILLA 2469): ICE(cod1.c) arbitrary struct accepted as struct initializer) 253 $(LI $(BUGZILLA 2697): Cast of float function return to ulong or uint gives bogus value) 254 $(LI $(BUGZILLA 2702): Struct initialisation silently inserts deadly casts) 255 $(LI $(BUGZILLA 2839): ICE(cgcs.c) with int /= imaginary) 256 $(LI $(BUGZILLA 3049): ICE(cod4.c) or segfault: Array operation on void[] array) 257 $(LI $(BUGZILLA 3059): Nonsensical complex op= should be illegal) 258 $(LI $(BUGZILLA 3160): ICE(cgcod.c 1511-D1) or bad code-D2 returning string from void main) 259 $(LI $(BUGZILLA 3304): Segfault using 'is' with a pointer enum.) 260 $(LI $(BUGZILLA 3305): Segfault(expression.c) with recursive struct template alias expressions) 261 $(LI $(BUGZILLA 3335): minor warning cleanups) 262 $(LI $(BUGZILLA 3336): ICE(glue.c) declaring AA with tuple key, only with -g) 263 $(LI $(BUGZILLA 3353): storage class of a member function is propagated to default arguments) 264 ) 265 ) 266 267 $(VERSION 047, Sep 2, 2009, =================================================, 69 268 70 269 $(WHATSNEW … … 84 283 $(LI CTFE error messages now explain why the function could not be 85 284 interpreted at compile time) 86 $(LI Improved exception message for assert(0) in Windows -release builds)87 285 ) 88 286 $(BUGSFIXED … … 93 291 $(LI $(BUGZILLA 1948): CTFE fails when mutating a struct in an array) 94 292 $(LI $(BUGZILLA 1950): CTFE doesn't work correctly for structs passed by ref) 95 $(LI $(BUGZILLA 2398): writef("%x") for a pointer is always uppercase)96 293 $(LI $(BUGZILLA 2569): static arrays in CTFE functions don't compile) 294 $(LI $(BUGZILLA 2575): gdb can not show code) 97 295 $(LI $(BUGZILLA 2604): DW_TAG_module and GDB) 98 296 $(LI $(BUGZILLA 2940): null is null cannot be evaluated at compile time) 99 297 $(LI $(BUGZILLA 2960): CTFE rejects static array to dynamic array casts) 298 $(LI $(BUGZILLA 3039): -vtls compiler flag not listed in man file) 299 $(LI $(BUGZILLA 3165): What kind of integer division does D use?) 300 $(LI $(BUGZILLA 3166): "positive" -> "non-negative" in modulo operator description) 301 $(LI $(BUGZILLA 3168): Declaring structs as incomplete types no longer works) 100 302 $(LI $(BUGZILLA 3170): Forward reference of nested class fails if outer class is not plain) 101 $(LI $(BUGZILLA 3186): Declaring structs as incomplete types no longer works) 303 $(LI $(BUGZILLA 3183): Spec of align attribute needs work) 304 $(LI $(BUGZILLA 3186): corrections for http://www.digitalmars.com/d/2.0/dmd-osx.html) 102 305 $(LI $(BUGZILLA 3192): asm in a anonymous delegate crash the compiler) 103 306 $(LI $(BUGZILLA 3196): Segfault(mtype.c) after almost any error involving a delegate literal) … … 117 320 $(LI $(BUGZILLA 106): template - mixin sequence) 118 321 $(LI $(BUGZILLA 810): Cannot forward reference template) 119 $(LI $(BUGZILLA 852): Various errors with static initialization of structs and arrays)322 $(LI $(BUGZILLA 852): ICE(toir.c) using local class in non-static nested function in nested static function) 120 323 $(LI $(BUGZILLA 854): TypeTuple in anonymous delegate causes ice in glue.c) 121 324 $(LI $(BUGZILLA 1054): regression: circular aliases cause compiler stack overflow) … … 1196 1399 1197 1400 BUGZILLA = <a href="http://d.puremagic.com/issues/show_bug.cgi?id=$0">Bugzilla $0</a> 1401 CPPBUGZILLA = <a href="http://bugzilla.digitalmars.com/issues/show_bug.cgi?id=$0">Bugzilla $0</a> 1198 1402 DSTRESS = dstress $0 1199 1403 BUGSFIXED = <h4>Bugs Fixed</h4> $(UL $0 ) trunk/docsrc/changelog.dd
r1398 r1404 57 57 58 58 $(WHATSNEW 59 ) 60 $(BUGSFIXED 59 $(LI Added shared static constructors/destructors, regular static 60 constructors/destructors now deal with TLS) 61 $(LI Add $(B -map) command line switch) 62 $(LI Add $(LINK2 attribute.html#deprecated, $(B @disable)) attribute) 63 $(LI $(BUGZILLA 3556): version(CTFE)) 64 $(LI Delegates and function pointers may be used in CTFE) 65 $(LI Delegate literals and function literals may be used in CTFE) 66 $(LI Lazy function parameters may now be used in CTFE) 67 $(LI Slicing of char[] arrays may now be used in CTFE) 68 ) 69 $(BUGSFIXED 70 $(LI Added TLS support for OSX) 71 $(LI $(CPPBUGZILLA 47): Internal error: cg87 3316) 72 $(LI $(BUGZILLA 1298): CTFE: tuple foreach bugs) 73 $(LI $(BUGZILLA 1790): CTFE: foreach(Tuple) won't compile if Tuple contains string) 74 $(LI $(BUGZILLA 2101): CTFE: Please may I use mutable arrays at compile time?) 75 $(LI $(BUGZILLA 3535): struct constructors don't work in CTFE) 76 $(LI Partial fix for $(BUGZILLA 3569), stops the stack overflow) 77 $(LI $(BUGZILLA 3600): template instantiation with empty tuple) 78 $(LI $(BUGZILLA 3660): Templates and shared functions don't mix) 61 79 $(LI $(BUGZILLA 3663): struct forward reference regresssion) 62 80 $(LI $(BUGZILLA 3664): struct forward declaration causes enum to conflict with itself) 81 $(LI $(BUGZILLA 3671): x^^3 gives wrong result when x is a floating-point literal) 82 $(LI $(BUGZILLA 3674): forward reference error with multiple overloads with same name) 83 $(LI $(BUGZILLA 3675): Regression: Struct literals cannot be initialized with another struct literal) 84 $(LI $(BUGZILLA 3719): forward references can cause out-of-memory error) 85 $(LI $(BUGZILLA 3726): Regression: ICE(mangle.c 81): struct forward reference with static this) 63 86 ) 64 87 ) trunk/docsrc/cpp0x.dd
r1378 r1404 475 475 $(SECTION3 $(LNAME2 defaulted, Defaulted and Deleted Functions), 476 476 477 $(P $(LINK2 $(NDOCS)2007/n2346.html, N2346): TBD 478 ) 479 480 ) 477 $(P $(LINK2 $(NDOCS)/2007/n2326.html#delete, N2326): 478 D alows individual functions to be marked as $(LINK2 attribute.html#disable, disabled). 479 ) 480 481 ) 482 481 483 482 484 $(SECTION3 $(LNAME2 unions, Unrestricted Unions), trunk/docsrc/faq.dd
r1242 r1404 22 22 $(LI I suggested a great feature. Why was the suggestion ignored?) 23 23 24 $(LI Why const and i nvariant?)25 26 $(LI Why the *names* const and invariant?)27 28 $(LI How exactly is i nvariantrelated to multicores?)29 30 $(LI Ok, I'm fine with i nvariantfor safe data sharing among threads. But why do we need the uninformative const?)31 32 $(LI Why are i nvariantstrings favored in D 2.0?)24 $(LI Why const and immutable?) 25 26 $(LI Why the $(I names) const and immutable?) 27 28 $(LI How exactly is immutable related to multicores?) 29 30 $(LI Ok, I'm fine with immutable for safe data sharing among threads. But why do we need the uninformative const?) 31 32 $(LI Why are immutable strings favored in D 2.0?) 33 33 34 34 $(LI I want to contribute to D 2.0. How can I effect that?) … … 36 36 $(ITEMR case_range, Why doesn't the case range statement 37 37 use the $(TT case X..Y:) syntax?) 38 39 $(ITEMR shared_guarantees, What guarantees is shared supposed to provide?) 40 41 $(ITEMR shared_synchronized, What does shared have to do with synchronization?) 42 43 $(ITEMR shared_memory_barriers, What does shared have to do with memory barriers?) 44 45 $(ITEMR casting_to_shared, What are the semantics of casting FROM unshared TO shared?) 46 47 $(ITEMR casting_from_shared, What are the semantics of casting FROM shared TO unshared?) 38 48 39 49 ) … … 97 107 ) 98 108 109 $(ITEM shared_guarantees, What guarantees is shared supposed to provide?) 110 111 $(P Shared means that multiple threads can access the data. The guarantee is that if it is 112 not shared, and not immutable, that only the current thread can see it. 113 ) 114 115 $(ITEM shared_synchronized, What does shared have to do with synchronization?) 116 117 $(P Only shared data can be synchronized. It makes no sense to synchronize thread local 118 data. 119 ) 120 121 $(ITEM shared_memory_barriers, What does shared have to do with memory barriers?) 122 123 $(P Reading/writing shared data emits memory barriers to ensure sequential consistency (not 124 implemented). 125 ) 126 127 $(ITEM casting_to_shared, What are the semantics of casting FROM unshared TO shared?) 128 129 $(P Make sure there are no other unshared references to that same data. 130 ) 131 132 $(ITEM casting_from_shared, What are the semantics of casting FROM shared TO unshared?) 133 134 $(P Make sure there are no other shared references to that same data. 135 ) 136 99 137 $(ITEM q1, Why the name D?) 100 138 … … 632 670 633 671 $(LI C++ overloads based on const and volatile. D overloads 634 based on const and i nvariant.)672 based on const and immutable.) 635 673 636 674 $(LI C++ overloads operators in significantly different ways - for … … 665 703 $(LI C++ name mangling depends on const and volatile being type 666 704 modifiers. 667 D name mangling depends on const and i nvariantbeing type modifiers.705 D name mangling depends on const and immutable being type modifiers. 668 706 D's const is also transitive, unlike C++. One cannot have a const 669 707 pointer to mutable in D. trunk/docsrc/function.dd
r1399 r1404 1524 1524 ---- 1525 1525 1526 <h2>$(LNAME2 interpretation, Compile Time Function Execution )</h2>1526 <h2>$(LNAME2 interpretation, Compile Time Function Execution (CTFE))</h2> 1527 1527 1528 1528 $(P A subset of functions can be executed at compile time. … … 1549 1549 $(LI const variables initialized with a member of 1550 1550 this list) 1551 $(LI delegates) 1552 $(LI pointers to functions) 1553 $(LI delegate literals) 1554 $(LI function literals) 1551 1555 ) 1552 1556 ) 1553 1557 1554 $(LI function parameters may not be C-style variadic, 1555 or $(B lazy)) 1558 $(LI function parameters may not be C-style variadic) 1556 1559 1557 1560 $(LI the function may not be synchronized) … … 1560 1563 $(UL 1561 1564 $(LI throw exceptions) 1562 $(LI use pointers , delegates,or classes)1565 $(LI use pointers or classes) 1563 1566 $(LI reference any global state or variables) 1564 1567 $(LI reference any local static variables) 1565 $(LI new ordelete)1568 $(LI delete) 1566 1569 $(LI call any function that is not 1567 1570 executable at compile time) trunk/docsrc/index.dd
r1364 r1404 75 75 ) 76 76 77 $(COMMENT 77 78 $(LI Gnu D compiler $(LINK2 http://dgcc.sourceforge.net/, gdc) 78 79 for several platforms, including … … 80 81 $(LINK2 http://gdcmac.sourceforge.net/, Mac OS X) 81 82 for D versions 1.030 and 2.014. 83 ) 84 ) 85 $(LI Gnu D compiler $(LINK2 http://bitbucket.org/goshawk/gdc/wiki/Home, gdc). 82 86 ) 83 87 trunk/docsrc/win32.mak
r1162 r1404 22 22 final-const-invariant.dd const.dd traits.dd COM.dd cpp_interface.dd \ 23 23 hijack.dd const3.dd features2.dd safed.dd cpp0x.dd const-faq.dd \ 24 concepts.dd memory-safe-d.dd d-floating-point.dd 25 26 DDOC=macros.ddoc doc.ddoc 24 concepts.dd memory-safe-d.dd d-floating-point.dd \ 25 migrate-to-shared.dd D1toD2.dd unittest.dd 26 27 DDOC=macros.ddoc windows.ddoc doc.ddoc 27 28 28 29 IMG=dmlogo.gif cpp1.gif d002.ico c1.gif d3.gif d4.gif d5.gif favicon.gif … … 49 50 hijack.html const3.html features2.html safed.html cpp0x.html const-faq.html \ 50 51 dmd-windows.html dmd-linux.html dmd-osx.html dmd-freebsd.html \ 51 concepts.html memory-safe-d.html d-floating-point.html 52 concepts.html memory-safe-d.html d-floating-point.html \ 53 migrate-to-shared.html D1toD2.html unittest.html 52 54 53 55 … … 116 118 ctod.html : $(DDOC) ctod.dd 117 119 120 D1toD2.html : $(DDOC) D1toD2.dd 121 118 122 d-floating-point.html : $(DDOC) d-floating-point.dd 119 123 … … 184 188 memory-safe-d.html : $(DDOC) memory-safe-d.dd 185 189 190 migrate-to-shared.html : $(DDOC) migrate-to-shared.dd 191 186 192 mixin.html : $(DDOC) mixin.dd 187 193 … … 226 232 type.html : $(DDOC) type.dd 227 233 234 unittest.html : $(DDOC) unittest.dd 235 228 236 variadic-function-templates.html : $(DDOC) variadic-function-templates.dd 229 237 … … 234 242 wc.html : $(DDOC) wc.dd 235 243 236 windbg.html : $(DDOC) wind bg.dd237 238 windows.html : $(DDOC) windows.dd 244 windbg.html : $(DDOC) windows.ddoc windbg.dd 245 246 windows.html : $(DDOC) windows.ddoc windows.dd 239 247 240 248 zip:
