diff -uNr dmd-0.139/dmd/html/d/abi.html dmd-0.140/dmd/html/d/abi.html --- dmd-0.139/dmd/html/d/abi.html 2005-10-20 00:45:20.000000000 +0200 +++ dmd-0.140/dmd/html/d/abi.html 2005-11-24 17:13:14.000000000 +0100 @@ -25,7 +25,7 @@ | Comments -
Last update Thu Oct 20 01:45:19 2005 +
Last update Thu Nov 24 17:13:13 2005
@@ -280,7 +280,119 @@

Name Mangling

+ D accomplishes typesafe linking by mangling a D identifier + to include scope and type information. + +
MangledName:
+    _D QualifiedName Type
+
+QualifiedName:
+    SymbolName
+    SymbolName QualifiedName
+
+SymbolName:
+    LName
+    TemplateInstanceName
+
+ + Template Instance Names have the types and values of its parameters + encoded into it: + +
TemplateInstanceName:
+     __T LName TemplateArgs Z
+
+TemplateArgs:
+    TemplateArg
+    TemplateArg TemplateArgs
+
+TemplateArg:
+    T Type
+    V Value
+    S LName
+
+Value:
+    n
+    Number
+    N Number
+    e 20HexDigits
+    c 20HexDigits 20HexDigits
+    Width Number _ HexDigits
+
+Width:
+    a
+    w
+    d
+
+HexDigits:
+    HexDigit
+    HexDigit HexDigits
+
+HexDigit:
+    Digit
+    a
+    b
+    c
+    d
+    e
+    f
+
+ + n is for null arguments.
+ Number is for positive numeric literals.
+ N Number is for negative numeric literals.
+ e 20HexDigits is for real and imaginary floating point literals.
+ c 20HexDigits 20HexDigits is for complex floating point literals.
+ Width Number _ HexDigits: + Width is whether the characters + are 1 byte (a), 2 bytes (w) or 4 bytes (d) in size. + Number is the number of characters in the string. + The HexDigits are the hex data for the string. + +
Name:
+    Namestart
+    Namestart Namechars
+
+Namestart:
+    _
+    Alpha
+
+Namechar:
+    Namestart
+    Digit
+
+Namechars:
+    Namechar
+    Namechar Namechars
+
+ +
Type:
 	TBD
+
+ + A Name is a standard D identifier. + +
LName:
+    Number Name
+
+Number:
+    Digit
+    Digit Number
+
+Digit:
+    0
+    1
+    2
+    3
+    4
+    5
+    6
+    7
+    8
+    9
+
+ + An LName is a name preceded by a Number giving + the number of characters in the Name.

Function Calling Conventions

diff -uNr dmd-0.139/dmd/html/d/changelog.html dmd-0.140/dmd/html/d/changelog.html --- dmd-0.139/dmd/html/d/changelog.html 2005-11-07 22:15:02.000000000 +0100 +++ dmd-0.140/dmd/html/d/changelog.html 2005-11-24 17:13:14.000000000 +0100 @@ -25,7 +25,7 @@ | Comments -
Last update Mon Nov 7 22:15:00 2005 +
Last update Thu Nov 24 17:13:13 2005
@@ -164,6 +164,8 @@