From 53409db5ca3f3726f14649271441b5aee41f2bbe Mon Sep 17 00:00:00 2001
From: Joao Matos <joao@tritao.eu>
Date: Sun, 31 Jul 2016 18:51:39 +0100
Subject: [PATCH] Re-generated the parser bindings.

---
 .../CppSharp.CppParser.cs                     |  348 ++++
 .../i686-pc-win32-msvc/CppSharp.CppParser.cs  |  348 ++++
 .../CppSharp.CppParser.cs                     |  348 ++++
 .../CppSharp.CppParser.cs                     | 1508 ++++++++++-------
 .../x86_64-linux-gnu/CppSharp.CppParser.cs    |  348 ++++
 .../CppSharp.CppParser.cs                     |  348 ++++
 6 files changed, 2668 insertions(+), 580 deletions(-)

diff --git a/src/CppParser/Bindings/CSharp/i686-apple-darwin12.4.0/CppSharp.CppParser.cs b/src/CppParser/Bindings/CSharp/i686-apple-darwin12.4.0/CppSharp.CppParser.cs
index 86536f21..bc80f0e7 100644
--- a/src/CppParser/Bindings/CSharp/i686-apple-darwin12.4.0/CppSharp.CppParser.cs
+++ b/src/CppParser/Bindings/CSharp/i686-apple-darwin12.4.0/CppSharp.CppParser.cs
@@ -3179,6 +3179,9 @@ namespace CppSharp
                     [FieldOffset(0)]
                     public uint Offset;
 
+                    [FieldOffset(4)]
+                    public global::std.__1.basic_string.Internal Name;
+
                     [FieldOffset(16)]
                     public global::CppSharp.Parser.AST.QualifiedType.Internal QualifiedType;
 
@@ -3846,6 +3849,15 @@ namespace CppSharp
                     [FieldOffset(20)]
                     public int LineNumberEnd;
 
+                    [FieldOffset(24)]
+                    public global::std.__1.basic_string.Internal Name;
+
+                    [FieldOffset(36)]
+                    public global::std.__1.basic_string.Internal USR;
+
+                    [FieldOffset(48)]
+                    public global::std.__1.basic_string.Internal DebugText;
+
                     [FieldOffset(60)]
                     public byte IsIncomplete;
 
@@ -4295,6 +4307,15 @@ namespace CppSharp
                     [FieldOffset(20)]
                     public int LineNumberEnd;
 
+                    [FieldOffset(24)]
+                    public global::std.__1.basic_string.Internal Name;
+
+                    [FieldOffset(36)]
+                    public global::std.__1.basic_string.Internal USR;
+
+                    [FieldOffset(48)]
+                    public global::std.__1.basic_string.Internal DebugText;
+
                     [FieldOffset(60)]
                     public byte IsIncomplete;
 
@@ -4913,6 +4934,15 @@ namespace CppSharp
                     [FieldOffset(20)]
                     public int LineNumberEnd;
 
+                    [FieldOffset(24)]
+                    public global::std.__1.basic_string.Internal Name;
+
+                    [FieldOffset(36)]
+                    public global::std.__1.basic_string.Internal USR;
+
+                    [FieldOffset(48)]
+                    public global::std.__1.basic_string.Internal DebugText;
+
                     [FieldOffset(60)]
                     public byte IsIncomplete;
 
@@ -5054,6 +5084,15 @@ namespace CppSharp
                     [FieldOffset(20)]
                     public int LineNumberEnd;
 
+                    [FieldOffset(24)]
+                    public global::std.__1.basic_string.Internal Name;
+
+                    [FieldOffset(36)]
+                    public global::std.__1.basic_string.Internal USR;
+
+                    [FieldOffset(48)]
+                    public global::std.__1.basic_string.Internal DebugText;
+
                     [FieldOffset(60)]
                     public byte IsIncomplete;
 
@@ -5181,6 +5220,15 @@ namespace CppSharp
                     [FieldOffset(20)]
                     public int LineNumberEnd;
 
+                    [FieldOffset(24)]
+                    public global::std.__1.basic_string.Internal Name;
+
+                    [FieldOffset(36)]
+                    public global::std.__1.basic_string.Internal USR;
+
+                    [FieldOffset(48)]
+                    public global::std.__1.basic_string.Internal DebugText;
+
                     [FieldOffset(60)]
                     public byte IsIncomplete;
 
@@ -5329,6 +5377,15 @@ namespace CppSharp
                     [FieldOffset(20)]
                     public int LineNumberEnd;
 
+                    [FieldOffset(24)]
+                    public global::std.__1.basic_string.Internal Name;
+
+                    [FieldOffset(36)]
+                    public global::std.__1.basic_string.Internal USR;
+
+                    [FieldOffset(48)]
+                    public global::std.__1.basic_string.Internal DebugText;
+
                     [FieldOffset(60)]
                     public byte IsIncomplete;
 
@@ -5462,6 +5519,9 @@ namespace CppSharp
                     [FieldOffset(4)]
                     public global::System.IntPtr Decl;
 
+                    [FieldOffset(8)]
+                    public global::std.__1.basic_string.Internal String;
+
                     [SuppressUnmanagedCodeSecurity]
                     [DllImport("CppSharp.CppParser.dll", CallingConvention = global::System.Runtime.InteropServices.CallingConvention.Cdecl,
                         EntryPoint="_ZN8CppSharp9CppParser3AST9StatementC2ERKS2_")]
@@ -5606,6 +5666,9 @@ namespace CppSharp
                     [FieldOffset(4)]
                     public global::System.IntPtr Decl;
 
+                    [FieldOffset(8)]
+                    public global::std.__1.basic_string.Internal String;
+
                     [SuppressUnmanagedCodeSecurity]
                     [DllImport("CppSharp.CppParser.dll", CallingConvention = global::System.Runtime.InteropServices.CallingConvention.Cdecl,
                         EntryPoint="_ZN8CppSharp9CppParser3AST10ExpressionC2ERKS2_")]
@@ -5683,12 +5746,18 @@ namespace CppSharp
                     [FieldOffset(4)]
                     public global::System.IntPtr Decl;
 
+                    [FieldOffset(8)]
+                    public global::std.__1.basic_string.Internal String;
+
                     [FieldOffset(20)]
                     public global::System.IntPtr LHS;
 
                     [FieldOffset(24)]
                     public global::System.IntPtr RHS;
 
+                    [FieldOffset(28)]
+                    public global::std.__1.basic_string.Internal OpcodeStr;
+
                     [SuppressUnmanagedCodeSecurity]
                     [DllImport("CppSharp.CppParser.dll", CallingConvention = global::System.Runtime.InteropServices.CallingConvention.Cdecl,
                         EntryPoint="_ZN8CppSharp9CppParser3AST14BinaryOperatorC2ERKS2_")]
@@ -5828,6 +5897,9 @@ namespace CppSharp
                     [FieldOffset(4)]
                     public global::System.IntPtr Decl;
 
+                    [FieldOffset(8)]
+                    public global::std.__1.basic_string.Internal String;
+
                     [SuppressUnmanagedCodeSecurity]
                     [DllImport("CppSharp.CppParser.dll", CallingConvention = global::System.Runtime.InteropServices.CallingConvention.Cdecl,
                         EntryPoint="_ZN8CppSharp9CppParser3AST8CallExprC2ERKS2_")]
@@ -5958,6 +6030,9 @@ namespace CppSharp
                     [FieldOffset(4)]
                     public global::System.IntPtr Decl;
 
+                    [FieldOffset(8)]
+                    public global::std.__1.basic_string.Internal String;
+
                     [SuppressUnmanagedCodeSecurity]
                     [DllImport("CppSharp.CppParser.dll", CallingConvention = global::System.Runtime.InteropServices.CallingConvention.Cdecl,
                         EntryPoint="_ZN8CppSharp9CppParser3AST16CXXConstructExprC2ERKS2_")]
@@ -6100,6 +6175,15 @@ namespace CppSharp
                     [FieldOffset(20)]
                     public int LineNumberEnd;
 
+                    [FieldOffset(24)]
+                    public global::std.__1.basic_string.Internal Name;
+
+                    [FieldOffset(36)]
+                    public global::std.__1.basic_string.Internal USR;
+
+                    [FieldOffset(48)]
+                    public global::std.__1.basic_string.Internal DebugText;
+
                     [FieldOffset(60)]
                     public byte IsIncomplete;
 
@@ -6309,6 +6393,15 @@ namespace CppSharp
                     [FieldOffset(20)]
                     public int LineNumberEnd;
 
+                    [FieldOffset(24)]
+                    public global::std.__1.basic_string.Internal Name;
+
+                    [FieldOffset(36)]
+                    public global::std.__1.basic_string.Internal USR;
+
+                    [FieldOffset(48)]
+                    public global::std.__1.basic_string.Internal DebugText;
+
                     [FieldOffset(60)]
                     public byte IsIncomplete;
 
@@ -6354,6 +6447,12 @@ namespace CppSharp
                     [FieldOffset(108)]
                     public global::CppSharp.Parser.AST.CXXOperatorKind OperatorKind;
 
+                    [FieldOffset(112)]
+                    public global::std.__1.basic_string.Internal Mangled;
+
+                    [FieldOffset(124)]
+                    public global::std.__1.basic_string.Internal Signature;
+
                     [FieldOffset(136)]
                     public global::CppSharp.Parser.AST.CallingConvention CallingConvention;
 
@@ -6724,6 +6823,15 @@ namespace CppSharp
                     [FieldOffset(20)]
                     public int LineNumberEnd;
 
+                    [FieldOffset(24)]
+                    public global::std.__1.basic_string.Internal Name;
+
+                    [FieldOffset(36)]
+                    public global::std.__1.basic_string.Internal USR;
+
+                    [FieldOffset(48)]
+                    public global::std.__1.basic_string.Internal DebugText;
+
                     [FieldOffset(60)]
                     public byte IsIncomplete;
 
@@ -6769,6 +6877,12 @@ namespace CppSharp
                     [FieldOffset(108)]
                     public global::CppSharp.Parser.AST.CXXOperatorKind OperatorKind;
 
+                    [FieldOffset(112)]
+                    public global::std.__1.basic_string.Internal Mangled;
+
+                    [FieldOffset(124)]
+                    public global::std.__1.basic_string.Internal Signature;
+
                     [FieldOffset(136)]
                     public global::CppSharp.Parser.AST.CallingConvention CallingConvention;
 
@@ -7041,6 +7155,15 @@ namespace CppSharp
                     [FieldOffset(20)]
                     public int LineNumberEnd;
 
+                    [FieldOffset(24)]
+                    public global::std.__1.basic_string.Internal Name;
+
+                    [FieldOffset(36)]
+                    public global::std.__1.basic_string.Internal USR;
+
+                    [FieldOffset(48)]
+                    public global::std.__1.basic_string.Internal DebugText;
+
                     [FieldOffset(60)]
                     public byte IsIncomplete;
 
@@ -7141,6 +7264,15 @@ namespace CppSharp
                         [FieldOffset(20)]
                         public int LineNumberEnd;
 
+                        [FieldOffset(24)]
+                        public global::std.__1.basic_string.Internal Name;
+
+                        [FieldOffset(36)]
+                        public global::std.__1.basic_string.Internal USR;
+
+                        [FieldOffset(48)]
+                        public global::std.__1.basic_string.Internal DebugText;
+
                         [FieldOffset(60)]
                         public byte IsIncomplete;
 
@@ -7162,6 +7294,9 @@ namespace CppSharp
                         [FieldOffset(88)]
                         public global::System.IntPtr Comment;
 
+                        [FieldOffset(92)]
+                        public global::std.__1.basic_string.Internal Expression;
+
                         [FieldOffset(104)]
                         public ulong Value;
 
@@ -7453,6 +7588,15 @@ namespace CppSharp
                     [FieldOffset(20)]
                     public int LineNumberEnd;
 
+                    [FieldOffset(24)]
+                    public global::std.__1.basic_string.Internal Name;
+
+                    [FieldOffset(36)]
+                    public global::std.__1.basic_string.Internal USR;
+
+                    [FieldOffset(48)]
+                    public global::std.__1.basic_string.Internal DebugText;
+
                     [FieldOffset(60)]
                     public byte IsIncomplete;
 
@@ -7474,6 +7618,9 @@ namespace CppSharp
                     [FieldOffset(88)]
                     public global::System.IntPtr Comment;
 
+                    [FieldOffset(92)]
+                    public global::std.__1.basic_string.Internal Mangled;
+
                     [FieldOffset(104)]
                     public global::CppSharp.Parser.AST.QualifiedType.Internal QualifiedType;
 
@@ -7773,6 +7920,15 @@ namespace CppSharp
                     [FieldOffset(20)]
                     public int LineNumberEnd;
 
+                    [FieldOffset(24)]
+                    public global::std.__1.basic_string.Internal Name;
+
+                    [FieldOffset(36)]
+                    public global::std.__1.basic_string.Internal USR;
+
+                    [FieldOffset(48)]
+                    public global::std.__1.basic_string.Internal DebugText;
+
                     [FieldOffset(60)]
                     public byte IsIncomplete;
 
@@ -7966,6 +8122,15 @@ namespace CppSharp
                     [FieldOffset(20)]
                     public int LineNumberEnd;
 
+                    [FieldOffset(24)]
+                    public global::std.__1.basic_string.Internal Name;
+
+                    [FieldOffset(36)]
+                    public global::std.__1.basic_string.Internal USR;
+
+                    [FieldOffset(48)]
+                    public global::std.__1.basic_string.Internal DebugText;
+
                     [FieldOffset(60)]
                     public byte IsIncomplete;
 
@@ -8090,6 +8255,15 @@ namespace CppSharp
                     [FieldOffset(20)]
                     public int LineNumberEnd;
 
+                    [FieldOffset(24)]
+                    public global::std.__1.basic_string.Internal Name;
+
+                    [FieldOffset(36)]
+                    public global::std.__1.basic_string.Internal USR;
+
+                    [FieldOffset(48)]
+                    public global::std.__1.basic_string.Internal DebugText;
+
                     [FieldOffset(60)]
                     public byte IsIncomplete;
 
@@ -8594,6 +8768,15 @@ namespace CppSharp
                     [FieldOffset(20)]
                     public int LineNumberEnd;
 
+                    [FieldOffset(24)]
+                    public global::std.__1.basic_string.Internal Name;
+
+                    [FieldOffset(36)]
+                    public global::std.__1.basic_string.Internal USR;
+
+                    [FieldOffset(48)]
+                    public global::std.__1.basic_string.Internal DebugText;
+
                     [FieldOffset(60)]
                     public byte IsIncomplete;
 
@@ -8807,6 +8990,15 @@ namespace CppSharp
                     [FieldOffset(20)]
                     public int LineNumberEnd;
 
+                    [FieldOffset(24)]
+                    public global::std.__1.basic_string.Internal Name;
+
+                    [FieldOffset(36)]
+                    public global::std.__1.basic_string.Internal USR;
+
+                    [FieldOffset(48)]
+                    public global::std.__1.basic_string.Internal DebugText;
+
                     [FieldOffset(60)]
                     public byte IsIncomplete;
 
@@ -8934,6 +9126,15 @@ namespace CppSharp
                     [FieldOffset(20)]
                     public int LineNumberEnd;
 
+                    [FieldOffset(24)]
+                    public global::std.__1.basic_string.Internal Name;
+
+                    [FieldOffset(36)]
+                    public global::std.__1.basic_string.Internal USR;
+
+                    [FieldOffset(48)]
+                    public global::std.__1.basic_string.Internal DebugText;
+
                     [FieldOffset(60)]
                     public byte IsIncomplete;
 
@@ -9107,6 +9308,15 @@ namespace CppSharp
                     [FieldOffset(20)]
                     public int LineNumberEnd;
 
+                    [FieldOffset(24)]
+                    public global::std.__1.basic_string.Internal Name;
+
+                    [FieldOffset(36)]
+                    public global::std.__1.basic_string.Internal USR;
+
+                    [FieldOffset(48)]
+                    public global::std.__1.basic_string.Internal DebugText;
+
                     [FieldOffset(60)]
                     public byte IsIncomplete;
 
@@ -9282,6 +9492,15 @@ namespace CppSharp
                     [FieldOffset(20)]
                     public int LineNumberEnd;
 
+                    [FieldOffset(24)]
+                    public global::std.__1.basic_string.Internal Name;
+
+                    [FieldOffset(36)]
+                    public global::std.__1.basic_string.Internal USR;
+
+                    [FieldOffset(48)]
+                    public global::std.__1.basic_string.Internal DebugText;
+
                     [FieldOffset(60)]
                     public byte IsIncomplete;
 
@@ -9431,6 +9650,15 @@ namespace CppSharp
                     [FieldOffset(20)]
                     public int LineNumberEnd;
 
+                    [FieldOffset(24)]
+                    public global::std.__1.basic_string.Internal Name;
+
+                    [FieldOffset(36)]
+                    public global::std.__1.basic_string.Internal USR;
+
+                    [FieldOffset(48)]
+                    public global::std.__1.basic_string.Internal DebugText;
+
                     [FieldOffset(60)]
                     public byte IsIncomplete;
 
@@ -9633,6 +9861,15 @@ namespace CppSharp
                     [FieldOffset(20)]
                     public int LineNumberEnd;
 
+                    [FieldOffset(24)]
+                    public global::std.__1.basic_string.Internal Name;
+
+                    [FieldOffset(36)]
+                    public global::std.__1.basic_string.Internal USR;
+
+                    [FieldOffset(48)]
+                    public global::std.__1.basic_string.Internal DebugText;
+
                     [FieldOffset(60)]
                     public byte IsIncomplete;
 
@@ -9813,6 +10050,15 @@ namespace CppSharp
                     [FieldOffset(20)]
                     public int LineNumberEnd;
 
+                    [FieldOffset(24)]
+                    public global::std.__1.basic_string.Internal Name;
+
+                    [FieldOffset(36)]
+                    public global::std.__1.basic_string.Internal USR;
+
+                    [FieldOffset(48)]
+                    public global::std.__1.basic_string.Internal DebugText;
+
                     [FieldOffset(60)]
                     public byte IsIncomplete;
 
@@ -10056,6 +10302,15 @@ namespace CppSharp
                     [FieldOffset(20)]
                     public int LineNumberEnd;
 
+                    [FieldOffset(24)]
+                    public global::std.__1.basic_string.Internal Name;
+
+                    [FieldOffset(36)]
+                    public global::std.__1.basic_string.Internal USR;
+
+                    [FieldOffset(48)]
+                    public global::std.__1.basic_string.Internal DebugText;
+
                     [FieldOffset(60)]
                     public byte IsIncomplete;
 
@@ -10219,6 +10474,15 @@ namespace CppSharp
                     [FieldOffset(20)]
                     public int LineNumberEnd;
 
+                    [FieldOffset(24)]
+                    public global::std.__1.basic_string.Internal Name;
+
+                    [FieldOffset(36)]
+                    public global::std.__1.basic_string.Internal USR;
+
+                    [FieldOffset(48)]
+                    public global::std.__1.basic_string.Internal DebugText;
+
                     [FieldOffset(60)]
                     public byte IsIncomplete;
 
@@ -10600,6 +10864,15 @@ namespace CppSharp
                     [FieldOffset(20)]
                     public int LineNumberEnd;
 
+                    [FieldOffset(24)]
+                    public global::std.__1.basic_string.Internal Name;
+
+                    [FieldOffset(36)]
+                    public global::std.__1.basic_string.Internal USR;
+
+                    [FieldOffset(48)]
+                    public global::std.__1.basic_string.Internal DebugText;
+
                     [FieldOffset(60)]
                     public byte IsIncomplete;
 
@@ -10867,6 +11140,12 @@ namespace CppSharp
                     [FieldOffset(8)]
                     public global::CppSharp.Parser.AST.DeclarationKind Kind;
 
+                    [FieldOffset(12)]
+                    public global::std.__1.basic_string.Internal Name;
+
+                    [FieldOffset(24)]
+                    public global::std.__1.basic_string.Internal Expression;
+
                     [FieldOffset(36)]
                     public int LineNumberStart;
 
@@ -11045,6 +11324,12 @@ namespace CppSharp
                     [FieldOffset(8)]
                     public global::CppSharp.Parser.AST.DeclarationKind Kind;
 
+                    [FieldOffset(12)]
+                    public global::std.__1.basic_string.Internal Name;
+
+                    [FieldOffset(24)]
+                    public global::std.__1.basic_string.Internal Text;
+
                     [FieldOffset(36)]
                     public global::System.IntPtr Definition;
 
@@ -11221,6 +11506,15 @@ namespace CppSharp
                     [FieldOffset(20)]
                     public int LineNumberEnd;
 
+                    [FieldOffset(24)]
+                    public global::std.__1.basic_string.Internal Name;
+
+                    [FieldOffset(36)]
+                    public global::std.__1.basic_string.Internal USR;
+
+                    [FieldOffset(48)]
+                    public global::std.__1.basic_string.Internal DebugText;
+
                     [FieldOffset(60)]
                     public byte IsIncomplete;
 
@@ -11248,6 +11542,9 @@ namespace CppSharp
                     [FieldOffset(213)]
                     public byte IsInline;
 
+                    [FieldOffset(216)]
+                    public global::std.__1.basic_string.Internal FileName;
+
                     [FieldOffset(228)]
                     public byte IsSystemHeader;
 
@@ -11428,6 +11725,9 @@ namespace CppSharp
                 [StructLayout(LayoutKind.Explicit, Size = 40)]
                 public partial struct Internal
                 {
+                    [FieldOffset(0)]
+                    public global::std.__1.basic_string.Internal FileName;
+
                     [FieldOffset(12)]
                     public global::CppSharp.Parser.AST.ArchType ArchType;
 
@@ -12448,6 +12748,9 @@ namespace CppSharp
                     [StructLayout(LayoutKind.Explicit, Size = 12)]
                     public partial struct Internal
                     {
+                        [FieldOffset(0)]
+                        public global::std.__1.basic_string.Internal Text;
+
                         [SuppressUnmanagedCodeSecurity]
                         [DllImport("CppSharp.CppParser.dll", CallingConvention = global::System.Runtime.InteropServices.CallingConvention.Cdecl,
                             EntryPoint="_ZN8CppSharp9CppParser3AST19BlockCommandComment8ArgumentC2Ev")]
@@ -12981,6 +13284,9 @@ namespace CppSharp
                     [FieldOffset(0)]
                     public global::CppSharp.Parser.AST.CommentKind Kind;
 
+                    [FieldOffset(4)]
+                    public global::std.__1.basic_string.Internal Text;
+
                     [SuppressUnmanagedCodeSecurity]
                     [DllImport("CppSharp.CppParser.dll", CallingConvention = global::System.Runtime.InteropServices.CallingConvention.Cdecl,
                         EntryPoint="_ZN8CppSharp9CppParser3AST24VerbatimBlockLineCommentC2Ev")]
@@ -13248,6 +13554,9 @@ namespace CppSharp
                     [FieldOffset(8)]
                     public global::System.IntPtr ParagraphComment;
 
+                    [FieldOffset(24)]
+                    public global::std.__1.basic_string.Internal Text;
+
                     [SuppressUnmanagedCodeSecurity]
                     [DllImport("CppSharp.CppParser.dll", CallingConvention = global::System.Runtime.InteropServices.CallingConvention.Cdecl,
                         EntryPoint="_ZN8CppSharp9CppParser3AST19VerbatimLineCommentC2Ev")]
@@ -13420,6 +13729,9 @@ namespace CppSharp
                     [StructLayout(LayoutKind.Explicit, Size = 12)]
                     public partial struct Internal
                     {
+                        [FieldOffset(0)]
+                        public global::std.__1.basic_string.Internal Text;
+
                         [SuppressUnmanagedCodeSecurity]
                         [DllImport("CppSharp.CppParser.dll", CallingConvention = global::System.Runtime.InteropServices.CallingConvention.Cdecl,
                             EntryPoint="_ZN8CppSharp9CppParser3AST20InlineCommandComment8ArgumentC2Ev")]
@@ -13754,6 +14066,9 @@ namespace CppSharp
                     [FieldOffset(4)]
                     public byte HasTrailingNewline;
 
+                    [FieldOffset(8)]
+                    public global::std.__1.basic_string.Internal TagName;
+
                     [SuppressUnmanagedCodeSecurity]
                     [DllImport("CppSharp.CppParser.dll", CallingConvention = global::System.Runtime.InteropServices.CallingConvention.Cdecl,
                         EntryPoint="_ZN8CppSharp9CppParser3AST19HTMLStartTagCommentC2Ev")]
@@ -13805,6 +14120,12 @@ namespace CppSharp
                     [StructLayout(LayoutKind.Explicit, Size = 24)]
                     public partial struct Internal
                     {
+                        [FieldOffset(0)]
+                        public global::std.__1.basic_string.Internal Name;
+
+                        [FieldOffset(12)]
+                        public global::std.__1.basic_string.Internal Value;
+
                         [SuppressUnmanagedCodeSecurity]
                         [DllImport("CppSharp.CppParser.dll", CallingConvention = global::System.Runtime.InteropServices.CallingConvention.Cdecl,
                             EntryPoint="_ZN8CppSharp9CppParser3AST19HTMLStartTagComment9AttributeC2Ev")]
@@ -14066,6 +14387,9 @@ namespace CppSharp
                     [FieldOffset(4)]
                     public byte HasTrailingNewline;
 
+                    [FieldOffset(8)]
+                    public global::std.__1.basic_string.Internal TagName;
+
                     [SuppressUnmanagedCodeSecurity]
                     [DllImport("CppSharp.CppParser.dll", CallingConvention = global::System.Runtime.InteropServices.CallingConvention.Cdecl,
                         EntryPoint="_ZN8CppSharp9CppParser3AST17HTMLEndTagCommentC2Ev")]
@@ -14183,6 +14507,9 @@ namespace CppSharp
                     [FieldOffset(4)]
                     public byte HasTrailingNewline;
 
+                    [FieldOffset(8)]
+                    public global::std.__1.basic_string.Internal Text;
+
                     [SuppressUnmanagedCodeSecurity]
                     [DllImport("CppSharp.CppParser.dll", CallingConvention = global::System.Runtime.InteropServices.CallingConvention.Cdecl,
                         EntryPoint="_ZN8CppSharp9CppParser3AST11TextCommentC2Ev")]
@@ -14297,6 +14624,12 @@ namespace CppSharp
                     [FieldOffset(0)]
                     public global::CppSharp.Parser.AST.RawCommentKind Kind;
 
+                    [FieldOffset(4)]
+                    public global::std.__1.basic_string.Internal Text;
+
+                    [FieldOffset(16)]
+                    public global::std.__1.basic_string.Internal BriefText;
+
                     [FieldOffset(28)]
                     public global::System.IntPtr FullCommentBlock;
 
@@ -14607,12 +14940,18 @@ namespace CppSharp
             [StructLayout(LayoutKind.Explicit, Size = 132)]
             public partial struct Internal
             {
+                [FieldOffset(12)]
+                public global::std.__1.basic_string.Internal LibraryFile;
+
                 [FieldOffset(96)]
                 public global::System.IntPtr ASTContext;
 
                 [FieldOffset(100)]
                 public int ToolSetToUse;
 
+                [FieldOffset(104)]
+                public global::std.__1.basic_string.Internal TargetTriple;
+
                 [FieldOffset(116)]
                 public global::CppSharp.Parser.AST.CppAbi Abi;
 
@@ -15236,6 +15575,12 @@ namespace CppSharp
             [StructLayout(LayoutKind.Explicit, Size = 36)]
             public partial struct Internal
             {
+                [FieldOffset(0)]
+                public global::std.__1.basic_string.Internal FileName;
+
+                [FieldOffset(12)]
+                public global::std.__1.basic_string.Internal Message;
+
                 [FieldOffset(24)]
                 public global::CppSharp.Parser.ParserDiagnosticLevel Level;
 
@@ -15785,6 +16130,9 @@ namespace CppSharp
             [StructLayout(LayoutKind.Explicit, Size = 164)]
             public partial struct Internal
             {
+                [FieldOffset(0)]
+                public global::std.__1.basic_string.Internal ABI;
+
                 [FieldOffset(12)]
                 public global::CppSharp.Parser.ParserIntType Char16Type;
 
diff --git a/src/CppParser/Bindings/CSharp/i686-pc-win32-msvc/CppSharp.CppParser.cs b/src/CppParser/Bindings/CSharp/i686-pc-win32-msvc/CppSharp.CppParser.cs
index b0cc2fdb..bc5ce6de 100644
--- a/src/CppParser/Bindings/CSharp/i686-pc-win32-msvc/CppSharp.CppParser.cs
+++ b/src/CppParser/Bindings/CSharp/i686-pc-win32-msvc/CppSharp.CppParser.cs
@@ -3179,6 +3179,9 @@ namespace CppSharp
                     [FieldOffset(0)]
                     public uint Offset;
 
+                    [FieldOffset(4)]
+                    public global::std.basic_string.Internal Name;
+
                     [FieldOffset(28)]
                     public global::CppSharp.Parser.AST.QualifiedType.Internal QualifiedType;
 
@@ -3846,6 +3849,15 @@ namespace CppSharp
                     [FieldOffset(20)]
                     public int LineNumberEnd;
 
+                    [FieldOffset(24)]
+                    public global::std.basic_string.Internal Name;
+
+                    [FieldOffset(48)]
+                    public global::std.basic_string.Internal USR;
+
+                    [FieldOffset(72)]
+                    public global::std.basic_string.Internal DebugText;
+
                     [FieldOffset(96)]
                     public byte IsIncomplete;
 
@@ -4295,6 +4307,15 @@ namespace CppSharp
                     [FieldOffset(20)]
                     public int LineNumberEnd;
 
+                    [FieldOffset(24)]
+                    public global::std.basic_string.Internal Name;
+
+                    [FieldOffset(48)]
+                    public global::std.basic_string.Internal USR;
+
+                    [FieldOffset(72)]
+                    public global::std.basic_string.Internal DebugText;
+
                     [FieldOffset(96)]
                     public byte IsIncomplete;
 
@@ -4913,6 +4934,15 @@ namespace CppSharp
                     [FieldOffset(20)]
                     public int LineNumberEnd;
 
+                    [FieldOffset(24)]
+                    public global::std.basic_string.Internal Name;
+
+                    [FieldOffset(48)]
+                    public global::std.basic_string.Internal USR;
+
+                    [FieldOffset(72)]
+                    public global::std.basic_string.Internal DebugText;
+
                     [FieldOffset(96)]
                     public byte IsIncomplete;
 
@@ -5054,6 +5084,15 @@ namespace CppSharp
                     [FieldOffset(20)]
                     public int LineNumberEnd;
 
+                    [FieldOffset(24)]
+                    public global::std.basic_string.Internal Name;
+
+                    [FieldOffset(48)]
+                    public global::std.basic_string.Internal USR;
+
+                    [FieldOffset(72)]
+                    public global::std.basic_string.Internal DebugText;
+
                     [FieldOffset(96)]
                     public byte IsIncomplete;
 
@@ -5181,6 +5220,15 @@ namespace CppSharp
                     [FieldOffset(20)]
                     public int LineNumberEnd;
 
+                    [FieldOffset(24)]
+                    public global::std.basic_string.Internal Name;
+
+                    [FieldOffset(48)]
+                    public global::std.basic_string.Internal USR;
+
+                    [FieldOffset(72)]
+                    public global::std.basic_string.Internal DebugText;
+
                     [FieldOffset(96)]
                     public byte IsIncomplete;
 
@@ -5329,6 +5377,15 @@ namespace CppSharp
                     [FieldOffset(20)]
                     public int LineNumberEnd;
 
+                    [FieldOffset(24)]
+                    public global::std.basic_string.Internal Name;
+
+                    [FieldOffset(48)]
+                    public global::std.basic_string.Internal USR;
+
+                    [FieldOffset(72)]
+                    public global::std.basic_string.Internal DebugText;
+
                     [FieldOffset(96)]
                     public byte IsIncomplete;
 
@@ -5462,6 +5519,9 @@ namespace CppSharp
                     [FieldOffset(4)]
                     public global::System.IntPtr Decl;
 
+                    [FieldOffset(8)]
+                    public global::std.basic_string.Internal String;
+
                     [SuppressUnmanagedCodeSecurity]
                     [DllImport("CppSharp.CppParser.dll", CallingConvention = global::System.Runtime.InteropServices.CallingConvention.ThisCall,
                         EntryPoint="??0Statement@AST@CppParser@CppSharp@@QAE@ABV0123@@Z")]
@@ -5606,6 +5666,9 @@ namespace CppSharp
                     [FieldOffset(4)]
                     public global::System.IntPtr Decl;
 
+                    [FieldOffset(8)]
+                    public global::std.basic_string.Internal String;
+
                     [SuppressUnmanagedCodeSecurity]
                     [DllImport("CppSharp.CppParser.dll", CallingConvention = global::System.Runtime.InteropServices.CallingConvention.ThisCall,
                         EntryPoint="??0Expression@AST@CppParser@CppSharp@@QAE@ABV0123@@Z")]
@@ -5683,12 +5746,18 @@ namespace CppSharp
                     [FieldOffset(4)]
                     public global::System.IntPtr Decl;
 
+                    [FieldOffset(8)]
+                    public global::std.basic_string.Internal String;
+
                     [FieldOffset(32)]
                     public global::System.IntPtr LHS;
 
                     [FieldOffset(36)]
                     public global::System.IntPtr RHS;
 
+                    [FieldOffset(40)]
+                    public global::std.basic_string.Internal OpcodeStr;
+
                     [SuppressUnmanagedCodeSecurity]
                     [DllImport("CppSharp.CppParser.dll", CallingConvention = global::System.Runtime.InteropServices.CallingConvention.ThisCall,
                         EntryPoint="??0BinaryOperator@AST@CppParser@CppSharp@@QAE@ABV0123@@Z")]
@@ -5828,6 +5897,9 @@ namespace CppSharp
                     [FieldOffset(4)]
                     public global::System.IntPtr Decl;
 
+                    [FieldOffset(8)]
+                    public global::std.basic_string.Internal String;
+
                     [SuppressUnmanagedCodeSecurity]
                     [DllImport("CppSharp.CppParser.dll", CallingConvention = global::System.Runtime.InteropServices.CallingConvention.ThisCall,
                         EntryPoint="??0CallExpr@AST@CppParser@CppSharp@@QAE@ABV0123@@Z")]
@@ -5958,6 +6030,9 @@ namespace CppSharp
                     [FieldOffset(4)]
                     public global::System.IntPtr Decl;
 
+                    [FieldOffset(8)]
+                    public global::std.basic_string.Internal String;
+
                     [SuppressUnmanagedCodeSecurity]
                     [DllImport("CppSharp.CppParser.dll", CallingConvention = global::System.Runtime.InteropServices.CallingConvention.ThisCall,
                         EntryPoint="??0CXXConstructExpr@AST@CppParser@CppSharp@@QAE@ABV0123@@Z")]
@@ -6100,6 +6175,15 @@ namespace CppSharp
                     [FieldOffset(20)]
                     public int LineNumberEnd;
 
+                    [FieldOffset(24)]
+                    public global::std.basic_string.Internal Name;
+
+                    [FieldOffset(48)]
+                    public global::std.basic_string.Internal USR;
+
+                    [FieldOffset(72)]
+                    public global::std.basic_string.Internal DebugText;
+
                     [FieldOffset(96)]
                     public byte IsIncomplete;
 
@@ -6309,6 +6393,15 @@ namespace CppSharp
                     [FieldOffset(20)]
                     public int LineNumberEnd;
 
+                    [FieldOffset(24)]
+                    public global::std.basic_string.Internal Name;
+
+                    [FieldOffset(48)]
+                    public global::std.basic_string.Internal USR;
+
+                    [FieldOffset(72)]
+                    public global::std.basic_string.Internal DebugText;
+
                     [FieldOffset(96)]
                     public byte IsIncomplete;
 
@@ -6354,6 +6447,12 @@ namespace CppSharp
                     [FieldOffset(144)]
                     public global::CppSharp.Parser.AST.CXXOperatorKind OperatorKind;
 
+                    [FieldOffset(148)]
+                    public global::std.basic_string.Internal Mangled;
+
+                    [FieldOffset(172)]
+                    public global::std.basic_string.Internal Signature;
+
                     [FieldOffset(196)]
                     public global::CppSharp.Parser.AST.CallingConvention CallingConvention;
 
@@ -6724,6 +6823,15 @@ namespace CppSharp
                     [FieldOffset(20)]
                     public int LineNumberEnd;
 
+                    [FieldOffset(24)]
+                    public global::std.basic_string.Internal Name;
+
+                    [FieldOffset(48)]
+                    public global::std.basic_string.Internal USR;
+
+                    [FieldOffset(72)]
+                    public global::std.basic_string.Internal DebugText;
+
                     [FieldOffset(96)]
                     public byte IsIncomplete;
 
@@ -6769,6 +6877,12 @@ namespace CppSharp
                     [FieldOffset(144)]
                     public global::CppSharp.Parser.AST.CXXOperatorKind OperatorKind;
 
+                    [FieldOffset(148)]
+                    public global::std.basic_string.Internal Mangled;
+
+                    [FieldOffset(172)]
+                    public global::std.basic_string.Internal Signature;
+
                     [FieldOffset(196)]
                     public global::CppSharp.Parser.AST.CallingConvention CallingConvention;
 
@@ -7041,6 +7155,15 @@ namespace CppSharp
                     [FieldOffset(20)]
                     public int LineNumberEnd;
 
+                    [FieldOffset(24)]
+                    public global::std.basic_string.Internal Name;
+
+                    [FieldOffset(48)]
+                    public global::std.basic_string.Internal USR;
+
+                    [FieldOffset(72)]
+                    public global::std.basic_string.Internal DebugText;
+
                     [FieldOffset(96)]
                     public byte IsIncomplete;
 
@@ -7141,6 +7264,15 @@ namespace CppSharp
                         [FieldOffset(20)]
                         public int LineNumberEnd;
 
+                        [FieldOffset(24)]
+                        public global::std.basic_string.Internal Name;
+
+                        [FieldOffset(48)]
+                        public global::std.basic_string.Internal USR;
+
+                        [FieldOffset(72)]
+                        public global::std.basic_string.Internal DebugText;
+
                         [FieldOffset(96)]
                         public byte IsIncomplete;
 
@@ -7162,6 +7294,9 @@ namespace CppSharp
                         [FieldOffset(124)]
                         public global::System.IntPtr Comment;
 
+                        [FieldOffset(128)]
+                        public global::std.basic_string.Internal Expression;
+
                         [FieldOffset(152)]
                         public ulong Value;
 
@@ -7453,6 +7588,15 @@ namespace CppSharp
                     [FieldOffset(20)]
                     public int LineNumberEnd;
 
+                    [FieldOffset(24)]
+                    public global::std.basic_string.Internal Name;
+
+                    [FieldOffset(48)]
+                    public global::std.basic_string.Internal USR;
+
+                    [FieldOffset(72)]
+                    public global::std.basic_string.Internal DebugText;
+
                     [FieldOffset(96)]
                     public byte IsIncomplete;
 
@@ -7474,6 +7618,9 @@ namespace CppSharp
                     [FieldOffset(124)]
                     public global::System.IntPtr Comment;
 
+                    [FieldOffset(128)]
+                    public global::std.basic_string.Internal Mangled;
+
                     [FieldOffset(152)]
                     public global::CppSharp.Parser.AST.QualifiedType.Internal QualifiedType;
 
@@ -7773,6 +7920,15 @@ namespace CppSharp
                     [FieldOffset(20)]
                     public int LineNumberEnd;
 
+                    [FieldOffset(24)]
+                    public global::std.basic_string.Internal Name;
+
+                    [FieldOffset(48)]
+                    public global::std.basic_string.Internal USR;
+
+                    [FieldOffset(72)]
+                    public global::std.basic_string.Internal DebugText;
+
                     [FieldOffset(96)]
                     public byte IsIncomplete;
 
@@ -7966,6 +8122,15 @@ namespace CppSharp
                     [FieldOffset(20)]
                     public int LineNumberEnd;
 
+                    [FieldOffset(24)]
+                    public global::std.basic_string.Internal Name;
+
+                    [FieldOffset(48)]
+                    public global::std.basic_string.Internal USR;
+
+                    [FieldOffset(72)]
+                    public global::std.basic_string.Internal DebugText;
+
                     [FieldOffset(96)]
                     public byte IsIncomplete;
 
@@ -8090,6 +8255,15 @@ namespace CppSharp
                     [FieldOffset(20)]
                     public int LineNumberEnd;
 
+                    [FieldOffset(24)]
+                    public global::std.basic_string.Internal Name;
+
+                    [FieldOffset(48)]
+                    public global::std.basic_string.Internal USR;
+
+                    [FieldOffset(72)]
+                    public global::std.basic_string.Internal DebugText;
+
                     [FieldOffset(96)]
                     public byte IsIncomplete;
 
@@ -8594,6 +8768,15 @@ namespace CppSharp
                     [FieldOffset(20)]
                     public int LineNumberEnd;
 
+                    [FieldOffset(24)]
+                    public global::std.basic_string.Internal Name;
+
+                    [FieldOffset(48)]
+                    public global::std.basic_string.Internal USR;
+
+                    [FieldOffset(72)]
+                    public global::std.basic_string.Internal DebugText;
+
                     [FieldOffset(96)]
                     public byte IsIncomplete;
 
@@ -8807,6 +8990,15 @@ namespace CppSharp
                     [FieldOffset(20)]
                     public int LineNumberEnd;
 
+                    [FieldOffset(24)]
+                    public global::std.basic_string.Internal Name;
+
+                    [FieldOffset(48)]
+                    public global::std.basic_string.Internal USR;
+
+                    [FieldOffset(72)]
+                    public global::std.basic_string.Internal DebugText;
+
                     [FieldOffset(96)]
                     public byte IsIncomplete;
 
@@ -8934,6 +9126,15 @@ namespace CppSharp
                     [FieldOffset(20)]
                     public int LineNumberEnd;
 
+                    [FieldOffset(24)]
+                    public global::std.basic_string.Internal Name;
+
+                    [FieldOffset(48)]
+                    public global::std.basic_string.Internal USR;
+
+                    [FieldOffset(72)]
+                    public global::std.basic_string.Internal DebugText;
+
                     [FieldOffset(96)]
                     public byte IsIncomplete;
 
@@ -9107,6 +9308,15 @@ namespace CppSharp
                     [FieldOffset(20)]
                     public int LineNumberEnd;
 
+                    [FieldOffset(24)]
+                    public global::std.basic_string.Internal Name;
+
+                    [FieldOffset(48)]
+                    public global::std.basic_string.Internal USR;
+
+                    [FieldOffset(72)]
+                    public global::std.basic_string.Internal DebugText;
+
                     [FieldOffset(96)]
                     public byte IsIncomplete;
 
@@ -9282,6 +9492,15 @@ namespace CppSharp
                     [FieldOffset(20)]
                     public int LineNumberEnd;
 
+                    [FieldOffset(24)]
+                    public global::std.basic_string.Internal Name;
+
+                    [FieldOffset(48)]
+                    public global::std.basic_string.Internal USR;
+
+                    [FieldOffset(72)]
+                    public global::std.basic_string.Internal DebugText;
+
                     [FieldOffset(96)]
                     public byte IsIncomplete;
 
@@ -9431,6 +9650,15 @@ namespace CppSharp
                     [FieldOffset(20)]
                     public int LineNumberEnd;
 
+                    [FieldOffset(24)]
+                    public global::std.basic_string.Internal Name;
+
+                    [FieldOffset(48)]
+                    public global::std.basic_string.Internal USR;
+
+                    [FieldOffset(72)]
+                    public global::std.basic_string.Internal DebugText;
+
                     [FieldOffset(96)]
                     public byte IsIncomplete;
 
@@ -9633,6 +9861,15 @@ namespace CppSharp
                     [FieldOffset(20)]
                     public int LineNumberEnd;
 
+                    [FieldOffset(24)]
+                    public global::std.basic_string.Internal Name;
+
+                    [FieldOffset(48)]
+                    public global::std.basic_string.Internal USR;
+
+                    [FieldOffset(72)]
+                    public global::std.basic_string.Internal DebugText;
+
                     [FieldOffset(96)]
                     public byte IsIncomplete;
 
@@ -9813,6 +10050,15 @@ namespace CppSharp
                     [FieldOffset(20)]
                     public int LineNumberEnd;
 
+                    [FieldOffset(24)]
+                    public global::std.basic_string.Internal Name;
+
+                    [FieldOffset(48)]
+                    public global::std.basic_string.Internal USR;
+
+                    [FieldOffset(72)]
+                    public global::std.basic_string.Internal DebugText;
+
                     [FieldOffset(96)]
                     public byte IsIncomplete;
 
@@ -10056,6 +10302,15 @@ namespace CppSharp
                     [FieldOffset(20)]
                     public int LineNumberEnd;
 
+                    [FieldOffset(24)]
+                    public global::std.basic_string.Internal Name;
+
+                    [FieldOffset(48)]
+                    public global::std.basic_string.Internal USR;
+
+                    [FieldOffset(72)]
+                    public global::std.basic_string.Internal DebugText;
+
                     [FieldOffset(96)]
                     public byte IsIncomplete;
 
@@ -10219,6 +10474,15 @@ namespace CppSharp
                     [FieldOffset(20)]
                     public int LineNumberEnd;
 
+                    [FieldOffset(24)]
+                    public global::std.basic_string.Internal Name;
+
+                    [FieldOffset(48)]
+                    public global::std.basic_string.Internal USR;
+
+                    [FieldOffset(72)]
+                    public global::std.basic_string.Internal DebugText;
+
                     [FieldOffset(96)]
                     public byte IsIncomplete;
 
@@ -10600,6 +10864,15 @@ namespace CppSharp
                     [FieldOffset(20)]
                     public int LineNumberEnd;
 
+                    [FieldOffset(24)]
+                    public global::std.basic_string.Internal Name;
+
+                    [FieldOffset(48)]
+                    public global::std.basic_string.Internal USR;
+
+                    [FieldOffset(72)]
+                    public global::std.basic_string.Internal DebugText;
+
                     [FieldOffset(96)]
                     public byte IsIncomplete;
 
@@ -10867,6 +11140,12 @@ namespace CppSharp
                     [FieldOffset(8)]
                     public global::CppSharp.Parser.AST.DeclarationKind Kind;
 
+                    [FieldOffset(12)]
+                    public global::std.basic_string.Internal Name;
+
+                    [FieldOffset(36)]
+                    public global::std.basic_string.Internal Expression;
+
                     [FieldOffset(60)]
                     public int LineNumberStart;
 
@@ -11045,6 +11324,12 @@ namespace CppSharp
                     [FieldOffset(8)]
                     public global::CppSharp.Parser.AST.DeclarationKind Kind;
 
+                    [FieldOffset(12)]
+                    public global::std.basic_string.Internal Name;
+
+                    [FieldOffset(36)]
+                    public global::std.basic_string.Internal Text;
+
                     [FieldOffset(60)]
                     public global::System.IntPtr Definition;
 
@@ -11221,6 +11506,15 @@ namespace CppSharp
                     [FieldOffset(20)]
                     public int LineNumberEnd;
 
+                    [FieldOffset(24)]
+                    public global::std.basic_string.Internal Name;
+
+                    [FieldOffset(48)]
+                    public global::std.basic_string.Internal USR;
+
+                    [FieldOffset(72)]
+                    public global::std.basic_string.Internal DebugText;
+
                     [FieldOffset(96)]
                     public byte IsIncomplete;
 
@@ -11248,6 +11542,9 @@ namespace CppSharp
                     [FieldOffset(248)]
                     public byte IsInline;
 
+                    [FieldOffset(252)]
+                    public global::std.basic_string.Internal FileName;
+
                     [FieldOffset(276)]
                     public byte IsSystemHeader;
 
@@ -11428,6 +11725,9 @@ namespace CppSharp
                 [StructLayout(LayoutKind.Explicit, Size = 52)]
                 public partial struct Internal
                 {
+                    [FieldOffset(0)]
+                    public global::std.basic_string.Internal FileName;
+
                     [FieldOffset(24)]
                     public global::CppSharp.Parser.AST.ArchType ArchType;
 
@@ -12448,6 +12748,9 @@ namespace CppSharp
                     [StructLayout(LayoutKind.Explicit, Size = 24)]
                     public partial struct Internal
                     {
+                        [FieldOffset(0)]
+                        public global::std.basic_string.Internal Text;
+
                         [SuppressUnmanagedCodeSecurity]
                         [DllImport("CppSharp.CppParser.dll", CallingConvention = global::System.Runtime.InteropServices.CallingConvention.ThisCall,
                             EntryPoint="??0Argument@BlockCommandComment@AST@CppParser@CppSharp@@QAE@XZ")]
@@ -12981,6 +13284,9 @@ namespace CppSharp
                     [FieldOffset(0)]
                     public global::CppSharp.Parser.AST.CommentKind Kind;
 
+                    [FieldOffset(4)]
+                    public global::std.basic_string.Internal Text;
+
                     [SuppressUnmanagedCodeSecurity]
                     [DllImport("CppSharp.CppParser.dll", CallingConvention = global::System.Runtime.InteropServices.CallingConvention.ThisCall,
                         EntryPoint="??0VerbatimBlockLineComment@AST@CppParser@CppSharp@@QAE@XZ")]
@@ -13248,6 +13554,9 @@ namespace CppSharp
                     [FieldOffset(8)]
                     public global::System.IntPtr ParagraphComment;
 
+                    [FieldOffset(24)]
+                    public global::std.basic_string.Internal Text;
+
                     [SuppressUnmanagedCodeSecurity]
                     [DllImport("CppSharp.CppParser.dll", CallingConvention = global::System.Runtime.InteropServices.CallingConvention.ThisCall,
                         EntryPoint="??0VerbatimLineComment@AST@CppParser@CppSharp@@QAE@XZ")]
@@ -13420,6 +13729,9 @@ namespace CppSharp
                     [StructLayout(LayoutKind.Explicit, Size = 24)]
                     public partial struct Internal
                     {
+                        [FieldOffset(0)]
+                        public global::std.basic_string.Internal Text;
+
                         [SuppressUnmanagedCodeSecurity]
                         [DllImport("CppSharp.CppParser.dll", CallingConvention = global::System.Runtime.InteropServices.CallingConvention.ThisCall,
                             EntryPoint="??0Argument@InlineCommandComment@AST@CppParser@CppSharp@@QAE@XZ")]
@@ -13754,6 +14066,9 @@ namespace CppSharp
                     [FieldOffset(4)]
                     public byte HasTrailingNewline;
 
+                    [FieldOffset(8)]
+                    public global::std.basic_string.Internal TagName;
+
                     [SuppressUnmanagedCodeSecurity]
                     [DllImport("CppSharp.CppParser.dll", CallingConvention = global::System.Runtime.InteropServices.CallingConvention.ThisCall,
                         EntryPoint="??0HTMLStartTagComment@AST@CppParser@CppSharp@@QAE@XZ")]
@@ -13805,6 +14120,12 @@ namespace CppSharp
                     [StructLayout(LayoutKind.Explicit, Size = 48)]
                     public partial struct Internal
                     {
+                        [FieldOffset(0)]
+                        public global::std.basic_string.Internal Name;
+
+                        [FieldOffset(24)]
+                        public global::std.basic_string.Internal Value;
+
                         [SuppressUnmanagedCodeSecurity]
                         [DllImport("CppSharp.CppParser.dll", CallingConvention = global::System.Runtime.InteropServices.CallingConvention.ThisCall,
                             EntryPoint="??0Attribute@HTMLStartTagComment@AST@CppParser@CppSharp@@QAE@XZ")]
@@ -14066,6 +14387,9 @@ namespace CppSharp
                     [FieldOffset(4)]
                     public byte HasTrailingNewline;
 
+                    [FieldOffset(8)]
+                    public global::std.basic_string.Internal TagName;
+
                     [SuppressUnmanagedCodeSecurity]
                     [DllImport("CppSharp.CppParser.dll", CallingConvention = global::System.Runtime.InteropServices.CallingConvention.ThisCall,
                         EntryPoint="??0HTMLEndTagComment@AST@CppParser@CppSharp@@QAE@XZ")]
@@ -14183,6 +14507,9 @@ namespace CppSharp
                     [FieldOffset(4)]
                     public byte HasTrailingNewline;
 
+                    [FieldOffset(8)]
+                    public global::std.basic_string.Internal Text;
+
                     [SuppressUnmanagedCodeSecurity]
                     [DllImport("CppSharp.CppParser.dll", CallingConvention = global::System.Runtime.InteropServices.CallingConvention.ThisCall,
                         EntryPoint="??0TextComment@AST@CppParser@CppSharp@@QAE@XZ")]
@@ -14297,6 +14624,12 @@ namespace CppSharp
                     [FieldOffset(0)]
                     public global::CppSharp.Parser.AST.RawCommentKind Kind;
 
+                    [FieldOffset(4)]
+                    public global::std.basic_string.Internal Text;
+
+                    [FieldOffset(28)]
+                    public global::std.basic_string.Internal BriefText;
+
                     [FieldOffset(52)]
                     public global::System.IntPtr FullCommentBlock;
 
@@ -14607,12 +14940,18 @@ namespace CppSharp
             [StructLayout(LayoutKind.Explicit, Size = 156)]
             public partial struct Internal
             {
+                [FieldOffset(12)]
+                public global::std.basic_string.Internal LibraryFile;
+
                 [FieldOffset(108)]
                 public global::System.IntPtr ASTContext;
 
                 [FieldOffset(112)]
                 public int ToolSetToUse;
 
+                [FieldOffset(116)]
+                public global::std.basic_string.Internal TargetTriple;
+
                 [FieldOffset(140)]
                 public global::CppSharp.Parser.AST.CppAbi Abi;
 
@@ -15236,6 +15575,12 @@ namespace CppSharp
             [StructLayout(LayoutKind.Explicit, Size = 60)]
             public partial struct Internal
             {
+                [FieldOffset(0)]
+                public global::std.basic_string.Internal FileName;
+
+                [FieldOffset(24)]
+                public global::std.basic_string.Internal Message;
+
                 [FieldOffset(48)]
                 public global::CppSharp.Parser.ParserDiagnosticLevel Level;
 
@@ -15785,6 +16130,9 @@ namespace CppSharp
             [StructLayout(LayoutKind.Explicit, Size = 176)]
             public partial struct Internal
             {
+                [FieldOffset(0)]
+                public global::std.basic_string.Internal ABI;
+
                 [FieldOffset(24)]
                 public global::CppSharp.Parser.ParserIntType Char16Type;
 
diff --git a/src/CppParser/Bindings/CSharp/x86_64-apple-darwin12.4.0/CppSharp.CppParser.cs b/src/CppParser/Bindings/CSharp/x86_64-apple-darwin12.4.0/CppSharp.CppParser.cs
index 3d0870b8..42606594 100644
--- a/src/CppParser/Bindings/CSharp/x86_64-apple-darwin12.4.0/CppSharp.CppParser.cs
+++ b/src/CppParser/Bindings/CSharp/x86_64-apple-darwin12.4.0/CppSharp.CppParser.cs
@@ -3178,6 +3178,9 @@ namespace CppSharp
                     [FieldOffset(0)]
                     public uint Offset;
 
+                    [FieldOffset(8)]
+                    public global::std.__1.basic_string.Internal Name;
+
                     [FieldOffset(32)]
                     public global::CppSharp.Parser.AST.QualifiedType.Internal QualifiedType;
 
@@ -3845,6 +3848,15 @@ namespace CppSharp
                     [FieldOffset(24)]
                     public int LineNumberEnd;
 
+                    [FieldOffset(32)]
+                    public global::std.__1.basic_string.Internal Name;
+
+                    [FieldOffset(56)]
+                    public global::std.__1.basic_string.Internal USR;
+
+                    [FieldOffset(80)]
+                    public global::std.__1.basic_string.Internal DebugText;
+
                     [FieldOffset(104)]
                     public byte IsIncomplete;
 
@@ -4294,6 +4306,15 @@ namespace CppSharp
                     [FieldOffset(24)]
                     public int LineNumberEnd;
 
+                    [FieldOffset(32)]
+                    public global::std.__1.basic_string.Internal Name;
+
+                    [FieldOffset(56)]
+                    public global::std.__1.basic_string.Internal USR;
+
+                    [FieldOffset(80)]
+                    public global::std.__1.basic_string.Internal DebugText;
+
                     [FieldOffset(104)]
                     public byte IsIncomplete;
 
@@ -4912,6 +4933,15 @@ namespace CppSharp
                     [FieldOffset(24)]
                     public int LineNumberEnd;
 
+                    [FieldOffset(32)]
+                    public global::std.__1.basic_string.Internal Name;
+
+                    [FieldOffset(56)]
+                    public global::std.__1.basic_string.Internal USR;
+
+                    [FieldOffset(80)]
+                    public global::std.__1.basic_string.Internal DebugText;
+
                     [FieldOffset(104)]
                     public byte IsIncomplete;
 
@@ -5053,6 +5083,15 @@ namespace CppSharp
                     [FieldOffset(24)]
                     public int LineNumberEnd;
 
+                    [FieldOffset(32)]
+                    public global::std.__1.basic_string.Internal Name;
+
+                    [FieldOffset(56)]
+                    public global::std.__1.basic_string.Internal USR;
+
+                    [FieldOffset(80)]
+                    public global::std.__1.basic_string.Internal DebugText;
+
                     [FieldOffset(104)]
                     public byte IsIncomplete;
 
@@ -5180,6 +5219,15 @@ namespace CppSharp
                     [FieldOffset(24)]
                     public int LineNumberEnd;
 
+                    [FieldOffset(32)]
+                    public global::std.__1.basic_string.Internal Name;
+
+                    [FieldOffset(56)]
+                    public global::std.__1.basic_string.Internal USR;
+
+                    [FieldOffset(80)]
+                    public global::std.__1.basic_string.Internal DebugText;
+
                     [FieldOffset(104)]
                     public byte IsIncomplete;
 
@@ -5328,6 +5376,15 @@ namespace CppSharp
                     [FieldOffset(24)]
                     public int LineNumberEnd;
 
+                    [FieldOffset(32)]
+                    public global::std.__1.basic_string.Internal Name;
+
+                    [FieldOffset(56)]
+                    public global::std.__1.basic_string.Internal USR;
+
+                    [FieldOffset(80)]
+                    public global::std.__1.basic_string.Internal DebugText;
+
                     [FieldOffset(104)]
                     public byte IsIncomplete;
 
@@ -5461,6 +5518,9 @@ namespace CppSharp
                     [FieldOffset(8)]
                     public global::System.IntPtr Decl;
 
+                    [FieldOffset(16)]
+                    public global::std.__1.basic_string.Internal String;
+
                     [SuppressUnmanagedCodeSecurity]
                     [DllImport("CppSharp.CppParser.dll", CallingConvention = global::System.Runtime.InteropServices.CallingConvention.Cdecl,
                         EntryPoint="_ZN8CppSharp9CppParser3AST9StatementC2ERKS2_")]
@@ -5605,6 +5665,9 @@ namespace CppSharp
                     [FieldOffset(8)]
                     public global::System.IntPtr Decl;
 
+                    [FieldOffset(16)]
+                    public global::std.__1.basic_string.Internal String;
+
                     [SuppressUnmanagedCodeSecurity]
                     [DllImport("CppSharp.CppParser.dll", CallingConvention = global::System.Runtime.InteropServices.CallingConvention.Cdecl,
                         EntryPoint="_ZN8CppSharp9CppParser3AST10ExpressionC2ERKS2_")]
@@ -5682,12 +5745,18 @@ namespace CppSharp
                     [FieldOffset(8)]
                     public global::System.IntPtr Decl;
 
+                    [FieldOffset(16)]
+                    public global::std.__1.basic_string.Internal String;
+
                     [FieldOffset(40)]
                     public global::System.IntPtr LHS;
 
                     [FieldOffset(48)]
                     public global::System.IntPtr RHS;
 
+                    [FieldOffset(56)]
+                    public global::std.__1.basic_string.Internal OpcodeStr;
+
                     [SuppressUnmanagedCodeSecurity]
                     [DllImport("CppSharp.CppParser.dll", CallingConvention = global::System.Runtime.InteropServices.CallingConvention.Cdecl,
                         EntryPoint="_ZN8CppSharp9CppParser3AST14BinaryOperatorC2ERKS2_")]
@@ -5827,6 +5896,9 @@ namespace CppSharp
                     [FieldOffset(8)]
                     public global::System.IntPtr Decl;
 
+                    [FieldOffset(16)]
+                    public global::std.__1.basic_string.Internal String;
+
                     [SuppressUnmanagedCodeSecurity]
                     [DllImport("CppSharp.CppParser.dll", CallingConvention = global::System.Runtime.InteropServices.CallingConvention.Cdecl,
                         EntryPoint="_ZN8CppSharp9CppParser3AST8CallExprC2ERKS2_")]
@@ -5957,6 +6029,9 @@ namespace CppSharp
                     [FieldOffset(8)]
                     public global::System.IntPtr Decl;
 
+                    [FieldOffset(16)]
+                    public global::std.__1.basic_string.Internal String;
+
                     [SuppressUnmanagedCodeSecurity]
                     [DllImport("CppSharp.CppParser.dll", CallingConvention = global::System.Runtime.InteropServices.CallingConvention.Cdecl,
                         EntryPoint="_ZN8CppSharp9CppParser3AST16CXXConstructExprC2ERKS2_")]
@@ -6099,6 +6174,15 @@ namespace CppSharp
                     [FieldOffset(24)]
                     public int LineNumberEnd;
 
+                    [FieldOffset(32)]
+                    public global::std.__1.basic_string.Internal Name;
+
+                    [FieldOffset(56)]
+                    public global::std.__1.basic_string.Internal USR;
+
+                    [FieldOffset(80)]
+                    public global::std.__1.basic_string.Internal DebugText;
+
                     [FieldOffset(104)]
                     public byte IsIncomplete;
 
@@ -6308,6 +6392,15 @@ namespace CppSharp
                     [FieldOffset(24)]
                     public int LineNumberEnd;
 
+                    [FieldOffset(32)]
+                    public global::std.__1.basic_string.Internal Name;
+
+                    [FieldOffset(56)]
+                    public global::std.__1.basic_string.Internal USR;
+
+                    [FieldOffset(80)]
+                    public global::std.__1.basic_string.Internal DebugText;
+
                     [FieldOffset(104)]
                     public byte IsIncomplete;
 
@@ -6353,6 +6446,12 @@ namespace CppSharp
                     [FieldOffset(192)]
                     public global::CppSharp.Parser.AST.CXXOperatorKind OperatorKind;
 
+                    [FieldOffset(200)]
+                    public global::std.__1.basic_string.Internal Mangled;
+
+                    [FieldOffset(224)]
+                    public global::std.__1.basic_string.Internal Signature;
+
                     [FieldOffset(248)]
                     public global::CppSharp.Parser.AST.CallingConvention CallingConvention;
 
@@ -6723,6 +6822,15 @@ namespace CppSharp
                     [FieldOffset(24)]
                     public int LineNumberEnd;
 
+                    [FieldOffset(32)]
+                    public global::std.__1.basic_string.Internal Name;
+
+                    [FieldOffset(56)]
+                    public global::std.__1.basic_string.Internal USR;
+
+                    [FieldOffset(80)]
+                    public global::std.__1.basic_string.Internal DebugText;
+
                     [FieldOffset(104)]
                     public byte IsIncomplete;
 
@@ -6768,6 +6876,12 @@ namespace CppSharp
                     [FieldOffset(192)]
                     public global::CppSharp.Parser.AST.CXXOperatorKind OperatorKind;
 
+                    [FieldOffset(200)]
+                    public global::std.__1.basic_string.Internal Mangled;
+
+                    [FieldOffset(224)]
+                    public global::std.__1.basic_string.Internal Signature;
+
                     [FieldOffset(248)]
                     public global::CppSharp.Parser.AST.CallingConvention CallingConvention;
 
@@ -7040,6 +7154,15 @@ namespace CppSharp
                     [FieldOffset(24)]
                     public int LineNumberEnd;
 
+                    [FieldOffset(32)]
+                    public global::std.__1.basic_string.Internal Name;
+
+                    [FieldOffset(56)]
+                    public global::std.__1.basic_string.Internal USR;
+
+                    [FieldOffset(80)]
+                    public global::std.__1.basic_string.Internal DebugText;
+
                     [FieldOffset(104)]
                     public byte IsIncomplete;
 
@@ -7140,6 +7263,15 @@ namespace CppSharp
                         [FieldOffset(24)]
                         public int LineNumberEnd;
 
+                        [FieldOffset(32)]
+                        public global::std.__1.basic_string.Internal Name;
+
+                        [FieldOffset(56)]
+                        public global::std.__1.basic_string.Internal USR;
+
+                        [FieldOffset(80)]
+                        public global::std.__1.basic_string.Internal DebugText;
+
                         [FieldOffset(104)]
                         public byte IsIncomplete;
 
@@ -7161,6 +7293,9 @@ namespace CppSharp
                         [FieldOffset(160)]
                         public global::System.IntPtr Comment;
 
+                        [FieldOffset(168)]
+                        public global::std.__1.basic_string.Internal Expression;
+
                         [FieldOffset(192)]
                         public ulong Value;
 
@@ -7452,6 +7587,15 @@ namespace CppSharp
                     [FieldOffset(24)]
                     public int LineNumberEnd;
 
+                    [FieldOffset(32)]
+                    public global::std.__1.basic_string.Internal Name;
+
+                    [FieldOffset(56)]
+                    public global::std.__1.basic_string.Internal USR;
+
+                    [FieldOffset(80)]
+                    public global::std.__1.basic_string.Internal DebugText;
+
                     [FieldOffset(104)]
                     public byte IsIncomplete;
 
@@ -7473,6 +7617,9 @@ namespace CppSharp
                     [FieldOffset(160)]
                     public global::System.IntPtr Comment;
 
+                    [FieldOffset(168)]
+                    public global::std.__1.basic_string.Internal Mangled;
+
                     [FieldOffset(192)]
                     public global::CppSharp.Parser.AST.QualifiedType.Internal QualifiedType;
 
@@ -7772,6 +7919,15 @@ namespace CppSharp
                     [FieldOffset(24)]
                     public int LineNumberEnd;
 
+                    [FieldOffset(32)]
+                    public global::std.__1.basic_string.Internal Name;
+
+                    [FieldOffset(56)]
+                    public global::std.__1.basic_string.Internal USR;
+
+                    [FieldOffset(80)]
+                    public global::std.__1.basic_string.Internal DebugText;
+
                     [FieldOffset(104)]
                     public byte IsIncomplete;
 
@@ -7965,6 +8121,15 @@ namespace CppSharp
                     [FieldOffset(24)]
                     public int LineNumberEnd;
 
+                    [FieldOffset(32)]
+                    public global::std.__1.basic_string.Internal Name;
+
+                    [FieldOffset(56)]
+                    public global::std.__1.basic_string.Internal USR;
+
+                    [FieldOffset(80)]
+                    public global::std.__1.basic_string.Internal DebugText;
+
                     [FieldOffset(104)]
                     public byte IsIncomplete;
 
@@ -8089,6 +8254,15 @@ namespace CppSharp
                     [FieldOffset(24)]
                     public int LineNumberEnd;
 
+                    [FieldOffset(32)]
+                    public global::std.__1.basic_string.Internal Name;
+
+                    [FieldOffset(56)]
+                    public global::std.__1.basic_string.Internal USR;
+
+                    [FieldOffset(80)]
+                    public global::std.__1.basic_string.Internal DebugText;
+
                     [FieldOffset(104)]
                     public byte IsIncomplete;
 
@@ -8593,6 +8767,15 @@ namespace CppSharp
                     [FieldOffset(24)]
                     public int LineNumberEnd;
 
+                    [FieldOffset(32)]
+                    public global::std.__1.basic_string.Internal Name;
+
+                    [FieldOffset(56)]
+                    public global::std.__1.basic_string.Internal USR;
+
+                    [FieldOffset(80)]
+                    public global::std.__1.basic_string.Internal DebugText;
+
                     [FieldOffset(104)]
                     public byte IsIncomplete;
 
@@ -8806,6 +8989,15 @@ namespace CppSharp
                     [FieldOffset(24)]
                     public int LineNumberEnd;
 
+                    [FieldOffset(32)]
+                    public global::std.__1.basic_string.Internal Name;
+
+                    [FieldOffset(56)]
+                    public global::std.__1.basic_string.Internal USR;
+
+                    [FieldOffset(80)]
+                    public global::std.__1.basic_string.Internal DebugText;
+
                     [FieldOffset(104)]
                     public byte IsIncomplete;
 
@@ -8933,6 +9125,15 @@ namespace CppSharp
                     [FieldOffset(24)]
                     public int LineNumberEnd;
 
+                    [FieldOffset(32)]
+                    public global::std.__1.basic_string.Internal Name;
+
+                    [FieldOffset(56)]
+                    public global::std.__1.basic_string.Internal USR;
+
+                    [FieldOffset(80)]
+                    public global::std.__1.basic_string.Internal DebugText;
+
                     [FieldOffset(104)]
                     public byte IsIncomplete;
 
@@ -9106,6 +9307,15 @@ namespace CppSharp
                     [FieldOffset(24)]
                     public int LineNumberEnd;
 
+                    [FieldOffset(32)]
+                    public global::std.__1.basic_string.Internal Name;
+
+                    [FieldOffset(56)]
+                    public global::std.__1.basic_string.Internal USR;
+
+                    [FieldOffset(80)]
+                    public global::std.__1.basic_string.Internal DebugText;
+
                     [FieldOffset(104)]
                     public byte IsIncomplete;
 
@@ -9281,6 +9491,15 @@ namespace CppSharp
                     [FieldOffset(24)]
                     public int LineNumberEnd;
 
+                    [FieldOffset(32)]
+                    public global::std.__1.basic_string.Internal Name;
+
+                    [FieldOffset(56)]
+                    public global::std.__1.basic_string.Internal USR;
+
+                    [FieldOffset(80)]
+                    public global::std.__1.basic_string.Internal DebugText;
+
                     [FieldOffset(104)]
                     public byte IsIncomplete;
 
@@ -9430,6 +9649,15 @@ namespace CppSharp
                     [FieldOffset(24)]
                     public int LineNumberEnd;
 
+                    [FieldOffset(32)]
+                    public global::std.__1.basic_string.Internal Name;
+
+                    [FieldOffset(56)]
+                    public global::std.__1.basic_string.Internal USR;
+
+                    [FieldOffset(80)]
+                    public global::std.__1.basic_string.Internal DebugText;
+
                     [FieldOffset(104)]
                     public byte IsIncomplete;
 
@@ -9632,6 +9860,15 @@ namespace CppSharp
                     [FieldOffset(24)]
                     public int LineNumberEnd;
 
+                    [FieldOffset(32)]
+                    public global::std.__1.basic_string.Internal Name;
+
+                    [FieldOffset(56)]
+                    public global::std.__1.basic_string.Internal USR;
+
+                    [FieldOffset(80)]
+                    public global::std.__1.basic_string.Internal DebugText;
+
                     [FieldOffset(104)]
                     public byte IsIncomplete;
 
@@ -9812,6 +10049,15 @@ namespace CppSharp
                     [FieldOffset(24)]
                     public int LineNumberEnd;
 
+                    [FieldOffset(32)]
+                    public global::std.__1.basic_string.Internal Name;
+
+                    [FieldOffset(56)]
+                    public global::std.__1.basic_string.Internal USR;
+
+                    [FieldOffset(80)]
+                    public global::std.__1.basic_string.Internal DebugText;
+
                     [FieldOffset(104)]
                     public byte IsIncomplete;
 
@@ -10055,6 +10301,15 @@ namespace CppSharp
                     [FieldOffset(24)]
                     public int LineNumberEnd;
 
+                    [FieldOffset(32)]
+                    public global::std.__1.basic_string.Internal Name;
+
+                    [FieldOffset(56)]
+                    public global::std.__1.basic_string.Internal USR;
+
+                    [FieldOffset(80)]
+                    public global::std.__1.basic_string.Internal DebugText;
+
                     [FieldOffset(104)]
                     public byte IsIncomplete;
 
@@ -10218,6 +10473,15 @@ namespace CppSharp
                     [FieldOffset(24)]
                     public int LineNumberEnd;
 
+                    [FieldOffset(32)]
+                    public global::std.__1.basic_string.Internal Name;
+
+                    [FieldOffset(56)]
+                    public global::std.__1.basic_string.Internal USR;
+
+                    [FieldOffset(80)]
+                    public global::std.__1.basic_string.Internal DebugText;
+
                     [FieldOffset(104)]
                     public byte IsIncomplete;
 
@@ -10599,6 +10863,15 @@ namespace CppSharp
                     [FieldOffset(24)]
                     public int LineNumberEnd;
 
+                    [FieldOffset(32)]
+                    public global::std.__1.basic_string.Internal Name;
+
+                    [FieldOffset(56)]
+                    public global::std.__1.basic_string.Internal USR;
+
+                    [FieldOffset(80)]
+                    public global::std.__1.basic_string.Internal DebugText;
+
                     [FieldOffset(104)]
                     public byte IsIncomplete;
 
@@ -10866,6 +11139,12 @@ namespace CppSharp
                     [FieldOffset(16)]
                     public global::CppSharp.Parser.AST.DeclarationKind Kind;
 
+                    [FieldOffset(24)]
+                    public global::std.__1.basic_string.Internal Name;
+
+                    [FieldOffset(48)]
+                    public global::std.__1.basic_string.Internal Expression;
+
                     [FieldOffset(72)]
                     public int LineNumberStart;
 
@@ -11044,6 +11323,12 @@ namespace CppSharp
                     [FieldOffset(16)]
                     public global::CppSharp.Parser.AST.DeclarationKind Kind;
 
+                    [FieldOffset(24)]
+                    public global::std.__1.basic_string.Internal Name;
+
+                    [FieldOffset(48)]
+                    public global::std.__1.basic_string.Internal Text;
+
                     [FieldOffset(72)]
                     public global::System.IntPtr Definition;
 
@@ -11220,6 +11505,15 @@ namespace CppSharp
                     [FieldOffset(24)]
                     public int LineNumberEnd;
 
+                    [FieldOffset(32)]
+                    public global::std.__1.basic_string.Internal Name;
+
+                    [FieldOffset(56)]
+                    public global::std.__1.basic_string.Internal USR;
+
+                    [FieldOffset(80)]
+                    public global::std.__1.basic_string.Internal DebugText;
+
                     [FieldOffset(104)]
                     public byte IsIncomplete;
 
@@ -11247,6 +11541,9 @@ namespace CppSharp
                     [FieldOffset(409)]
                     public byte IsInline;
 
+                    [FieldOffset(416)]
+                    public global::std.__1.basic_string.Internal FileName;
+
                     [FieldOffset(440)]
                     public byte IsSystemHeader;
 
@@ -11427,6 +11724,9 @@ namespace CppSharp
                 [StructLayout(LayoutKind.Explicit, Size = 80)]
                 public partial struct Internal
                 {
+                    [FieldOffset(0)]
+                    public global::std.__1.basic_string.Internal FileName;
+
                     [FieldOffset(24)]
                     public global::CppSharp.Parser.AST.ArchType ArchType;
 
@@ -12447,6 +12747,9 @@ namespace CppSharp
                     [StructLayout(LayoutKind.Explicit, Size = 24)]
                     public partial struct Internal
                     {
+                        [FieldOffset(0)]
+                        public global::std.__1.basic_string.Internal Text;
+
                         [SuppressUnmanagedCodeSecurity]
                         [DllImport("CppSharp.CppParser.dll", CallingConvention = global::System.Runtime.InteropServices.CallingConvention.Cdecl,
                             EntryPoint="_ZN8CppSharp9CppParser3AST19BlockCommandComment8ArgumentC2Ev")]
@@ -12980,6 +13283,9 @@ namespace CppSharp
                     [FieldOffset(0)]
                     public global::CppSharp.Parser.AST.CommentKind Kind;
 
+                    [FieldOffset(8)]
+                    public global::std.__1.basic_string.Internal Text;
+
                     [SuppressUnmanagedCodeSecurity]
                     [DllImport("CppSharp.CppParser.dll", CallingConvention = global::System.Runtime.InteropServices.CallingConvention.Cdecl,
                         EntryPoint="_ZN8CppSharp9CppParser3AST24VerbatimBlockLineCommentC2Ev")]
@@ -13247,6 +13553,9 @@ namespace CppSharp
                     [FieldOffset(8)]
                     public global::System.IntPtr ParagraphComment;
 
+                    [FieldOffset(40)]
+                    public global::std.__1.basic_string.Internal Text;
+
                     [SuppressUnmanagedCodeSecurity]
                     [DllImport("CppSharp.CppParser.dll", CallingConvention = global::System.Runtime.InteropServices.CallingConvention.Cdecl,
                         EntryPoint="_ZN8CppSharp9CppParser3AST19VerbatimLineCommentC2Ev")]
@@ -13419,6 +13728,9 @@ namespace CppSharp
                     [StructLayout(LayoutKind.Explicit, Size = 24)]
                     public partial struct Internal
                     {
+                        [FieldOffset(0)]
+                        public global::std.__1.basic_string.Internal Text;
+
                         [SuppressUnmanagedCodeSecurity]
                         [DllImport("CppSharp.CppParser.dll", CallingConvention = global::System.Runtime.InteropServices.CallingConvention.Cdecl,
                             EntryPoint="_ZN8CppSharp9CppParser3AST20InlineCommandComment8ArgumentC2Ev")]
@@ -13753,6 +14065,9 @@ namespace CppSharp
                     [FieldOffset(4)]
                     public byte HasTrailingNewline;
 
+                    [FieldOffset(8)]
+                    public global::std.__1.basic_string.Internal TagName;
+
                     [SuppressUnmanagedCodeSecurity]
                     [DllImport("CppSharp.CppParser.dll", CallingConvention = global::System.Runtime.InteropServices.CallingConvention.Cdecl,
                         EntryPoint="_ZN8CppSharp9CppParser3AST19HTMLStartTagCommentC2Ev")]
@@ -13804,6 +14119,12 @@ namespace CppSharp
                     [StructLayout(LayoutKind.Explicit, Size = 48)]
                     public partial struct Internal
                     {
+                        [FieldOffset(0)]
+                        public global::std.__1.basic_string.Internal Name;
+
+                        [FieldOffset(24)]
+                        public global::std.__1.basic_string.Internal Value;
+
                         [SuppressUnmanagedCodeSecurity]
                         [DllImport("CppSharp.CppParser.dll", CallingConvention = global::System.Runtime.InteropServices.CallingConvention.Cdecl,
                             EntryPoint="_ZN8CppSharp9CppParser3AST19HTMLStartTagComment9AttributeC2Ev")]
@@ -14065,6 +14386,9 @@ namespace CppSharp
                     [FieldOffset(4)]
                     public byte HasTrailingNewline;
 
+                    [FieldOffset(8)]
+                    public global::std.__1.basic_string.Internal TagName;
+
                     [SuppressUnmanagedCodeSecurity]
                     [DllImport("CppSharp.CppParser.dll", CallingConvention = global::System.Runtime.InteropServices.CallingConvention.Cdecl,
                         EntryPoint="_ZN8CppSharp9CppParser3AST17HTMLEndTagCommentC2Ev")]
@@ -14182,6 +14506,9 @@ namespace CppSharp
                     [FieldOffset(4)]
                     public byte HasTrailingNewline;
 
+                    [FieldOffset(8)]
+                    public global::std.__1.basic_string.Internal Text;
+
                     [SuppressUnmanagedCodeSecurity]
                     [DllImport("CppSharp.CppParser.dll", CallingConvention = global::System.Runtime.InteropServices.CallingConvention.Cdecl,
                         EntryPoint="_ZN8CppSharp9CppParser3AST11TextCommentC2Ev")]
@@ -14296,6 +14623,12 @@ namespace CppSharp
                     [FieldOffset(0)]
                     public global::CppSharp.Parser.AST.RawCommentKind Kind;
 
+                    [FieldOffset(8)]
+                    public global::std.__1.basic_string.Internal Text;
+
+                    [FieldOffset(32)]
+                    public global::std.__1.basic_string.Internal BriefText;
+
                     [FieldOffset(56)]
                     public global::System.IntPtr FullCommentBlock;
 
@@ -14606,12 +14939,18 @@ namespace CppSharp
             [StructLayout(LayoutKind.Explicit, Size = 256)]
             public partial struct Internal
             {
+                [FieldOffset(24)]
+                public global::std.__1.basic_string.Internal LibraryFile;
+
                 [FieldOffset(192)]
                 public global::System.IntPtr ASTContext;
 
                 [FieldOffset(200)]
                 public int ToolSetToUse;
 
+                [FieldOffset(208)]
+                public global::std.__1.basic_string.Internal TargetTriple;
+
                 [FieldOffset(232)]
                 public global::CppSharp.Parser.AST.CppAbi Abi;
 
@@ -15235,6 +15574,12 @@ namespace CppSharp
             [StructLayout(LayoutKind.Explicit, Size = 64)]
             public partial struct Internal
             {
+                [FieldOffset(0)]
+                public global::std.__1.basic_string.Internal FileName;
+
+                [FieldOffset(24)]
+                public global::std.__1.basic_string.Internal Message;
+
                 [FieldOffset(48)]
                 public global::CppSharp.Parser.ParserDiagnosticLevel Level;
 
@@ -15784,6 +16129,9 @@ namespace CppSharp
             [StructLayout(LayoutKind.Explicit, Size = 176)]
             public partial struct Internal
             {
+                [FieldOffset(0)]
+                public global::std.__1.basic_string.Internal ABI;
+
                 [FieldOffset(24)]
                 public global::CppSharp.Parser.ParserIntType Char16Type;
 
diff --git a/src/CppParser/Bindings/CSharp/x86_64-linux-gnu-cxx11abi/CppSharp.CppParser.cs b/src/CppParser/Bindings/CSharp/x86_64-linux-gnu-cxx11abi/CppSharp.CppParser.cs
index cabceac0..e2ae2e78 100644
--- a/src/CppParser/Bindings/CSharp/x86_64-linux-gnu-cxx11abi/CppSharp.CppParser.cs
+++ b/src/CppParser/Bindings/CSharp/x86_64-linux-gnu-cxx11abi/CppSharp.CppParser.cs
@@ -3172,16 +3172,19 @@ namespace CppSharp
 
             public unsafe partial class LayoutField : IDisposable
             {
-                [StructLayout(LayoutKind.Explicit, Size = 40)]
+                [StructLayout(LayoutKind.Explicit, Size = 64)]
                 public partial struct Internal
                 {
                     [FieldOffset(0)]
                     public uint Offset;
 
-                    [FieldOffset(16)]
+                    [FieldOffset(8)]
+                    public global::std.__cxx11.basic_string.Internal Name;
+
+                    [FieldOffset(40)]
                     public global::CppSharp.Parser.AST.QualifiedType.Internal QualifiedType;
 
-                    [FieldOffset(32)]
+                    [FieldOffset(56)]
                     public global::System.IntPtr FieldPtr;
 
                     [SuppressUnmanagedCodeSecurity]
@@ -3230,7 +3233,7 @@ namespace CppSharp
 
                 private static void* __CopyValue(LayoutField.Internal native)
                 {
-                    var ret = Marshal.AllocHGlobal(40);
+                    var ret = Marshal.AllocHGlobal(64);
                     global::CppSharp.Parser.AST.LayoutField.Internal.cctor_1(ret, new global::System.IntPtr(&native));
                     return ret.ToPointer();
                 }
@@ -3251,7 +3254,7 @@ namespace CppSharp
 
                 public LayoutField()
                 {
-                    __Instance = Marshal.AllocHGlobal(40);
+                    __Instance = Marshal.AllocHGlobal(64);
                     __ownsNativeInstance = true;
                     NativeToManagedMap[__Instance] = this;
                     Internal.ctor_0((__Instance + __PointerAdjustment));
@@ -3259,7 +3262,7 @@ namespace CppSharp
 
                 public LayoutField(global::CppSharp.Parser.AST.LayoutField other)
                 {
-                    __Instance = Marshal.AllocHGlobal(40);
+                    __Instance = Marshal.AllocHGlobal(64);
                     __ownsNativeInstance = true;
                     NativeToManagedMap[__Instance] = this;
                     if (ReferenceEquals(other, null))
@@ -3824,7 +3827,7 @@ namespace CppSharp
 
             public unsafe partial class Declaration : IDisposable
             {
-                [StructLayout(LayoutKind.Explicit, Size = 120)]
+                [StructLayout(LayoutKind.Explicit, Size = 192)]
                 public partial struct Internal
                 {
                     [FieldOffset(0)]
@@ -3845,25 +3848,34 @@ namespace CppSharp
                     [FieldOffset(24)]
                     public int LineNumberEnd;
 
-                    [FieldOffset(56)]
+                    [FieldOffset(32)]
+                    public global::std.__cxx11.basic_string.Internal Name;
+
+                    [FieldOffset(64)]
+                    public global::std.__cxx11.basic_string.Internal USR;
+
+                    [FieldOffset(96)]
+                    public global::std.__cxx11.basic_string.Internal DebugText;
+
+                    [FieldOffset(128)]
                     public byte IsIncomplete;
 
-                    [FieldOffset(57)]
+                    [FieldOffset(129)]
                     public byte IsDependent;
 
-                    [FieldOffset(58)]
+                    [FieldOffset(130)]
                     public byte IsImplicit;
 
-                    [FieldOffset(64)]
+                    [FieldOffset(136)]
                     public global::System.IntPtr CompleteDeclaration;
 
-                    [FieldOffset(72)]
+                    [FieldOffset(144)]
                     public uint DefinitionOrder;
 
-                    [FieldOffset(104)]
+                    [FieldOffset(176)]
                     public global::System.IntPtr OriginalPtr;
 
-                    [FieldOffset(112)]
+                    [FieldOffset(184)]
                     public global::System.IntPtr Comment;
 
                     [SuppressUnmanagedCodeSecurity]
@@ -3952,7 +3964,7 @@ namespace CppSharp
 
                 private static void* __CopyValue(Declaration.Internal native)
                 {
-                    var ret = Marshal.AllocHGlobal(120);
+                    var ret = Marshal.AllocHGlobal(192);
                     global::CppSharp.Parser.AST.Declaration.Internal.cctor_1(ret, new global::System.IntPtr(&native));
                     return ret.ToPointer();
                 }
@@ -3973,7 +3985,7 @@ namespace CppSharp
 
                 public Declaration(global::CppSharp.Parser.AST.DeclarationKind kind)
                 {
-                    __Instance = Marshal.AllocHGlobal(120);
+                    __Instance = Marshal.AllocHGlobal(192);
                     __ownsNativeInstance = true;
                     NativeToManagedMap[__Instance] = this;
                     var __arg0 = kind;
@@ -3982,7 +3994,7 @@ namespace CppSharp
 
                 public Declaration(global::CppSharp.Parser.AST.Declaration _0)
                 {
-                    __Instance = Marshal.AllocHGlobal(120);
+                    __Instance = Marshal.AllocHGlobal(192);
                     __ownsNativeInstance = true;
                     NativeToManagedMap[__Instance] = this;
                     if (ReferenceEquals(_0, null))
@@ -4273,7 +4285,7 @@ namespace CppSharp
 
             public unsafe partial class DeclarationContext : global::CppSharp.Parser.AST.Declaration, IDisposable
             {
-                [StructLayout(LayoutKind.Explicit, Size = 392)]
+                [StructLayout(LayoutKind.Explicit, Size = 464)]
                 public new partial struct Internal
                 {
                     [FieldOffset(0)]
@@ -4294,28 +4306,37 @@ namespace CppSharp
                     [FieldOffset(24)]
                     public int LineNumberEnd;
 
-                    [FieldOffset(56)]
+                    [FieldOffset(32)]
+                    public global::std.__cxx11.basic_string.Internal Name;
+
+                    [FieldOffset(64)]
+                    public global::std.__cxx11.basic_string.Internal USR;
+
+                    [FieldOffset(96)]
+                    public global::std.__cxx11.basic_string.Internal DebugText;
+
+                    [FieldOffset(128)]
                     public byte IsIncomplete;
 
-                    [FieldOffset(57)]
+                    [FieldOffset(129)]
                     public byte IsDependent;
 
-                    [FieldOffset(58)]
+                    [FieldOffset(130)]
                     public byte IsImplicit;
 
-                    [FieldOffset(64)]
+                    [FieldOffset(136)]
                     public global::System.IntPtr CompleteDeclaration;
 
-                    [FieldOffset(72)]
+                    [FieldOffset(144)]
                     public uint DefinitionOrder;
 
-                    [FieldOffset(104)]
+                    [FieldOffset(176)]
                     public global::System.IntPtr OriginalPtr;
 
-                    [FieldOffset(112)]
+                    [FieldOffset(184)]
                     public global::System.IntPtr Comment;
 
-                    [FieldOffset(384)]
+                    [FieldOffset(456)]
                     public byte IsAnonymous;
 
                     [SuppressUnmanagedCodeSecurity]
@@ -4326,7 +4347,7 @@ namespace CppSharp
                     [SuppressUnmanagedCodeSecurity]
                     [DllImport("CppSharp.CppParser.dll", CallingConvention = global::System.Runtime.InteropServices.CallingConvention.Cdecl,
                         EntryPoint="_ZN8CppSharp9CppParser3AST18DeclarationContextC2ERKS2_")]
-                    internal static extern void cctor_1(global::System.IntPtr instance, global::System.IntPtr _0);
+                    internal static extern void cctor_2(global::System.IntPtr instance, global::System.IntPtr _0);
 
                     [SuppressUnmanagedCodeSecurity]
                     [DllImport("CppSharp.CppParser.dll", CallingConvention = global::System.Runtime.InteropServices.CallingConvention.Cdecl,
@@ -4526,8 +4547,8 @@ namespace CppSharp
 
                 private static void* __CopyValue(DeclarationContext.Internal native)
                 {
-                    var ret = Marshal.AllocHGlobal(392);
-                    global::CppSharp.Parser.AST.DeclarationContext.Internal.cctor_1(ret, new global::System.IntPtr(&native));
+                    var ret = Marshal.AllocHGlobal(464);
+                    global::CppSharp.Parser.AST.DeclarationContext.Internal.cctor_2(ret, new global::System.IntPtr(&native));
                     return ret.ToPointer();
                 }
 
@@ -4550,7 +4571,7 @@ namespace CppSharp
                 public DeclarationContext(global::CppSharp.Parser.AST.DeclarationKind kind)
                     : this((void*) null)
                 {
-                    __Instance = Marshal.AllocHGlobal(392);
+                    __Instance = Marshal.AllocHGlobal(464);
                     __ownsNativeInstance = true;
                     NativeToManagedMap[__Instance] = this;
                     var __arg0 = kind;
@@ -4560,13 +4581,13 @@ namespace CppSharp
                 public DeclarationContext(global::CppSharp.Parser.AST.DeclarationContext _0)
                     : this((void*) null)
                 {
-                    __Instance = Marshal.AllocHGlobal(392);
+                    __Instance = Marshal.AllocHGlobal(464);
                     __ownsNativeInstance = true;
                     NativeToManagedMap[__Instance] = this;
                     if (ReferenceEquals(_0, null))
                         throw new global::System.ArgumentNullException("_0", "Cannot be null because it is a C++ reference (&).");
                     var __arg0 = _0.__Instance;
-                    Internal.cctor_1((__Instance + __PointerAdjustment), __arg0);
+                    Internal.cctor_2((__Instance + __PointerAdjustment), __arg0);
                 }
 
                 protected override void Dispose(bool disposing)
@@ -4891,7 +4912,7 @@ namespace CppSharp
 
             public unsafe partial class TypedefNameDecl : global::CppSharp.Parser.AST.Declaration, IDisposable
             {
-                [StructLayout(LayoutKind.Explicit, Size = 136)]
+                [StructLayout(LayoutKind.Explicit, Size = 208)]
                 public new partial struct Internal
                 {
                     [FieldOffset(0)]
@@ -4912,28 +4933,37 @@ namespace CppSharp
                     [FieldOffset(24)]
                     public int LineNumberEnd;
 
-                    [FieldOffset(56)]
+                    [FieldOffset(32)]
+                    public global::std.__cxx11.basic_string.Internal Name;
+
+                    [FieldOffset(64)]
+                    public global::std.__cxx11.basic_string.Internal USR;
+
+                    [FieldOffset(96)]
+                    public global::std.__cxx11.basic_string.Internal DebugText;
+
+                    [FieldOffset(128)]
                     public byte IsIncomplete;
 
-                    [FieldOffset(57)]
+                    [FieldOffset(129)]
                     public byte IsDependent;
 
-                    [FieldOffset(58)]
+                    [FieldOffset(130)]
                     public byte IsImplicit;
 
-                    [FieldOffset(64)]
+                    [FieldOffset(136)]
                     public global::System.IntPtr CompleteDeclaration;
 
-                    [FieldOffset(72)]
+                    [FieldOffset(144)]
                     public uint DefinitionOrder;
 
-                    [FieldOffset(104)]
+                    [FieldOffset(176)]
                     public global::System.IntPtr OriginalPtr;
 
-                    [FieldOffset(112)]
+                    [FieldOffset(184)]
                     public global::System.IntPtr Comment;
 
-                    [FieldOffset(120)]
+                    [FieldOffset(192)]
                     public global::CppSharp.Parser.AST.QualifiedType.Internal QualifiedType;
 
                     [SuppressUnmanagedCodeSecurity]
@@ -4964,7 +4994,7 @@ namespace CppSharp
 
                 private static void* __CopyValue(TypedefNameDecl.Internal native)
                 {
-                    var ret = Marshal.AllocHGlobal(136);
+                    var ret = Marshal.AllocHGlobal(208);
                     global::CppSharp.Parser.AST.TypedefNameDecl.Internal.cctor_1(ret, new global::System.IntPtr(&native));
                     return ret.ToPointer();
                 }
@@ -4988,7 +5018,7 @@ namespace CppSharp
                 public TypedefNameDecl(global::CppSharp.Parser.AST.DeclarationKind kind)
                     : this((void*) null)
                 {
-                    __Instance = Marshal.AllocHGlobal(136);
+                    __Instance = Marshal.AllocHGlobal(208);
                     __ownsNativeInstance = true;
                     NativeToManagedMap[__Instance] = this;
                     var __arg0 = kind;
@@ -4998,7 +5028,7 @@ namespace CppSharp
                 public TypedefNameDecl(global::CppSharp.Parser.AST.TypedefNameDecl _0)
                     : this((void*) null)
                 {
-                    __Instance = Marshal.AllocHGlobal(136);
+                    __Instance = Marshal.AllocHGlobal(208);
                     __ownsNativeInstance = true;
                     NativeToManagedMap[__Instance] = this;
                     if (ReferenceEquals(_0, null))
@@ -5032,7 +5062,7 @@ namespace CppSharp
 
             public unsafe partial class TypedefDecl : global::CppSharp.Parser.AST.TypedefNameDecl, IDisposable
             {
-                [StructLayout(LayoutKind.Explicit, Size = 136)]
+                [StructLayout(LayoutKind.Explicit, Size = 208)]
                 public new partial struct Internal
                 {
                     [FieldOffset(0)]
@@ -5053,28 +5083,37 @@ namespace CppSharp
                     [FieldOffset(24)]
                     public int LineNumberEnd;
 
-                    [FieldOffset(56)]
+                    [FieldOffset(32)]
+                    public global::std.__cxx11.basic_string.Internal Name;
+
+                    [FieldOffset(64)]
+                    public global::std.__cxx11.basic_string.Internal USR;
+
+                    [FieldOffset(96)]
+                    public global::std.__cxx11.basic_string.Internal DebugText;
+
+                    [FieldOffset(128)]
                     public byte IsIncomplete;
 
-                    [FieldOffset(57)]
+                    [FieldOffset(129)]
                     public byte IsDependent;
 
-                    [FieldOffset(58)]
+                    [FieldOffset(130)]
                     public byte IsImplicit;
 
-                    [FieldOffset(64)]
+                    [FieldOffset(136)]
                     public global::System.IntPtr CompleteDeclaration;
 
-                    [FieldOffset(72)]
+                    [FieldOffset(144)]
                     public uint DefinitionOrder;
 
-                    [FieldOffset(104)]
+                    [FieldOffset(176)]
                     public global::System.IntPtr OriginalPtr;
 
-                    [FieldOffset(112)]
+                    [FieldOffset(184)]
                     public global::System.IntPtr Comment;
 
-                    [FieldOffset(120)]
+                    [FieldOffset(192)]
                     public global::CppSharp.Parser.AST.QualifiedType.Internal QualifiedType;
 
                     [SuppressUnmanagedCodeSecurity]
@@ -5105,7 +5144,7 @@ namespace CppSharp
 
                 private static void* __CopyValue(TypedefDecl.Internal native)
                 {
-                    var ret = Marshal.AllocHGlobal(136);
+                    var ret = Marshal.AllocHGlobal(208);
                     global::CppSharp.Parser.AST.TypedefDecl.Internal.cctor_1(ret, new global::System.IntPtr(&native));
                     return ret.ToPointer();
                 }
@@ -5129,7 +5168,7 @@ namespace CppSharp
                 public TypedefDecl()
                     : this((void*) null)
                 {
-                    __Instance = Marshal.AllocHGlobal(136);
+                    __Instance = Marshal.AllocHGlobal(208);
                     __ownsNativeInstance = true;
                     NativeToManagedMap[__Instance] = this;
                     Internal.ctor_0((__Instance + __PointerAdjustment));
@@ -5138,7 +5177,7 @@ namespace CppSharp
                 public TypedefDecl(global::CppSharp.Parser.AST.TypedefDecl _0)
                     : this((void*) null)
                 {
-                    __Instance = Marshal.AllocHGlobal(136);
+                    __Instance = Marshal.AllocHGlobal(208);
                     __ownsNativeInstance = true;
                     NativeToManagedMap[__Instance] = this;
                     if (ReferenceEquals(_0, null))
@@ -5159,7 +5198,7 @@ namespace CppSharp
 
             public unsafe partial class TypeAlias : global::CppSharp.Parser.AST.TypedefNameDecl, IDisposable
             {
-                [StructLayout(LayoutKind.Explicit, Size = 144)]
+                [StructLayout(LayoutKind.Explicit, Size = 216)]
                 public new partial struct Internal
                 {
                     [FieldOffset(0)]
@@ -5180,31 +5219,40 @@ namespace CppSharp
                     [FieldOffset(24)]
                     public int LineNumberEnd;
 
-                    [FieldOffset(56)]
+                    [FieldOffset(32)]
+                    public global::std.__cxx11.basic_string.Internal Name;
+
+                    [FieldOffset(64)]
+                    public global::std.__cxx11.basic_string.Internal USR;
+
+                    [FieldOffset(96)]
+                    public global::std.__cxx11.basic_string.Internal DebugText;
+
+                    [FieldOffset(128)]
                     public byte IsIncomplete;
 
-                    [FieldOffset(57)]
+                    [FieldOffset(129)]
                     public byte IsDependent;
 
-                    [FieldOffset(58)]
+                    [FieldOffset(130)]
                     public byte IsImplicit;
 
-                    [FieldOffset(64)]
+                    [FieldOffset(136)]
                     public global::System.IntPtr CompleteDeclaration;
 
-                    [FieldOffset(72)]
+                    [FieldOffset(144)]
                     public uint DefinitionOrder;
 
-                    [FieldOffset(104)]
+                    [FieldOffset(176)]
                     public global::System.IntPtr OriginalPtr;
 
-                    [FieldOffset(112)]
+                    [FieldOffset(184)]
                     public global::System.IntPtr Comment;
 
-                    [FieldOffset(120)]
+                    [FieldOffset(192)]
                     public global::CppSharp.Parser.AST.QualifiedType.Internal QualifiedType;
 
-                    [FieldOffset(136)]
+                    [FieldOffset(208)]
                     public global::System.IntPtr DescribedAliasTemplate;
 
                     [SuppressUnmanagedCodeSecurity]
@@ -5235,7 +5283,7 @@ namespace CppSharp
 
                 private static void* __CopyValue(TypeAlias.Internal native)
                 {
-                    var ret = Marshal.AllocHGlobal(144);
+                    var ret = Marshal.AllocHGlobal(216);
                     global::CppSharp.Parser.AST.TypeAlias.Internal.cctor_1(ret, new global::System.IntPtr(&native));
                     return ret.ToPointer();
                 }
@@ -5259,7 +5307,7 @@ namespace CppSharp
                 public TypeAlias()
                     : this((void*) null)
                 {
-                    __Instance = Marshal.AllocHGlobal(144);
+                    __Instance = Marshal.AllocHGlobal(216);
                     __ownsNativeInstance = true;
                     NativeToManagedMap[__Instance] = this;
                     Internal.ctor_0((__Instance + __PointerAdjustment));
@@ -5268,7 +5316,7 @@ namespace CppSharp
                 public TypeAlias(global::CppSharp.Parser.AST.TypeAlias _0)
                     : this((void*) null)
                 {
-                    __Instance = Marshal.AllocHGlobal(144);
+                    __Instance = Marshal.AllocHGlobal(216);
                     __ownsNativeInstance = true;
                     NativeToManagedMap[__Instance] = this;
                     if (ReferenceEquals(_0, null))
@@ -5307,7 +5355,7 @@ namespace CppSharp
 
             public unsafe partial class Friend : global::CppSharp.Parser.AST.Declaration, IDisposable
             {
-                [StructLayout(LayoutKind.Explicit, Size = 128)]
+                [StructLayout(LayoutKind.Explicit, Size = 200)]
                 public new partial struct Internal
                 {
                     [FieldOffset(0)]
@@ -5328,28 +5376,37 @@ namespace CppSharp
                     [FieldOffset(24)]
                     public int LineNumberEnd;
 
-                    [FieldOffset(56)]
+                    [FieldOffset(32)]
+                    public global::std.__cxx11.basic_string.Internal Name;
+
+                    [FieldOffset(64)]
+                    public global::std.__cxx11.basic_string.Internal USR;
+
+                    [FieldOffset(96)]
+                    public global::std.__cxx11.basic_string.Internal DebugText;
+
+                    [FieldOffset(128)]
                     public byte IsIncomplete;
 
-                    [FieldOffset(57)]
+                    [FieldOffset(129)]
                     public byte IsDependent;
 
-                    [FieldOffset(58)]
+                    [FieldOffset(130)]
                     public byte IsImplicit;
 
-                    [FieldOffset(64)]
+                    [FieldOffset(136)]
                     public global::System.IntPtr CompleteDeclaration;
 
-                    [FieldOffset(72)]
+                    [FieldOffset(144)]
                     public uint DefinitionOrder;
 
-                    [FieldOffset(104)]
+                    [FieldOffset(176)]
                     public global::System.IntPtr OriginalPtr;
 
-                    [FieldOffset(112)]
+                    [FieldOffset(184)]
                     public global::System.IntPtr Comment;
 
-                    [FieldOffset(120)]
+                    [FieldOffset(192)]
                     public global::System.IntPtr Declaration;
 
                     [SuppressUnmanagedCodeSecurity]
@@ -5380,7 +5437,7 @@ namespace CppSharp
 
                 private static void* __CopyValue(Friend.Internal native)
                 {
-                    var ret = Marshal.AllocHGlobal(128);
+                    var ret = Marshal.AllocHGlobal(200);
                     global::CppSharp.Parser.AST.Friend.Internal.cctor_1(ret, new global::System.IntPtr(&native));
                     return ret.ToPointer();
                 }
@@ -5404,7 +5461,7 @@ namespace CppSharp
                 public Friend()
                     : this((void*) null)
                 {
-                    __Instance = Marshal.AllocHGlobal(128);
+                    __Instance = Marshal.AllocHGlobal(200);
                     __ownsNativeInstance = true;
                     NativeToManagedMap[__Instance] = this;
                     Internal.ctor_0((__Instance + __PointerAdjustment));
@@ -5413,7 +5470,7 @@ namespace CppSharp
                 public Friend(global::CppSharp.Parser.AST.Friend _0)
                     : this((void*) null)
                 {
-                    __Instance = Marshal.AllocHGlobal(128);
+                    __Instance = Marshal.AllocHGlobal(200);
                     __ownsNativeInstance = true;
                     NativeToManagedMap[__Instance] = this;
                     if (ReferenceEquals(_0, null))
@@ -5452,7 +5509,7 @@ namespace CppSharp
 
             public unsafe partial class Statement : IDisposable
             {
-                [StructLayout(LayoutKind.Explicit, Size = 24)]
+                [StructLayout(LayoutKind.Explicit, Size = 48)]
                 public partial struct Internal
                 {
                     [FieldOffset(0)]
@@ -5461,10 +5518,13 @@ namespace CppSharp
                     [FieldOffset(8)]
                     public global::System.IntPtr Decl;
 
+                    [FieldOffset(16)]
+                    public global::std.__cxx11.basic_string.Internal String;
+
                     [SuppressUnmanagedCodeSecurity]
                     [DllImport("CppSharp.CppParser.dll", CallingConvention = global::System.Runtime.InteropServices.CallingConvention.Cdecl,
                         EntryPoint="_ZN8CppSharp9CppParser3AST9StatementC2ERKS2_")]
-                    internal static extern void cctor_1(global::System.IntPtr instance, global::System.IntPtr _0);
+                    internal static extern void cctor_2(global::System.IntPtr instance, global::System.IntPtr _0);
 
                     [SuppressUnmanagedCodeSecurity]
                     [DllImport("CppSharp.CppParser.dll", CallingConvention = global::System.Runtime.InteropServices.CallingConvention.Cdecl,
@@ -5502,8 +5562,8 @@ namespace CppSharp
 
                 private static void* __CopyValue(Statement.Internal native)
                 {
-                    var ret = Marshal.AllocHGlobal(24);
-                    global::CppSharp.Parser.AST.Statement.Internal.cctor_1(ret, new global::System.IntPtr(&native));
+                    var ret = Marshal.AllocHGlobal(48);
+                    global::CppSharp.Parser.AST.Statement.Internal.cctor_2(ret, new global::System.IntPtr(&native));
                     return ret.ToPointer();
                 }
 
@@ -5523,13 +5583,13 @@ namespace CppSharp
 
                 public Statement(global::CppSharp.Parser.AST.Statement _0)
                 {
-                    __Instance = Marshal.AllocHGlobal(24);
+                    __Instance = Marshal.AllocHGlobal(48);
                     __ownsNativeInstance = true;
                     NativeToManagedMap[__Instance] = this;
                     if (ReferenceEquals(_0, null))
                         throw new global::System.ArgumentNullException("_0", "Cannot be null because it is a C++ reference (&).");
                     var __arg0 = _0.__Instance;
-                    Internal.cctor_1((__Instance + __PointerAdjustment), __arg0);
+                    Internal.cctor_2((__Instance + __PointerAdjustment), __arg0);
                 }
 
                 public void Dispose()
@@ -5596,7 +5656,7 @@ namespace CppSharp
 
             public unsafe partial class Expression : global::CppSharp.Parser.AST.Statement, IDisposable
             {
-                [StructLayout(LayoutKind.Explicit, Size = 24)]
+                [StructLayout(LayoutKind.Explicit, Size = 48)]
                 public new partial struct Internal
                 {
                     [FieldOffset(0)]
@@ -5605,6 +5665,9 @@ namespace CppSharp
                     [FieldOffset(8)]
                     public global::System.IntPtr Decl;
 
+                    [FieldOffset(16)]
+                    public global::std.__cxx11.basic_string.Internal String;
+
                     [SuppressUnmanagedCodeSecurity]
                     [DllImport("CppSharp.CppParser.dll", CallingConvention = global::System.Runtime.InteropServices.CallingConvention.Cdecl,
                         EntryPoint="_ZN8CppSharp9CppParser3AST10ExpressionC2ERKS2_")]
@@ -5628,7 +5691,7 @@ namespace CppSharp
 
                 private static void* __CopyValue(Expression.Internal native)
                 {
-                    var ret = Marshal.AllocHGlobal(24);
+                    var ret = Marshal.AllocHGlobal(48);
                     global::CppSharp.Parser.AST.Expression.Internal.cctor_1(ret, new global::System.IntPtr(&native));
                     return ret.ToPointer();
                 }
@@ -5652,7 +5715,7 @@ namespace CppSharp
                 public Expression(global::CppSharp.Parser.AST.Expression _0)
                     : this((void*) null)
                 {
-                    __Instance = Marshal.AllocHGlobal(24);
+                    __Instance = Marshal.AllocHGlobal(48);
                     __ownsNativeInstance = true;
                     NativeToManagedMap[__Instance] = this;
                     if (ReferenceEquals(_0, null))
@@ -5673,7 +5736,7 @@ namespace CppSharp
 
             public unsafe partial class BinaryOperator : global::CppSharp.Parser.AST.Expression, IDisposable
             {
-                [StructLayout(LayoutKind.Explicit, Size = 48)]
+                [StructLayout(LayoutKind.Explicit, Size = 96)]
                 public new partial struct Internal
                 {
                     [FieldOffset(0)]
@@ -5682,12 +5745,18 @@ namespace CppSharp
                     [FieldOffset(8)]
                     public global::System.IntPtr Decl;
 
-                    [FieldOffset(24)]
+                    [FieldOffset(16)]
+                    public global::std.__cxx11.basic_string.Internal String;
+
+                    [FieldOffset(48)]
                     public global::System.IntPtr LHS;
 
-                    [FieldOffset(32)]
+                    [FieldOffset(56)]
                     public global::System.IntPtr RHS;
 
+                    [FieldOffset(64)]
+                    public global::std.__cxx11.basic_string.Internal OpcodeStr;
+
                     [SuppressUnmanagedCodeSecurity]
                     [DllImport("CppSharp.CppParser.dll", CallingConvention = global::System.Runtime.InteropServices.CallingConvention.Cdecl,
                         EntryPoint="_ZN8CppSharp9CppParser3AST14BinaryOperatorC2ERKS2_")]
@@ -5721,7 +5790,7 @@ namespace CppSharp
 
                 private static void* __CopyValue(BinaryOperator.Internal native)
                 {
-                    var ret = Marshal.AllocHGlobal(48);
+                    var ret = Marshal.AllocHGlobal(96);
                     global::CppSharp.Parser.AST.BinaryOperator.Internal.cctor_1(ret, new global::System.IntPtr(&native));
                     return ret.ToPointer();
                 }
@@ -5745,7 +5814,7 @@ namespace CppSharp
                 public BinaryOperator(global::CppSharp.Parser.AST.BinaryOperator _0)
                     : this((void*) null)
                 {
-                    __Instance = Marshal.AllocHGlobal(48);
+                    __Instance = Marshal.AllocHGlobal(96);
                     __ownsNativeInstance = true;
                     NativeToManagedMap[__Instance] = this;
                     if (ReferenceEquals(_0, null))
@@ -5818,7 +5887,7 @@ namespace CppSharp
 
             public unsafe partial class CallExpr : global::CppSharp.Parser.AST.Expression, IDisposable
             {
-                [StructLayout(LayoutKind.Explicit, Size = 48)]
+                [StructLayout(LayoutKind.Explicit, Size = 72)]
                 public new partial struct Internal
                 {
                     [FieldOffset(0)]
@@ -5827,6 +5896,9 @@ namespace CppSharp
                     [FieldOffset(8)]
                     public global::System.IntPtr Decl;
 
+                    [FieldOffset(16)]
+                    public global::std.__cxx11.basic_string.Internal String;
+
                     [SuppressUnmanagedCodeSecurity]
                     [DllImport("CppSharp.CppParser.dll", CallingConvention = global::System.Runtime.InteropServices.CallingConvention.Cdecl,
                         EntryPoint="_ZN8CppSharp9CppParser3AST8CallExprC2ERKS2_")]
@@ -5870,7 +5942,7 @@ namespace CppSharp
 
                 private static void* __CopyValue(CallExpr.Internal native)
                 {
-                    var ret = Marshal.AllocHGlobal(48);
+                    var ret = Marshal.AllocHGlobal(72);
                     global::CppSharp.Parser.AST.CallExpr.Internal.cctor_1(ret, new global::System.IntPtr(&native));
                     return ret.ToPointer();
                 }
@@ -5894,7 +5966,7 @@ namespace CppSharp
                 public CallExpr(global::CppSharp.Parser.AST.CallExpr _0)
                     : this((void*) null)
                 {
-                    __Instance = Marshal.AllocHGlobal(48);
+                    __Instance = Marshal.AllocHGlobal(72);
                     __ownsNativeInstance = true;
                     NativeToManagedMap[__Instance] = this;
                     if (ReferenceEquals(_0, null))
@@ -5948,7 +6020,7 @@ namespace CppSharp
 
             public unsafe partial class CXXConstructExpr : global::CppSharp.Parser.AST.Expression, IDisposable
             {
-                [StructLayout(LayoutKind.Explicit, Size = 48)]
+                [StructLayout(LayoutKind.Explicit, Size = 72)]
                 public new partial struct Internal
                 {
                     [FieldOffset(0)]
@@ -5957,6 +6029,9 @@ namespace CppSharp
                     [FieldOffset(8)]
                     public global::System.IntPtr Decl;
 
+                    [FieldOffset(16)]
+                    public global::std.__cxx11.basic_string.Internal String;
+
                     [SuppressUnmanagedCodeSecurity]
                     [DllImport("CppSharp.CppParser.dll", CallingConvention = global::System.Runtime.InteropServices.CallingConvention.Cdecl,
                         EntryPoint="_ZN8CppSharp9CppParser3AST16CXXConstructExprC2ERKS2_")]
@@ -6000,7 +6075,7 @@ namespace CppSharp
 
                 private static void* __CopyValue(CXXConstructExpr.Internal native)
                 {
-                    var ret = Marshal.AllocHGlobal(48);
+                    var ret = Marshal.AllocHGlobal(72);
                     global::CppSharp.Parser.AST.CXXConstructExpr.Internal.cctor_1(ret, new global::System.IntPtr(&native));
                     return ret.ToPointer();
                 }
@@ -6024,7 +6099,7 @@ namespace CppSharp
                 public CXXConstructExpr(global::CppSharp.Parser.AST.CXXConstructExpr _0)
                     : this((void*) null)
                 {
-                    __Instance = Marshal.AllocHGlobal(48);
+                    __Instance = Marshal.AllocHGlobal(72);
                     __ownsNativeInstance = true;
                     NativeToManagedMap[__Instance] = this;
                     if (ReferenceEquals(_0, null))
@@ -6078,7 +6153,7 @@ namespace CppSharp
 
             public unsafe partial class Parameter : global::CppSharp.Parser.AST.Declaration, IDisposable
             {
-                [StructLayout(LayoutKind.Explicit, Size = 152)]
+                [StructLayout(LayoutKind.Explicit, Size = 224)]
                 public new partial struct Internal
                 {
                     [FieldOffset(0)]
@@ -6099,40 +6174,49 @@ namespace CppSharp
                     [FieldOffset(24)]
                     public int LineNumberEnd;
 
-                    [FieldOffset(56)]
+                    [FieldOffset(32)]
+                    public global::std.__cxx11.basic_string.Internal Name;
+
+                    [FieldOffset(64)]
+                    public global::std.__cxx11.basic_string.Internal USR;
+
+                    [FieldOffset(96)]
+                    public global::std.__cxx11.basic_string.Internal DebugText;
+
+                    [FieldOffset(128)]
                     public byte IsIncomplete;
 
-                    [FieldOffset(57)]
+                    [FieldOffset(129)]
                     public byte IsDependent;
 
-                    [FieldOffset(58)]
+                    [FieldOffset(130)]
                     public byte IsImplicit;
 
-                    [FieldOffset(64)]
+                    [FieldOffset(136)]
                     public global::System.IntPtr CompleteDeclaration;
 
-                    [FieldOffset(72)]
+                    [FieldOffset(144)]
                     public uint DefinitionOrder;
 
-                    [FieldOffset(104)]
+                    [FieldOffset(176)]
                     public global::System.IntPtr OriginalPtr;
 
-                    [FieldOffset(112)]
+                    [FieldOffset(184)]
                     public global::System.IntPtr Comment;
 
-                    [FieldOffset(120)]
+                    [FieldOffset(192)]
                     public global::CppSharp.Parser.AST.QualifiedType.Internal QualifiedType;
 
-                    [FieldOffset(136)]
+                    [FieldOffset(208)]
                     public byte IsIndirect;
 
-                    [FieldOffset(137)]
+                    [FieldOffset(209)]
                     public byte HasDefaultValue;
 
-                    [FieldOffset(140)]
+                    [FieldOffset(212)]
                     public uint Index;
 
-                    [FieldOffset(144)]
+                    [FieldOffset(216)]
                     public global::System.IntPtr DefaultArgument;
 
                     [SuppressUnmanagedCodeSecurity]
@@ -6163,7 +6247,7 @@ namespace CppSharp
 
                 private static void* __CopyValue(Parameter.Internal native)
                 {
-                    var ret = Marshal.AllocHGlobal(152);
+                    var ret = Marshal.AllocHGlobal(224);
                     global::CppSharp.Parser.AST.Parameter.Internal.cctor_1(ret, new global::System.IntPtr(&native));
                     return ret.ToPointer();
                 }
@@ -6187,7 +6271,7 @@ namespace CppSharp
                 public Parameter()
                     : this((void*) null)
                 {
-                    __Instance = Marshal.AllocHGlobal(152);
+                    __Instance = Marshal.AllocHGlobal(224);
                     __ownsNativeInstance = true;
                     NativeToManagedMap[__Instance] = this;
                     Internal.ctor_0((__Instance + __PointerAdjustment));
@@ -6196,7 +6280,7 @@ namespace CppSharp
                 public Parameter(global::CppSharp.Parser.AST.Parameter _0)
                     : this((void*) null)
                 {
-                    __Instance = Marshal.AllocHGlobal(152);
+                    __Instance = Marshal.AllocHGlobal(224);
                     __ownsNativeInstance = true;
                     NativeToManagedMap[__Instance] = this;
                     if (ReferenceEquals(_0, null))
@@ -6287,7 +6371,7 @@ namespace CppSharp
 
             public unsafe partial class Function : global::CppSharp.Parser.AST.Declaration, IDisposable
             {
-                [StructLayout(LayoutKind.Explicit, Size = 216)]
+                [StructLayout(LayoutKind.Explicit, Size = 336)]
                 public new partial struct Internal
                 {
                     [FieldOffset(0)]
@@ -6308,58 +6392,73 @@ namespace CppSharp
                     [FieldOffset(24)]
                     public int LineNumberEnd;
 
-                    [FieldOffset(56)]
+                    [FieldOffset(32)]
+                    public global::std.__cxx11.basic_string.Internal Name;
+
+                    [FieldOffset(64)]
+                    public global::std.__cxx11.basic_string.Internal USR;
+
+                    [FieldOffset(96)]
+                    public global::std.__cxx11.basic_string.Internal DebugText;
+
+                    [FieldOffset(128)]
                     public byte IsIncomplete;
 
-                    [FieldOffset(57)]
+                    [FieldOffset(129)]
                     public byte IsDependent;
 
-                    [FieldOffset(58)]
+                    [FieldOffset(130)]
                     public byte IsImplicit;
 
-                    [FieldOffset(64)]
+                    [FieldOffset(136)]
                     public global::System.IntPtr CompleteDeclaration;
 
-                    [FieldOffset(72)]
+                    [FieldOffset(144)]
                     public uint DefinitionOrder;
 
-                    [FieldOffset(104)]
+                    [FieldOffset(176)]
                     public global::System.IntPtr OriginalPtr;
 
-                    [FieldOffset(112)]
+                    [FieldOffset(184)]
                     public global::System.IntPtr Comment;
 
-                    [FieldOffset(120)]
+                    [FieldOffset(192)]
                     public global::CppSharp.Parser.AST.QualifiedType.Internal ReturnType;
 
-                    [FieldOffset(136)]
+                    [FieldOffset(208)]
                     public byte IsReturnIndirect;
 
-                    [FieldOffset(137)]
+                    [FieldOffset(209)]
                     public byte HasThisReturn;
 
-                    [FieldOffset(138)]
+                    [FieldOffset(210)]
                     public byte IsVariadic;
 
-                    [FieldOffset(139)]
+                    [FieldOffset(211)]
                     public byte IsInline;
 
-                    [FieldOffset(140)]
+                    [FieldOffset(212)]
                     public byte IsPure;
 
-                    [FieldOffset(141)]
+                    [FieldOffset(213)]
                     public byte IsDeleted;
 
-                    [FieldOffset(144)]
+                    [FieldOffset(216)]
                     public global::CppSharp.Parser.AST.CXXOperatorKind OperatorKind;
 
-                    [FieldOffset(168)]
+                    [FieldOffset(224)]
+                    public global::std.__cxx11.basic_string.Internal Mangled;
+
+                    [FieldOffset(256)]
+                    public global::std.__cxx11.basic_string.Internal Signature;
+
+                    [FieldOffset(288)]
                     public global::CppSharp.Parser.AST.CallingConvention CallingConvention;
 
-                    [FieldOffset(200)]
+                    [FieldOffset(320)]
                     public global::System.IntPtr SpecializationInfo;
 
-                    [FieldOffset(208)]
+                    [FieldOffset(328)]
                     public global::System.IntPtr InstantiatedFrom;
 
                     [SuppressUnmanagedCodeSecurity]
@@ -6430,7 +6529,7 @@ namespace CppSharp
 
                 private static void* __CopyValue(Function.Internal native)
                 {
-                    var ret = Marshal.AllocHGlobal(216);
+                    var ret = Marshal.AllocHGlobal(336);
                     global::CppSharp.Parser.AST.Function.Internal.cctor_1(ret, new global::System.IntPtr(&native));
                     return ret.ToPointer();
                 }
@@ -6454,7 +6553,7 @@ namespace CppSharp
                 public Function()
                     : this((void*) null)
                 {
-                    __Instance = Marshal.AllocHGlobal(216);
+                    __Instance = Marshal.AllocHGlobal(336);
                     __ownsNativeInstance = true;
                     NativeToManagedMap[__Instance] = this;
                     Internal.ctor_0((__Instance + __PointerAdjustment));
@@ -6463,7 +6562,7 @@ namespace CppSharp
                 public Function(global::CppSharp.Parser.AST.Function _0)
                     : this((void*) null)
                 {
-                    __Instance = Marshal.AllocHGlobal(216);
+                    __Instance = Marshal.AllocHGlobal(336);
                     __ownsNativeInstance = true;
                     NativeToManagedMap[__Instance] = this;
                     if (ReferenceEquals(_0, null))
@@ -6702,7 +6801,7 @@ namespace CppSharp
 
             public unsafe partial class Method : global::CppSharp.Parser.AST.Function, IDisposable
             {
-                [StructLayout(LayoutKind.Explicit, Size = 248)]
+                [StructLayout(LayoutKind.Explicit, Size = 368)]
                 public new partial struct Internal
                 {
                     [FieldOffset(0)]
@@ -6723,88 +6822,103 @@ namespace CppSharp
                     [FieldOffset(24)]
                     public int LineNumberEnd;
 
-                    [FieldOffset(56)]
+                    [FieldOffset(32)]
+                    public global::std.__cxx11.basic_string.Internal Name;
+
+                    [FieldOffset(64)]
+                    public global::std.__cxx11.basic_string.Internal USR;
+
+                    [FieldOffset(96)]
+                    public global::std.__cxx11.basic_string.Internal DebugText;
+
+                    [FieldOffset(128)]
                     public byte IsIncomplete;
 
-                    [FieldOffset(57)]
+                    [FieldOffset(129)]
                     public byte IsDependent;
 
-                    [FieldOffset(58)]
+                    [FieldOffset(130)]
                     public byte IsImplicit;
 
-                    [FieldOffset(64)]
+                    [FieldOffset(136)]
                     public global::System.IntPtr CompleteDeclaration;
 
-                    [FieldOffset(72)]
+                    [FieldOffset(144)]
                     public uint DefinitionOrder;
 
-                    [FieldOffset(104)]
+                    [FieldOffset(176)]
                     public global::System.IntPtr OriginalPtr;
 
-                    [FieldOffset(112)]
+                    [FieldOffset(184)]
                     public global::System.IntPtr Comment;
 
-                    [FieldOffset(120)]
+                    [FieldOffset(192)]
                     public global::CppSharp.Parser.AST.QualifiedType.Internal ReturnType;
 
-                    [FieldOffset(136)]
+                    [FieldOffset(208)]
                     public byte IsReturnIndirect;
 
-                    [FieldOffset(137)]
+                    [FieldOffset(209)]
                     public byte HasThisReturn;
 
-                    [FieldOffset(138)]
+                    [FieldOffset(210)]
                     public byte IsVariadic;
 
-                    [FieldOffset(139)]
+                    [FieldOffset(211)]
                     public byte IsInline;
 
-                    [FieldOffset(140)]
+                    [FieldOffset(212)]
                     public byte IsPure;
 
-                    [FieldOffset(141)]
+                    [FieldOffset(213)]
                     public byte IsDeleted;
 
-                    [FieldOffset(144)]
+                    [FieldOffset(216)]
                     public global::CppSharp.Parser.AST.CXXOperatorKind OperatorKind;
 
-                    [FieldOffset(168)]
+                    [FieldOffset(224)]
+                    public global::std.__cxx11.basic_string.Internal Mangled;
+
+                    [FieldOffset(256)]
+                    public global::std.__cxx11.basic_string.Internal Signature;
+
+                    [FieldOffset(288)]
                     public global::CppSharp.Parser.AST.CallingConvention CallingConvention;
 
-                    [FieldOffset(200)]
+                    [FieldOffset(320)]
                     public global::System.IntPtr SpecializationInfo;
 
-                    [FieldOffset(208)]
+                    [FieldOffset(328)]
                     public global::System.IntPtr InstantiatedFrom;
 
-                    [FieldOffset(216)]
+                    [FieldOffset(336)]
                     public byte IsVirtual;
 
-                    [FieldOffset(217)]
+                    [FieldOffset(337)]
                     public byte IsStatic;
 
-                    [FieldOffset(218)]
+                    [FieldOffset(338)]
                     public byte IsConst;
 
-                    [FieldOffset(219)]
+                    [FieldOffset(339)]
                     public byte IsExplicit;
 
-                    [FieldOffset(220)]
+                    [FieldOffset(340)]
                     public byte IsOverride;
 
-                    [FieldOffset(224)]
+                    [FieldOffset(344)]
                     public global::CppSharp.Parser.AST.CXXMethodKind MethodKind;
 
-                    [FieldOffset(228)]
+                    [FieldOffset(348)]
                     public byte IsDefaultConstructor;
 
-                    [FieldOffset(229)]
+                    [FieldOffset(349)]
                     public byte IsCopyConstructor;
 
-                    [FieldOffset(230)]
+                    [FieldOffset(350)]
                     public byte IsMoveConstructor;
 
-                    [FieldOffset(232)]
+                    [FieldOffset(352)]
                     public global::CppSharp.Parser.AST.QualifiedType.Internal ConversionType;
 
                     [SuppressUnmanagedCodeSecurity]
@@ -6835,7 +6949,7 @@ namespace CppSharp
 
                 private static void* __CopyValue(Method.Internal native)
                 {
-                    var ret = Marshal.AllocHGlobal(248);
+                    var ret = Marshal.AllocHGlobal(368);
                     global::CppSharp.Parser.AST.Method.Internal.cctor_1(ret, new global::System.IntPtr(&native));
                     return ret.ToPointer();
                 }
@@ -6859,7 +6973,7 @@ namespace CppSharp
                 public Method()
                     : this((void*) null)
                 {
-                    __Instance = Marshal.AllocHGlobal(248);
+                    __Instance = Marshal.AllocHGlobal(368);
                     __ownsNativeInstance = true;
                     NativeToManagedMap[__Instance] = this;
                     Internal.ctor_0((__Instance + __PointerAdjustment));
@@ -6868,7 +6982,7 @@ namespace CppSharp
                 public Method(global::CppSharp.Parser.AST.Method _0)
                     : this((void*) null)
                 {
-                    __Instance = Marshal.AllocHGlobal(248);
+                    __Instance = Marshal.AllocHGlobal(368);
                     __ownsNativeInstance = true;
                     NativeToManagedMap[__Instance] = this;
                     if (ReferenceEquals(_0, null))
@@ -7019,7 +7133,7 @@ namespace CppSharp
 
             public unsafe partial class Enumeration : global::CppSharp.Parser.AST.DeclarationContext, IDisposable
             {
-                [StructLayout(LayoutKind.Explicit, Size = 432)]
+                [StructLayout(LayoutKind.Explicit, Size = 504)]
                 public new partial struct Internal
                 {
                     [FieldOffset(0)]
@@ -7040,37 +7154,46 @@ namespace CppSharp
                     [FieldOffset(24)]
                     public int LineNumberEnd;
 
-                    [FieldOffset(56)]
+                    [FieldOffset(32)]
+                    public global::std.__cxx11.basic_string.Internal Name;
+
+                    [FieldOffset(64)]
+                    public global::std.__cxx11.basic_string.Internal USR;
+
+                    [FieldOffset(96)]
+                    public global::std.__cxx11.basic_string.Internal DebugText;
+
+                    [FieldOffset(128)]
                     public byte IsIncomplete;
 
-                    [FieldOffset(57)]
+                    [FieldOffset(129)]
                     public byte IsDependent;
 
-                    [FieldOffset(58)]
+                    [FieldOffset(130)]
                     public byte IsImplicit;
 
-                    [FieldOffset(64)]
+                    [FieldOffset(136)]
                     public global::System.IntPtr CompleteDeclaration;
 
-                    [FieldOffset(72)]
+                    [FieldOffset(144)]
                     public uint DefinitionOrder;
 
-                    [FieldOffset(104)]
+                    [FieldOffset(176)]
                     public global::System.IntPtr OriginalPtr;
 
-                    [FieldOffset(112)]
+                    [FieldOffset(184)]
                     public global::System.IntPtr Comment;
 
-                    [FieldOffset(384)]
+                    [FieldOffset(456)]
                     public byte IsAnonymous;
 
-                    [FieldOffset(388)]
+                    [FieldOffset(460)]
                     public global::CppSharp.Parser.AST.Enumeration.EnumModifiers Modifiers;
 
-                    [FieldOffset(392)]
+                    [FieldOffset(464)]
                     public global::System.IntPtr Type;
 
-                    [FieldOffset(400)]
+                    [FieldOffset(472)]
                     public global::System.IntPtr BuiltinType;
 
                     [SuppressUnmanagedCodeSecurity]
@@ -7119,7 +7242,7 @@ namespace CppSharp
 
                 public unsafe partial class Item : global::CppSharp.Parser.AST.Declaration, IDisposable
                 {
-                    [StructLayout(LayoutKind.Explicit, Size = 136)]
+                    [StructLayout(LayoutKind.Explicit, Size = 232)]
                     public new partial struct Internal
                     {
                         [FieldOffset(0)]
@@ -7140,28 +7263,40 @@ namespace CppSharp
                         [FieldOffset(24)]
                         public int LineNumberEnd;
 
-                        [FieldOffset(56)]
+                        [FieldOffset(32)]
+                        public global::std.__cxx11.basic_string.Internal Name;
+
+                        [FieldOffset(64)]
+                        public global::std.__cxx11.basic_string.Internal USR;
+
+                        [FieldOffset(96)]
+                        public global::std.__cxx11.basic_string.Internal DebugText;
+
+                        [FieldOffset(128)]
                         public byte IsIncomplete;
 
-                        [FieldOffset(57)]
+                        [FieldOffset(129)]
                         public byte IsDependent;
 
-                        [FieldOffset(58)]
+                        [FieldOffset(130)]
                         public byte IsImplicit;
 
-                        [FieldOffset(64)]
+                        [FieldOffset(136)]
                         public global::System.IntPtr CompleteDeclaration;
 
-                        [FieldOffset(72)]
+                        [FieldOffset(144)]
                         public uint DefinitionOrder;
 
-                        [FieldOffset(104)]
+                        [FieldOffset(176)]
                         public global::System.IntPtr OriginalPtr;
 
-                        [FieldOffset(112)]
+                        [FieldOffset(184)]
                         public global::System.IntPtr Comment;
 
-                        [FieldOffset(128)]
+                        [FieldOffset(192)]
+                        public global::std.__cxx11.basic_string.Internal Expression;
+
+                        [FieldOffset(224)]
                         public ulong Value;
 
                         [SuppressUnmanagedCodeSecurity]
@@ -7202,7 +7337,7 @@ namespace CppSharp
 
                     private static void* __CopyValue(Item.Internal native)
                     {
-                        var ret = Marshal.AllocHGlobal(136);
+                        var ret = Marshal.AllocHGlobal(232);
                         global::CppSharp.Parser.AST.Enumeration.Item.Internal.cctor_1(ret, new global::System.IntPtr(&native));
                         return ret.ToPointer();
                     }
@@ -7226,7 +7361,7 @@ namespace CppSharp
                     public Item()
                         : this((void*) null)
                     {
-                        __Instance = Marshal.AllocHGlobal(136);
+                        __Instance = Marshal.AllocHGlobal(232);
                         __ownsNativeInstance = true;
                         NativeToManagedMap[__Instance] = this;
                         Internal.ctor_0((__Instance + __PointerAdjustment));
@@ -7235,7 +7370,7 @@ namespace CppSharp
                     public Item(global::CppSharp.Parser.AST.Enumeration.Item _0)
                         : this((void*) null)
                     {
-                        __Instance = Marshal.AllocHGlobal(136);
+                        __Instance = Marshal.AllocHGlobal(232);
                         __ownsNativeInstance = true;
                         NativeToManagedMap[__Instance] = this;
                         if (ReferenceEquals(_0, null))
@@ -7295,7 +7430,7 @@ namespace CppSharp
 
                 private static void* __CopyValue(Enumeration.Internal native)
                 {
-                    var ret = Marshal.AllocHGlobal(432);
+                    var ret = Marshal.AllocHGlobal(504);
                     global::CppSharp.Parser.AST.Enumeration.Internal.cctor_1(ret, new global::System.IntPtr(&native));
                     return ret.ToPointer();
                 }
@@ -7319,7 +7454,7 @@ namespace CppSharp
                 public Enumeration()
                     : this((void*) null)
                 {
-                    __Instance = Marshal.AllocHGlobal(432);
+                    __Instance = Marshal.AllocHGlobal(504);
                     __ownsNativeInstance = true;
                     NativeToManagedMap[__Instance] = this;
                     Internal.ctor_0((__Instance + __PointerAdjustment));
@@ -7328,7 +7463,7 @@ namespace CppSharp
                 public Enumeration(global::CppSharp.Parser.AST.Enumeration _0)
                     : this((void*) null)
                 {
-                    __Instance = Marshal.AllocHGlobal(432);
+                    __Instance = Marshal.AllocHGlobal(504);
                     __ownsNativeInstance = true;
                     NativeToManagedMap[__Instance] = this;
                     if (ReferenceEquals(_0, null))
@@ -7431,7 +7566,7 @@ namespace CppSharp
 
             public unsafe partial class Variable : global::CppSharp.Parser.AST.Declaration, IDisposable
             {
-                [StructLayout(LayoutKind.Explicit, Size = 144)]
+                [StructLayout(LayoutKind.Explicit, Size = 240)]
                 public new partial struct Internal
                 {
                     [FieldOffset(0)]
@@ -7452,28 +7587,40 @@ namespace CppSharp
                     [FieldOffset(24)]
                     public int LineNumberEnd;
 
-                    [FieldOffset(56)]
+                    [FieldOffset(32)]
+                    public global::std.__cxx11.basic_string.Internal Name;
+
+                    [FieldOffset(64)]
+                    public global::std.__cxx11.basic_string.Internal USR;
+
+                    [FieldOffset(96)]
+                    public global::std.__cxx11.basic_string.Internal DebugText;
+
+                    [FieldOffset(128)]
                     public byte IsIncomplete;
 
-                    [FieldOffset(57)]
+                    [FieldOffset(129)]
                     public byte IsDependent;
 
-                    [FieldOffset(58)]
+                    [FieldOffset(130)]
                     public byte IsImplicit;
 
-                    [FieldOffset(64)]
+                    [FieldOffset(136)]
                     public global::System.IntPtr CompleteDeclaration;
 
-                    [FieldOffset(72)]
+                    [FieldOffset(144)]
                     public uint DefinitionOrder;
 
-                    [FieldOffset(104)]
+                    [FieldOffset(176)]
                     public global::System.IntPtr OriginalPtr;
 
-                    [FieldOffset(112)]
+                    [FieldOffset(184)]
                     public global::System.IntPtr Comment;
 
-                    [FieldOffset(128)]
+                    [FieldOffset(192)]
+                    public global::std.__cxx11.basic_string.Internal Mangled;
+
+                    [FieldOffset(224)]
                     public global::CppSharp.Parser.AST.QualifiedType.Internal QualifiedType;
 
                     [SuppressUnmanagedCodeSecurity]
@@ -7514,7 +7661,7 @@ namespace CppSharp
 
                 private static void* __CopyValue(Variable.Internal native)
                 {
-                    var ret = Marshal.AllocHGlobal(144);
+                    var ret = Marshal.AllocHGlobal(240);
                     global::CppSharp.Parser.AST.Variable.Internal.cctor_1(ret, new global::System.IntPtr(&native));
                     return ret.ToPointer();
                 }
@@ -7538,7 +7685,7 @@ namespace CppSharp
                 public Variable()
                     : this((void*) null)
                 {
-                    __Instance = Marshal.AllocHGlobal(144);
+                    __Instance = Marshal.AllocHGlobal(240);
                     __ownsNativeInstance = true;
                     NativeToManagedMap[__Instance] = this;
                     Internal.ctor_0((__Instance + __PointerAdjustment));
@@ -7547,7 +7694,7 @@ namespace CppSharp
                 public Variable(global::CppSharp.Parser.AST.Variable _0)
                     : this((void*) null)
                 {
-                    __Instance = Marshal.AllocHGlobal(144);
+                    __Instance = Marshal.AllocHGlobal(240);
                     __ownsNativeInstance = true;
                     NativeToManagedMap[__Instance] = this;
                     if (ReferenceEquals(_0, null))
@@ -7751,7 +7898,7 @@ namespace CppSharp
 
             public unsafe partial class Field : global::CppSharp.Parser.AST.Declaration, IDisposable
             {
-                [StructLayout(LayoutKind.Explicit, Size = 152)]
+                [StructLayout(LayoutKind.Explicit, Size = 224)]
                 public new partial struct Internal
                 {
                     [FieldOffset(0)]
@@ -7772,37 +7919,46 @@ namespace CppSharp
                     [FieldOffset(24)]
                     public int LineNumberEnd;
 
-                    [FieldOffset(56)]
+                    [FieldOffset(32)]
+                    public global::std.__cxx11.basic_string.Internal Name;
+
+                    [FieldOffset(64)]
+                    public global::std.__cxx11.basic_string.Internal USR;
+
+                    [FieldOffset(96)]
+                    public global::std.__cxx11.basic_string.Internal DebugText;
+
+                    [FieldOffset(128)]
                     public byte IsIncomplete;
 
-                    [FieldOffset(57)]
+                    [FieldOffset(129)]
                     public byte IsDependent;
 
-                    [FieldOffset(58)]
+                    [FieldOffset(130)]
                     public byte IsImplicit;
 
-                    [FieldOffset(64)]
+                    [FieldOffset(136)]
                     public global::System.IntPtr CompleteDeclaration;
 
-                    [FieldOffset(72)]
+                    [FieldOffset(144)]
                     public uint DefinitionOrder;
 
-                    [FieldOffset(104)]
+                    [FieldOffset(176)]
                     public global::System.IntPtr OriginalPtr;
 
-                    [FieldOffset(112)]
+                    [FieldOffset(184)]
                     public global::System.IntPtr Comment;
 
-                    [FieldOffset(120)]
+                    [FieldOffset(192)]
                     public global::CppSharp.Parser.AST.QualifiedType.Internal QualifiedType;
 
-                    [FieldOffset(136)]
+                    [FieldOffset(208)]
                     public global::System.IntPtr Class;
 
-                    [FieldOffset(144)]
+                    [FieldOffset(216)]
                     public byte IsBitField;
 
-                    [FieldOffset(148)]
+                    [FieldOffset(220)]
                     public uint BitWidth;
 
                     [SuppressUnmanagedCodeSecurity]
@@ -7833,7 +7989,7 @@ namespace CppSharp
 
                 private static void* __CopyValue(Field.Internal native)
                 {
-                    var ret = Marshal.AllocHGlobal(152);
+                    var ret = Marshal.AllocHGlobal(224);
                     global::CppSharp.Parser.AST.Field.Internal.cctor_1(ret, new global::System.IntPtr(&native));
                     return ret.ToPointer();
                 }
@@ -7857,7 +8013,7 @@ namespace CppSharp
                 public Field()
                     : this((void*) null)
                 {
-                    __Instance = Marshal.AllocHGlobal(152);
+                    __Instance = Marshal.AllocHGlobal(224);
                     __ownsNativeInstance = true;
                     NativeToManagedMap[__Instance] = this;
                     Internal.ctor_0((__Instance + __PointerAdjustment));
@@ -7866,7 +8022,7 @@ namespace CppSharp
                 public Field(global::CppSharp.Parser.AST.Field _0)
                     : this((void*) null)
                 {
-                    __Instance = Marshal.AllocHGlobal(152);
+                    __Instance = Marshal.AllocHGlobal(224);
                     __ownsNativeInstance = true;
                     NativeToManagedMap[__Instance] = this;
                     if (ReferenceEquals(_0, null))
@@ -7944,7 +8100,7 @@ namespace CppSharp
 
             public unsafe partial class AccessSpecifierDecl : global::CppSharp.Parser.AST.Declaration, IDisposable
             {
-                [StructLayout(LayoutKind.Explicit, Size = 120)]
+                [StructLayout(LayoutKind.Explicit, Size = 192)]
                 public new partial struct Internal
                 {
                     [FieldOffset(0)]
@@ -7965,25 +8121,34 @@ namespace CppSharp
                     [FieldOffset(24)]
                     public int LineNumberEnd;
 
-                    [FieldOffset(56)]
+                    [FieldOffset(32)]
+                    public global::std.__cxx11.basic_string.Internal Name;
+
+                    [FieldOffset(64)]
+                    public global::std.__cxx11.basic_string.Internal USR;
+
+                    [FieldOffset(96)]
+                    public global::std.__cxx11.basic_string.Internal DebugText;
+
+                    [FieldOffset(128)]
                     public byte IsIncomplete;
 
-                    [FieldOffset(57)]
+                    [FieldOffset(129)]
                     public byte IsDependent;
 
-                    [FieldOffset(58)]
+                    [FieldOffset(130)]
                     public byte IsImplicit;
 
-                    [FieldOffset(64)]
+                    [FieldOffset(136)]
                     public global::System.IntPtr CompleteDeclaration;
 
-                    [FieldOffset(72)]
+                    [FieldOffset(144)]
                     public uint DefinitionOrder;
 
-                    [FieldOffset(104)]
+                    [FieldOffset(176)]
                     public global::System.IntPtr OriginalPtr;
 
-                    [FieldOffset(112)]
+                    [FieldOffset(184)]
                     public global::System.IntPtr Comment;
 
                     [SuppressUnmanagedCodeSecurity]
@@ -8014,7 +8179,7 @@ namespace CppSharp
 
                 private static void* __CopyValue(AccessSpecifierDecl.Internal native)
                 {
-                    var ret = Marshal.AllocHGlobal(120);
+                    var ret = Marshal.AllocHGlobal(192);
                     global::CppSharp.Parser.AST.AccessSpecifierDecl.Internal.cctor_1(ret, new global::System.IntPtr(&native));
                     return ret.ToPointer();
                 }
@@ -8038,7 +8203,7 @@ namespace CppSharp
                 public AccessSpecifierDecl()
                     : this((void*) null)
                 {
-                    __Instance = Marshal.AllocHGlobal(120);
+                    __Instance = Marshal.AllocHGlobal(192);
                     __ownsNativeInstance = true;
                     NativeToManagedMap[__Instance] = this;
                     Internal.ctor_0((__Instance + __PointerAdjustment));
@@ -8047,7 +8212,7 @@ namespace CppSharp
                 public AccessSpecifierDecl(global::CppSharp.Parser.AST.AccessSpecifierDecl _0)
                     : this((void*) null)
                 {
-                    __Instance = Marshal.AllocHGlobal(120);
+                    __Instance = Marshal.AllocHGlobal(192);
                     __ownsNativeInstance = true;
                     NativeToManagedMap[__Instance] = this;
                     if (ReferenceEquals(_0, null))
@@ -8068,7 +8233,7 @@ namespace CppSharp
 
             public unsafe partial class Class : global::CppSharp.Parser.AST.DeclarationContext, IDisposable
             {
-                [StructLayout(LayoutKind.Explicit, Size = 512)]
+                [StructLayout(LayoutKind.Explicit, Size = 584)]
                 public new partial struct Internal
                 {
                     [FieldOffset(0)]
@@ -8089,58 +8254,67 @@ namespace CppSharp
                     [FieldOffset(24)]
                     public int LineNumberEnd;
 
-                    [FieldOffset(56)]
+                    [FieldOffset(32)]
+                    public global::std.__cxx11.basic_string.Internal Name;
+
+                    [FieldOffset(64)]
+                    public global::std.__cxx11.basic_string.Internal USR;
+
+                    [FieldOffset(96)]
+                    public global::std.__cxx11.basic_string.Internal DebugText;
+
+                    [FieldOffset(128)]
                     public byte IsIncomplete;
 
-                    [FieldOffset(57)]
+                    [FieldOffset(129)]
                     public byte IsDependent;
 
-                    [FieldOffset(58)]
+                    [FieldOffset(130)]
                     public byte IsImplicit;
 
-                    [FieldOffset(64)]
+                    [FieldOffset(136)]
                     public global::System.IntPtr CompleteDeclaration;
 
-                    [FieldOffset(72)]
+                    [FieldOffset(144)]
                     public uint DefinitionOrder;
 
-                    [FieldOffset(104)]
+                    [FieldOffset(176)]
                     public global::System.IntPtr OriginalPtr;
 
-                    [FieldOffset(112)]
+                    [FieldOffset(184)]
                     public global::System.IntPtr Comment;
 
-                    [FieldOffset(384)]
+                    [FieldOffset(456)]
                     public byte IsAnonymous;
 
-                    [FieldOffset(488)]
+                    [FieldOffset(560)]
                     public byte IsPOD;
 
-                    [FieldOffset(489)]
+                    [FieldOffset(561)]
                     public byte IsAbstract;
 
-                    [FieldOffset(490)]
+                    [FieldOffset(562)]
                     public byte IsUnion;
 
-                    [FieldOffset(491)]
+                    [FieldOffset(563)]
                     public byte IsDynamic;
 
-                    [FieldOffset(492)]
+                    [FieldOffset(564)]
                     public byte IsPolymorphic;
 
-                    [FieldOffset(493)]
+                    [FieldOffset(565)]
                     public byte HasNonTrivialDefaultConstructor;
 
-                    [FieldOffset(494)]
+                    [FieldOffset(566)]
                     public byte HasNonTrivialCopyConstructor;
 
-                    [FieldOffset(495)]
+                    [FieldOffset(567)]
                     public byte HasNonTrivialDestructor;
 
-                    [FieldOffset(496)]
+                    [FieldOffset(568)]
                     public byte IsExternCContext;
 
-                    [FieldOffset(504)]
+                    [FieldOffset(576)]
                     public global::System.IntPtr Layout;
 
                     [SuppressUnmanagedCodeSecurity]
@@ -8251,7 +8425,7 @@ namespace CppSharp
 
                 private static void* __CopyValue(Class.Internal native)
                 {
-                    var ret = Marshal.AllocHGlobal(512);
+                    var ret = Marshal.AllocHGlobal(584);
                     global::CppSharp.Parser.AST.Class.Internal.cctor_1(ret, new global::System.IntPtr(&native));
                     return ret.ToPointer();
                 }
@@ -8275,7 +8449,7 @@ namespace CppSharp
                 public Class()
                     : this((void*) null)
                 {
-                    __Instance = Marshal.AllocHGlobal(512);
+                    __Instance = Marshal.AllocHGlobal(584);
                     __ownsNativeInstance = true;
                     NativeToManagedMap[__Instance] = this;
                     Internal.ctor_0((__Instance + __PointerAdjustment));
@@ -8284,7 +8458,7 @@ namespace CppSharp
                 public Class(global::CppSharp.Parser.AST.Class _0)
                     : this((void*) null)
                 {
-                    __Instance = Marshal.AllocHGlobal(512);
+                    __Instance = Marshal.AllocHGlobal(584);
                     __ownsNativeInstance = true;
                     NativeToManagedMap[__Instance] = this;
                     if (ReferenceEquals(_0, null))
@@ -8572,7 +8746,7 @@ namespace CppSharp
 
             public unsafe partial class Template : global::CppSharp.Parser.AST.Declaration, IDisposable
             {
-                [StructLayout(LayoutKind.Explicit, Size = 152)]
+                [StructLayout(LayoutKind.Explicit, Size = 224)]
                 public new partial struct Internal
                 {
                     [FieldOffset(0)]
@@ -8593,28 +8767,37 @@ namespace CppSharp
                     [FieldOffset(24)]
                     public int LineNumberEnd;
 
-                    [FieldOffset(56)]
+                    [FieldOffset(32)]
+                    public global::std.__cxx11.basic_string.Internal Name;
+
+                    [FieldOffset(64)]
+                    public global::std.__cxx11.basic_string.Internal USR;
+
+                    [FieldOffset(96)]
+                    public global::std.__cxx11.basic_string.Internal DebugText;
+
+                    [FieldOffset(128)]
                     public byte IsIncomplete;
 
-                    [FieldOffset(57)]
+                    [FieldOffset(129)]
                     public byte IsDependent;
 
-                    [FieldOffset(58)]
+                    [FieldOffset(130)]
                     public byte IsImplicit;
 
-                    [FieldOffset(64)]
+                    [FieldOffset(136)]
                     public global::System.IntPtr CompleteDeclaration;
 
-                    [FieldOffset(72)]
+                    [FieldOffset(144)]
                     public uint DefinitionOrder;
 
-                    [FieldOffset(104)]
+                    [FieldOffset(176)]
                     public global::System.IntPtr OriginalPtr;
 
-                    [FieldOffset(112)]
+                    [FieldOffset(184)]
                     public global::System.IntPtr Comment;
 
-                    [FieldOffset(120)]
+                    [FieldOffset(192)]
                     public global::System.IntPtr TemplatedDecl;
 
                     [SuppressUnmanagedCodeSecurity]
@@ -8630,7 +8813,7 @@ namespace CppSharp
                     [SuppressUnmanagedCodeSecurity]
                     [DllImport("CppSharp.CppParser.dll", CallingConvention = global::System.Runtime.InteropServices.CallingConvention.Cdecl,
                         EntryPoint="_ZN8CppSharp9CppParser3AST8TemplateC2ERKS2_")]
-                    internal static extern void cctor_2(global::System.IntPtr instance, global::System.IntPtr _0);
+                    internal static extern void cctor_3(global::System.IntPtr instance, global::System.IntPtr _0);
 
                     [SuppressUnmanagedCodeSecurity]
                     [DllImport("CppSharp.CppParser.dll", CallingConvention = global::System.Runtime.InteropServices.CallingConvention.Cdecl,
@@ -8670,8 +8853,8 @@ namespace CppSharp
 
                 private static void* __CopyValue(Template.Internal native)
                 {
-                    var ret = Marshal.AllocHGlobal(152);
-                    global::CppSharp.Parser.AST.Template.Internal.cctor_2(ret, new global::System.IntPtr(&native));
+                    var ret = Marshal.AllocHGlobal(224);
+                    global::CppSharp.Parser.AST.Template.Internal.cctor_3(ret, new global::System.IntPtr(&native));
                     return ret.ToPointer();
                 }
 
@@ -8694,7 +8877,7 @@ namespace CppSharp
                 public Template(global::CppSharp.Parser.AST.DeclarationKind kind)
                     : this((void*) null)
                 {
-                    __Instance = Marshal.AllocHGlobal(152);
+                    __Instance = Marshal.AllocHGlobal(224);
                     __ownsNativeInstance = true;
                     NativeToManagedMap[__Instance] = this;
                     var __arg0 = kind;
@@ -8704,7 +8887,7 @@ namespace CppSharp
                 public Template()
                     : this((void*) null)
                 {
-                    __Instance = Marshal.AllocHGlobal(152);
+                    __Instance = Marshal.AllocHGlobal(224);
                     __ownsNativeInstance = true;
                     NativeToManagedMap[__Instance] = this;
                     Internal.ctor_1((__Instance + __PointerAdjustment));
@@ -8713,13 +8896,13 @@ namespace CppSharp
                 public Template(global::CppSharp.Parser.AST.Template _0)
                     : this((void*) null)
                 {
-                    __Instance = Marshal.AllocHGlobal(152);
+                    __Instance = Marshal.AllocHGlobal(224);
                     __ownsNativeInstance = true;
                     NativeToManagedMap[__Instance] = this;
                     if (ReferenceEquals(_0, null))
                         throw new global::System.ArgumentNullException("_0", "Cannot be null because it is a C++ reference (&).");
                     var __arg0 = _0.__Instance;
-                    Internal.cctor_2((__Instance + __PointerAdjustment), __arg0);
+                    Internal.cctor_3((__Instance + __PointerAdjustment), __arg0);
                 }
 
                 protected override void Dispose(bool disposing)
@@ -8785,7 +8968,7 @@ namespace CppSharp
 
             public unsafe partial class TypeAliasTemplate : global::CppSharp.Parser.AST.Template, IDisposable
             {
-                [StructLayout(LayoutKind.Explicit, Size = 152)]
+                [StructLayout(LayoutKind.Explicit, Size = 224)]
                 public new partial struct Internal
                 {
                     [FieldOffset(0)]
@@ -8806,28 +8989,37 @@ namespace CppSharp
                     [FieldOffset(24)]
                     public int LineNumberEnd;
 
-                    [FieldOffset(56)]
+                    [FieldOffset(32)]
+                    public global::std.__cxx11.basic_string.Internal Name;
+
+                    [FieldOffset(64)]
+                    public global::std.__cxx11.basic_string.Internal USR;
+
+                    [FieldOffset(96)]
+                    public global::std.__cxx11.basic_string.Internal DebugText;
+
+                    [FieldOffset(128)]
                     public byte IsIncomplete;
 
-                    [FieldOffset(57)]
+                    [FieldOffset(129)]
                     public byte IsDependent;
 
-                    [FieldOffset(58)]
+                    [FieldOffset(130)]
                     public byte IsImplicit;
 
-                    [FieldOffset(64)]
+                    [FieldOffset(136)]
                     public global::System.IntPtr CompleteDeclaration;
 
-                    [FieldOffset(72)]
+                    [FieldOffset(144)]
                     public uint DefinitionOrder;
 
-                    [FieldOffset(104)]
+                    [FieldOffset(176)]
                     public global::System.IntPtr OriginalPtr;
 
-                    [FieldOffset(112)]
+                    [FieldOffset(184)]
                     public global::System.IntPtr Comment;
 
-                    [FieldOffset(120)]
+                    [FieldOffset(192)]
                     public global::System.IntPtr TemplatedDecl;
 
                     [SuppressUnmanagedCodeSecurity]
@@ -8858,7 +9050,7 @@ namespace CppSharp
 
                 private static void* __CopyValue(TypeAliasTemplate.Internal native)
                 {
-                    var ret = Marshal.AllocHGlobal(152);
+                    var ret = Marshal.AllocHGlobal(224);
                     global::CppSharp.Parser.AST.TypeAliasTemplate.Internal.cctor_1(ret, new global::System.IntPtr(&native));
                     return ret.ToPointer();
                 }
@@ -8882,7 +9074,7 @@ namespace CppSharp
                 public TypeAliasTemplate()
                     : this((void*) null)
                 {
-                    __Instance = Marshal.AllocHGlobal(152);
+                    __Instance = Marshal.AllocHGlobal(224);
                     __ownsNativeInstance = true;
                     NativeToManagedMap[__Instance] = this;
                     Internal.ctor_0((__Instance + __PointerAdjustment));
@@ -8891,7 +9083,7 @@ namespace CppSharp
                 public TypeAliasTemplate(global::CppSharp.Parser.AST.TypeAliasTemplate _0)
                     : this((void*) null)
                 {
-                    __Instance = Marshal.AllocHGlobal(152);
+                    __Instance = Marshal.AllocHGlobal(224);
                     __ownsNativeInstance = true;
                     NativeToManagedMap[__Instance] = this;
                     if (ReferenceEquals(_0, null))
@@ -8912,7 +9104,7 @@ namespace CppSharp
 
             public unsafe partial class TemplateParameter : global::CppSharp.Parser.AST.Declaration, IDisposable
             {
-                [StructLayout(LayoutKind.Explicit, Size = 136)]
+                [StructLayout(LayoutKind.Explicit, Size = 208)]
                 public new partial struct Internal
                 {
                     [FieldOffset(0)]
@@ -8933,34 +9125,43 @@ namespace CppSharp
                     [FieldOffset(24)]
                     public int LineNumberEnd;
 
-                    [FieldOffset(56)]
+                    [FieldOffset(32)]
+                    public global::std.__cxx11.basic_string.Internal Name;
+
+                    [FieldOffset(64)]
+                    public global::std.__cxx11.basic_string.Internal USR;
+
+                    [FieldOffset(96)]
+                    public global::std.__cxx11.basic_string.Internal DebugText;
+
+                    [FieldOffset(128)]
                     public byte IsIncomplete;
 
-                    [FieldOffset(57)]
+                    [FieldOffset(129)]
                     public byte IsDependent;
 
-                    [FieldOffset(58)]
+                    [FieldOffset(130)]
                     public byte IsImplicit;
 
-                    [FieldOffset(64)]
+                    [FieldOffset(136)]
                     public global::System.IntPtr CompleteDeclaration;
 
-                    [FieldOffset(72)]
+                    [FieldOffset(144)]
                     public uint DefinitionOrder;
 
-                    [FieldOffset(104)]
+                    [FieldOffset(176)]
                     public global::System.IntPtr OriginalPtr;
 
-                    [FieldOffset(112)]
+                    [FieldOffset(184)]
                     public global::System.IntPtr Comment;
 
-                    [FieldOffset(120)]
+                    [FieldOffset(192)]
                     public uint Depth;
 
-                    [FieldOffset(124)]
+                    [FieldOffset(196)]
                     public uint Index;
 
-                    [FieldOffset(128)]
+                    [FieldOffset(200)]
                     public byte IsParameterPack;
 
                     [SuppressUnmanagedCodeSecurity]
@@ -8991,7 +9192,7 @@ namespace CppSharp
 
                 private static void* __CopyValue(TemplateParameter.Internal native)
                 {
-                    var ret = Marshal.AllocHGlobal(136);
+                    var ret = Marshal.AllocHGlobal(208);
                     global::CppSharp.Parser.AST.TemplateParameter.Internal.cctor_1(ret, new global::System.IntPtr(&native));
                     return ret.ToPointer();
                 }
@@ -9015,7 +9216,7 @@ namespace CppSharp
                 public TemplateParameter(global::CppSharp.Parser.AST.DeclarationKind kind)
                     : this((void*) null)
                 {
-                    __Instance = Marshal.AllocHGlobal(136);
+                    __Instance = Marshal.AllocHGlobal(208);
                     __ownsNativeInstance = true;
                     NativeToManagedMap[__Instance] = this;
                     var __arg0 = kind;
@@ -9025,7 +9226,7 @@ namespace CppSharp
                 public TemplateParameter(global::CppSharp.Parser.AST.TemplateParameter _0)
                     : this((void*) null)
                 {
-                    __Instance = Marshal.AllocHGlobal(136);
+                    __Instance = Marshal.AllocHGlobal(208);
                     __ownsNativeInstance = true;
                     NativeToManagedMap[__Instance] = this;
                     if (ReferenceEquals(_0, null))
@@ -9085,7 +9286,7 @@ namespace CppSharp
 
             public unsafe partial class TemplateTemplateParameter : global::CppSharp.Parser.AST.Template, IDisposable
             {
-                [StructLayout(LayoutKind.Explicit, Size = 160)]
+                [StructLayout(LayoutKind.Explicit, Size = 232)]
                 public new partial struct Internal
                 {
                     [FieldOffset(0)]
@@ -9106,37 +9307,46 @@ namespace CppSharp
                     [FieldOffset(24)]
                     public int LineNumberEnd;
 
-                    [FieldOffset(56)]
+                    [FieldOffset(32)]
+                    public global::std.__cxx11.basic_string.Internal Name;
+
+                    [FieldOffset(64)]
+                    public global::std.__cxx11.basic_string.Internal USR;
+
+                    [FieldOffset(96)]
+                    public global::std.__cxx11.basic_string.Internal DebugText;
+
+                    [FieldOffset(128)]
                     public byte IsIncomplete;
 
-                    [FieldOffset(57)]
+                    [FieldOffset(129)]
                     public byte IsDependent;
 
-                    [FieldOffset(58)]
+                    [FieldOffset(130)]
                     public byte IsImplicit;
 
-                    [FieldOffset(64)]
+                    [FieldOffset(136)]
                     public global::System.IntPtr CompleteDeclaration;
 
-                    [FieldOffset(72)]
+                    [FieldOffset(144)]
                     public uint DefinitionOrder;
 
-                    [FieldOffset(104)]
+                    [FieldOffset(176)]
                     public global::System.IntPtr OriginalPtr;
 
-                    [FieldOffset(112)]
+                    [FieldOffset(184)]
                     public global::System.IntPtr Comment;
 
-                    [FieldOffset(120)]
+                    [FieldOffset(192)]
                     public global::System.IntPtr TemplatedDecl;
 
-                    [FieldOffset(152)]
+                    [FieldOffset(224)]
                     public byte IsParameterPack;
 
-                    [FieldOffset(153)]
+                    [FieldOffset(225)]
                     public byte IsPackExpansion;
 
-                    [FieldOffset(154)]
+                    [FieldOffset(226)]
                     public byte IsExpandedParameterPack;
 
                     [SuppressUnmanagedCodeSecurity]
@@ -9167,7 +9377,7 @@ namespace CppSharp
 
                 private static void* __CopyValue(TemplateTemplateParameter.Internal native)
                 {
-                    var ret = Marshal.AllocHGlobal(160);
+                    var ret = Marshal.AllocHGlobal(232);
                     global::CppSharp.Parser.AST.TemplateTemplateParameter.Internal.cctor_1(ret, new global::System.IntPtr(&native));
                     return ret.ToPointer();
                 }
@@ -9191,7 +9401,7 @@ namespace CppSharp
                 public TemplateTemplateParameter()
                     : this((void*) null)
                 {
-                    __Instance = Marshal.AllocHGlobal(160);
+                    __Instance = Marshal.AllocHGlobal(232);
                     __ownsNativeInstance = true;
                     NativeToManagedMap[__Instance] = this;
                     Internal.ctor_0((__Instance + __PointerAdjustment));
@@ -9200,7 +9410,7 @@ namespace CppSharp
                 public TemplateTemplateParameter(global::CppSharp.Parser.AST.TemplateTemplateParameter _0)
                     : this((void*) null)
                 {
-                    __Instance = Marshal.AllocHGlobal(160);
+                    __Instance = Marshal.AllocHGlobal(232);
                     __ownsNativeInstance = true;
                     NativeToManagedMap[__Instance] = this;
                     if (ReferenceEquals(_0, null))
@@ -9260,7 +9470,7 @@ namespace CppSharp
 
             public unsafe partial class TypeTemplateParameter : global::CppSharp.Parser.AST.TemplateParameter, IDisposable
             {
-                [StructLayout(LayoutKind.Explicit, Size = 152)]
+                [StructLayout(LayoutKind.Explicit, Size = 224)]
                 public new partial struct Internal
                 {
                     [FieldOffset(0)]
@@ -9281,37 +9491,46 @@ namespace CppSharp
                     [FieldOffset(24)]
                     public int LineNumberEnd;
 
-                    [FieldOffset(56)]
+                    [FieldOffset(32)]
+                    public global::std.__cxx11.basic_string.Internal Name;
+
+                    [FieldOffset(64)]
+                    public global::std.__cxx11.basic_string.Internal USR;
+
+                    [FieldOffset(96)]
+                    public global::std.__cxx11.basic_string.Internal DebugText;
+
+                    [FieldOffset(128)]
                     public byte IsIncomplete;
 
-                    [FieldOffset(57)]
+                    [FieldOffset(129)]
                     public byte IsDependent;
 
-                    [FieldOffset(58)]
+                    [FieldOffset(130)]
                     public byte IsImplicit;
 
-                    [FieldOffset(64)]
+                    [FieldOffset(136)]
                     public global::System.IntPtr CompleteDeclaration;
 
-                    [FieldOffset(72)]
+                    [FieldOffset(144)]
                     public uint DefinitionOrder;
 
-                    [FieldOffset(104)]
+                    [FieldOffset(176)]
                     public global::System.IntPtr OriginalPtr;
 
-                    [FieldOffset(112)]
+                    [FieldOffset(184)]
                     public global::System.IntPtr Comment;
 
-                    [FieldOffset(120)]
+                    [FieldOffset(192)]
                     public uint Depth;
 
-                    [FieldOffset(124)]
+                    [FieldOffset(196)]
                     public uint Index;
 
-                    [FieldOffset(128)]
+                    [FieldOffset(200)]
                     public byte IsParameterPack;
 
-                    [FieldOffset(136)]
+                    [FieldOffset(208)]
                     public global::CppSharp.Parser.AST.QualifiedType.Internal DefaultArgument;
 
                     [SuppressUnmanagedCodeSecurity]
@@ -9342,7 +9561,7 @@ namespace CppSharp
 
                 private static void* __CopyValue(TypeTemplateParameter.Internal native)
                 {
-                    var ret = Marshal.AllocHGlobal(152);
+                    var ret = Marshal.AllocHGlobal(224);
                     global::CppSharp.Parser.AST.TypeTemplateParameter.Internal.cctor_1(ret, new global::System.IntPtr(&native));
                     return ret.ToPointer();
                 }
@@ -9366,7 +9585,7 @@ namespace CppSharp
                 public TypeTemplateParameter()
                     : this((void*) null)
                 {
-                    __Instance = Marshal.AllocHGlobal(152);
+                    __Instance = Marshal.AllocHGlobal(224);
                     __ownsNativeInstance = true;
                     NativeToManagedMap[__Instance] = this;
                     Internal.ctor_0((__Instance + __PointerAdjustment));
@@ -9375,7 +9594,7 @@ namespace CppSharp
                 public TypeTemplateParameter(global::CppSharp.Parser.AST.TypeTemplateParameter _0)
                     : this((void*) null)
                 {
-                    __Instance = Marshal.AllocHGlobal(152);
+                    __Instance = Marshal.AllocHGlobal(224);
                     __ownsNativeInstance = true;
                     NativeToManagedMap[__Instance] = this;
                     if (ReferenceEquals(_0, null))
@@ -9409,7 +9628,7 @@ namespace CppSharp
 
             public unsafe partial class NonTypeTemplateParameter : global::CppSharp.Parser.AST.TemplateParameter, IDisposable
             {
-                [StructLayout(LayoutKind.Explicit, Size = 152)]
+                [StructLayout(LayoutKind.Explicit, Size = 224)]
                 public new partial struct Internal
                 {
                     [FieldOffset(0)]
@@ -9430,46 +9649,55 @@ namespace CppSharp
                     [FieldOffset(24)]
                     public int LineNumberEnd;
 
-                    [FieldOffset(56)]
+                    [FieldOffset(32)]
+                    public global::std.__cxx11.basic_string.Internal Name;
+
+                    [FieldOffset(64)]
+                    public global::std.__cxx11.basic_string.Internal USR;
+
+                    [FieldOffset(96)]
+                    public global::std.__cxx11.basic_string.Internal DebugText;
+
+                    [FieldOffset(128)]
                     public byte IsIncomplete;
 
-                    [FieldOffset(57)]
+                    [FieldOffset(129)]
                     public byte IsDependent;
 
-                    [FieldOffset(58)]
+                    [FieldOffset(130)]
                     public byte IsImplicit;
 
-                    [FieldOffset(64)]
+                    [FieldOffset(136)]
                     public global::System.IntPtr CompleteDeclaration;
 
-                    [FieldOffset(72)]
+                    [FieldOffset(144)]
                     public uint DefinitionOrder;
 
-                    [FieldOffset(104)]
+                    [FieldOffset(176)]
                     public global::System.IntPtr OriginalPtr;
 
-                    [FieldOffset(112)]
+                    [FieldOffset(184)]
                     public global::System.IntPtr Comment;
 
-                    [FieldOffset(120)]
+                    [FieldOffset(192)]
                     public uint Depth;
 
-                    [FieldOffset(124)]
+                    [FieldOffset(196)]
                     public uint Index;
 
-                    [FieldOffset(128)]
+                    [FieldOffset(200)]
                     public byte IsParameterPack;
 
-                    [FieldOffset(136)]
+                    [FieldOffset(208)]
                     public global::System.IntPtr DefaultArgument;
 
-                    [FieldOffset(144)]
+                    [FieldOffset(216)]
                     public uint Position;
 
-                    [FieldOffset(148)]
+                    [FieldOffset(220)]
                     public byte IsPackExpansion;
 
-                    [FieldOffset(149)]
+                    [FieldOffset(221)]
                     public byte IsExpandedParameterPack;
 
                     [SuppressUnmanagedCodeSecurity]
@@ -9500,7 +9728,7 @@ namespace CppSharp
 
                 private static void* __CopyValue(NonTypeTemplateParameter.Internal native)
                 {
-                    var ret = Marshal.AllocHGlobal(152);
+                    var ret = Marshal.AllocHGlobal(224);
                     global::CppSharp.Parser.AST.NonTypeTemplateParameter.Internal.cctor_1(ret, new global::System.IntPtr(&native));
                     return ret.ToPointer();
                 }
@@ -9524,7 +9752,7 @@ namespace CppSharp
                 public NonTypeTemplateParameter()
                     : this((void*) null)
                 {
-                    __Instance = Marshal.AllocHGlobal(152);
+                    __Instance = Marshal.AllocHGlobal(224);
                     __ownsNativeInstance = true;
                     NativeToManagedMap[__Instance] = this;
                     Internal.ctor_0((__Instance + __PointerAdjustment));
@@ -9533,7 +9761,7 @@ namespace CppSharp
                 public NonTypeTemplateParameter(global::CppSharp.Parser.AST.NonTypeTemplateParameter _0)
                     : this((void*) null)
                 {
-                    __Instance = Marshal.AllocHGlobal(152);
+                    __Instance = Marshal.AllocHGlobal(224);
                     __ownsNativeInstance = true;
                     NativeToManagedMap[__Instance] = this;
                     if (ReferenceEquals(_0, null))
@@ -9611,7 +9839,7 @@ namespace CppSharp
 
             public unsafe partial class ClassTemplate : global::CppSharp.Parser.AST.Template, IDisposable
             {
-                [StructLayout(LayoutKind.Explicit, Size = 176)]
+                [StructLayout(LayoutKind.Explicit, Size = 248)]
                 public new partial struct Internal
                 {
                     [FieldOffset(0)]
@@ -9632,28 +9860,37 @@ namespace CppSharp
                     [FieldOffset(24)]
                     public int LineNumberEnd;
 
-                    [FieldOffset(56)]
+                    [FieldOffset(32)]
+                    public global::std.__cxx11.basic_string.Internal Name;
+
+                    [FieldOffset(64)]
+                    public global::std.__cxx11.basic_string.Internal USR;
+
+                    [FieldOffset(96)]
+                    public global::std.__cxx11.basic_string.Internal DebugText;
+
+                    [FieldOffset(128)]
                     public byte IsIncomplete;
 
-                    [FieldOffset(57)]
+                    [FieldOffset(129)]
                     public byte IsDependent;
 
-                    [FieldOffset(58)]
+                    [FieldOffset(130)]
                     public byte IsImplicit;
 
-                    [FieldOffset(64)]
+                    [FieldOffset(136)]
                     public global::System.IntPtr CompleteDeclaration;
 
-                    [FieldOffset(72)]
+                    [FieldOffset(144)]
                     public uint DefinitionOrder;
 
-                    [FieldOffset(104)]
+                    [FieldOffset(176)]
                     public global::System.IntPtr OriginalPtr;
 
-                    [FieldOffset(112)]
+                    [FieldOffset(184)]
                     public global::System.IntPtr Comment;
 
-                    [FieldOffset(120)]
+                    [FieldOffset(192)]
                     public global::System.IntPtr TemplatedDecl;
 
                     [SuppressUnmanagedCodeSecurity]
@@ -9704,7 +9941,7 @@ namespace CppSharp
 
                 private static void* __CopyValue(ClassTemplate.Internal native)
                 {
-                    var ret = Marshal.AllocHGlobal(176);
+                    var ret = Marshal.AllocHGlobal(248);
                     global::CppSharp.Parser.AST.ClassTemplate.Internal.cctor_1(ret, new global::System.IntPtr(&native));
                     return ret.ToPointer();
                 }
@@ -9728,7 +9965,7 @@ namespace CppSharp
                 public ClassTemplate()
                     : this((void*) null)
                 {
-                    __Instance = Marshal.AllocHGlobal(176);
+                    __Instance = Marshal.AllocHGlobal(248);
                     __ownsNativeInstance = true;
                     NativeToManagedMap[__Instance] = this;
                     Internal.ctor_0((__Instance + __PointerAdjustment));
@@ -9737,7 +9974,7 @@ namespace CppSharp
                 public ClassTemplate(global::CppSharp.Parser.AST.ClassTemplate _0)
                     : this((void*) null)
                 {
-                    __Instance = Marshal.AllocHGlobal(176);
+                    __Instance = Marshal.AllocHGlobal(248);
                     __ownsNativeInstance = true;
                     NativeToManagedMap[__Instance] = this;
                     if (ReferenceEquals(_0, null))
@@ -9791,7 +10028,7 @@ namespace CppSharp
 
             public unsafe partial class ClassTemplateSpecialization : global::CppSharp.Parser.AST.Class, IDisposable
             {
-                [StructLayout(LayoutKind.Explicit, Size = 552)]
+                [StructLayout(LayoutKind.Explicit, Size = 624)]
                 public new partial struct Internal
                 {
                     [FieldOffset(0)]
@@ -9812,64 +10049,73 @@ namespace CppSharp
                     [FieldOffset(24)]
                     public int LineNumberEnd;
 
-                    [FieldOffset(56)]
+                    [FieldOffset(32)]
+                    public global::std.__cxx11.basic_string.Internal Name;
+
+                    [FieldOffset(64)]
+                    public global::std.__cxx11.basic_string.Internal USR;
+
+                    [FieldOffset(96)]
+                    public global::std.__cxx11.basic_string.Internal DebugText;
+
+                    [FieldOffset(128)]
                     public byte IsIncomplete;
 
-                    [FieldOffset(57)]
+                    [FieldOffset(129)]
                     public byte IsDependent;
 
-                    [FieldOffset(58)]
+                    [FieldOffset(130)]
                     public byte IsImplicit;
 
-                    [FieldOffset(64)]
+                    [FieldOffset(136)]
                     public global::System.IntPtr CompleteDeclaration;
 
-                    [FieldOffset(72)]
+                    [FieldOffset(144)]
                     public uint DefinitionOrder;
 
-                    [FieldOffset(104)]
+                    [FieldOffset(176)]
                     public global::System.IntPtr OriginalPtr;
 
-                    [FieldOffset(112)]
+                    [FieldOffset(184)]
                     public global::System.IntPtr Comment;
 
-                    [FieldOffset(384)]
+                    [FieldOffset(456)]
                     public byte IsAnonymous;
 
-                    [FieldOffset(488)]
+                    [FieldOffset(560)]
                     public byte IsPOD;
 
-                    [FieldOffset(489)]
+                    [FieldOffset(561)]
                     public byte IsAbstract;
 
-                    [FieldOffset(490)]
+                    [FieldOffset(562)]
                     public byte IsUnion;
 
-                    [FieldOffset(491)]
+                    [FieldOffset(563)]
                     public byte IsDynamic;
 
-                    [FieldOffset(492)]
+                    [FieldOffset(564)]
                     public byte IsPolymorphic;
 
-                    [FieldOffset(493)]
+                    [FieldOffset(565)]
                     public byte HasNonTrivialDefaultConstructor;
 
-                    [FieldOffset(494)]
+                    [FieldOffset(566)]
                     public byte HasNonTrivialCopyConstructor;
 
-                    [FieldOffset(495)]
+                    [FieldOffset(567)]
                     public byte HasNonTrivialDestructor;
 
-                    [FieldOffset(496)]
+                    [FieldOffset(568)]
                     public byte IsExternCContext;
 
-                    [FieldOffset(504)]
+                    [FieldOffset(576)]
                     public global::System.IntPtr Layout;
 
-                    [FieldOffset(512)]
+                    [FieldOffset(584)]
                     public global::System.IntPtr TemplatedDecl;
 
-                    [FieldOffset(544)]
+                    [FieldOffset(616)]
                     public global::CppSharp.Parser.AST.TemplateSpecializationKind SpecializationKind;
 
                     [SuppressUnmanagedCodeSecurity]
@@ -9920,7 +10166,7 @@ namespace CppSharp
 
                 private static void* __CopyValue(ClassTemplateSpecialization.Internal native)
                 {
-                    var ret = Marshal.AllocHGlobal(552);
+                    var ret = Marshal.AllocHGlobal(624);
                     global::CppSharp.Parser.AST.ClassTemplateSpecialization.Internal.cctor_1(ret, new global::System.IntPtr(&native));
                     return ret.ToPointer();
                 }
@@ -9944,7 +10190,7 @@ namespace CppSharp
                 public ClassTemplateSpecialization()
                     : this((void*) null)
                 {
-                    __Instance = Marshal.AllocHGlobal(552);
+                    __Instance = Marshal.AllocHGlobal(624);
                     __ownsNativeInstance = true;
                     NativeToManagedMap[__Instance] = this;
                     Internal.ctor_0((__Instance + __PointerAdjustment));
@@ -9953,7 +10199,7 @@ namespace CppSharp
                 public ClassTemplateSpecialization(global::CppSharp.Parser.AST.ClassTemplateSpecialization _0)
                     : this((void*) null)
                 {
-                    __Instance = Marshal.AllocHGlobal(552);
+                    __Instance = Marshal.AllocHGlobal(624);
                     __ownsNativeInstance = true;
                     NativeToManagedMap[__Instance] = this;
                     if (ReferenceEquals(_0, null))
@@ -10034,7 +10280,7 @@ namespace CppSharp
 
             public unsafe partial class ClassTemplatePartialSpecialization : global::CppSharp.Parser.AST.ClassTemplateSpecialization, IDisposable
             {
-                [StructLayout(LayoutKind.Explicit, Size = 552)]
+                [StructLayout(LayoutKind.Explicit, Size = 624)]
                 public new partial struct Internal
                 {
                     [FieldOffset(0)]
@@ -10055,64 +10301,73 @@ namespace CppSharp
                     [FieldOffset(24)]
                     public int LineNumberEnd;
 
-                    [FieldOffset(56)]
+                    [FieldOffset(32)]
+                    public global::std.__cxx11.basic_string.Internal Name;
+
+                    [FieldOffset(64)]
+                    public global::std.__cxx11.basic_string.Internal USR;
+
+                    [FieldOffset(96)]
+                    public global::std.__cxx11.basic_string.Internal DebugText;
+
+                    [FieldOffset(128)]
                     public byte IsIncomplete;
 
-                    [FieldOffset(57)]
+                    [FieldOffset(129)]
                     public byte IsDependent;
 
-                    [FieldOffset(58)]
+                    [FieldOffset(130)]
                     public byte IsImplicit;
 
-                    [FieldOffset(64)]
+                    [FieldOffset(136)]
                     public global::System.IntPtr CompleteDeclaration;
 
-                    [FieldOffset(72)]
+                    [FieldOffset(144)]
                     public uint DefinitionOrder;
 
-                    [FieldOffset(104)]
+                    [FieldOffset(176)]
                     public global::System.IntPtr OriginalPtr;
 
-                    [FieldOffset(112)]
+                    [FieldOffset(184)]
                     public global::System.IntPtr Comment;
 
-                    [FieldOffset(384)]
+                    [FieldOffset(456)]
                     public byte IsAnonymous;
 
-                    [FieldOffset(488)]
+                    [FieldOffset(560)]
                     public byte IsPOD;
 
-                    [FieldOffset(489)]
+                    [FieldOffset(561)]
                     public byte IsAbstract;
 
-                    [FieldOffset(490)]
+                    [FieldOffset(562)]
                     public byte IsUnion;
 
-                    [FieldOffset(491)]
+                    [FieldOffset(563)]
                     public byte IsDynamic;
 
-                    [FieldOffset(492)]
+                    [FieldOffset(564)]
                     public byte IsPolymorphic;
 
-                    [FieldOffset(493)]
+                    [FieldOffset(565)]
                     public byte HasNonTrivialDefaultConstructor;
 
-                    [FieldOffset(494)]
+                    [FieldOffset(566)]
                     public byte HasNonTrivialCopyConstructor;
 
-                    [FieldOffset(495)]
+                    [FieldOffset(567)]
                     public byte HasNonTrivialDestructor;
 
-                    [FieldOffset(496)]
+                    [FieldOffset(568)]
                     public byte IsExternCContext;
 
-                    [FieldOffset(504)]
+                    [FieldOffset(576)]
                     public global::System.IntPtr Layout;
 
-                    [FieldOffset(512)]
+                    [FieldOffset(584)]
                     public global::System.IntPtr TemplatedDecl;
 
-                    [FieldOffset(544)]
+                    [FieldOffset(616)]
                     public global::CppSharp.Parser.AST.TemplateSpecializationKind SpecializationKind;
 
                     [SuppressUnmanagedCodeSecurity]
@@ -10143,7 +10398,7 @@ namespace CppSharp
 
                 private static void* __CopyValue(ClassTemplatePartialSpecialization.Internal native)
                 {
-                    var ret = Marshal.AllocHGlobal(552);
+                    var ret = Marshal.AllocHGlobal(624);
                     global::CppSharp.Parser.AST.ClassTemplatePartialSpecialization.Internal.cctor_1(ret, new global::System.IntPtr(&native));
                     return ret.ToPointer();
                 }
@@ -10167,7 +10422,7 @@ namespace CppSharp
                 public ClassTemplatePartialSpecialization()
                     : this((void*) null)
                 {
-                    __Instance = Marshal.AllocHGlobal(552);
+                    __Instance = Marshal.AllocHGlobal(624);
                     __ownsNativeInstance = true;
                     NativeToManagedMap[__Instance] = this;
                     Internal.ctor_0((__Instance + __PointerAdjustment));
@@ -10176,7 +10431,7 @@ namespace CppSharp
                 public ClassTemplatePartialSpecialization(global::CppSharp.Parser.AST.ClassTemplatePartialSpecialization _0)
                     : this((void*) null)
                 {
-                    __Instance = Marshal.AllocHGlobal(552);
+                    __Instance = Marshal.AllocHGlobal(624);
                     __ownsNativeInstance = true;
                     NativeToManagedMap[__Instance] = this;
                     if (ReferenceEquals(_0, null))
@@ -10197,7 +10452,7 @@ namespace CppSharp
 
             public unsafe partial class FunctionTemplate : global::CppSharp.Parser.AST.Template, IDisposable
             {
-                [StructLayout(LayoutKind.Explicit, Size = 176)]
+                [StructLayout(LayoutKind.Explicit, Size = 248)]
                 public new partial struct Internal
                 {
                     [FieldOffset(0)]
@@ -10218,28 +10473,37 @@ namespace CppSharp
                     [FieldOffset(24)]
                     public int LineNumberEnd;
 
-                    [FieldOffset(56)]
+                    [FieldOffset(32)]
+                    public global::std.__cxx11.basic_string.Internal Name;
+
+                    [FieldOffset(64)]
+                    public global::std.__cxx11.basic_string.Internal USR;
+
+                    [FieldOffset(96)]
+                    public global::std.__cxx11.basic_string.Internal DebugText;
+
+                    [FieldOffset(128)]
                     public byte IsIncomplete;
 
-                    [FieldOffset(57)]
+                    [FieldOffset(129)]
                     public byte IsDependent;
 
-                    [FieldOffset(58)]
+                    [FieldOffset(130)]
                     public byte IsImplicit;
 
-                    [FieldOffset(64)]
+                    [FieldOffset(136)]
                     public global::System.IntPtr CompleteDeclaration;
 
-                    [FieldOffset(72)]
+                    [FieldOffset(144)]
                     public uint DefinitionOrder;
 
-                    [FieldOffset(104)]
+                    [FieldOffset(176)]
                     public global::System.IntPtr OriginalPtr;
 
-                    [FieldOffset(112)]
+                    [FieldOffset(184)]
                     public global::System.IntPtr Comment;
 
-                    [FieldOffset(120)]
+                    [FieldOffset(192)]
                     public global::System.IntPtr TemplatedDecl;
 
                     [SuppressUnmanagedCodeSecurity]
@@ -10290,7 +10554,7 @@ namespace CppSharp
 
                 private static void* __CopyValue(FunctionTemplate.Internal native)
                 {
-                    var ret = Marshal.AllocHGlobal(176);
+                    var ret = Marshal.AllocHGlobal(248);
                     global::CppSharp.Parser.AST.FunctionTemplate.Internal.cctor_1(ret, new global::System.IntPtr(&native));
                     return ret.ToPointer();
                 }
@@ -10314,7 +10578,7 @@ namespace CppSharp
                 public FunctionTemplate()
                     : this((void*) null)
                 {
-                    __Instance = Marshal.AllocHGlobal(176);
+                    __Instance = Marshal.AllocHGlobal(248);
                     __ownsNativeInstance = true;
                     NativeToManagedMap[__Instance] = this;
                     Internal.ctor_0((__Instance + __PointerAdjustment));
@@ -10323,7 +10587,7 @@ namespace CppSharp
                 public FunctionTemplate(global::CppSharp.Parser.AST.FunctionTemplate _0)
                     : this((void*) null)
                 {
-                    __Instance = Marshal.AllocHGlobal(176);
+                    __Instance = Marshal.AllocHGlobal(248);
                     __ownsNativeInstance = true;
                     NativeToManagedMap[__Instance] = this;
                     if (ReferenceEquals(_0, null))
@@ -10578,7 +10842,7 @@ namespace CppSharp
 
             public unsafe partial class Namespace : global::CppSharp.Parser.AST.DeclarationContext, IDisposable
             {
-                [StructLayout(LayoutKind.Explicit, Size = 392)]
+                [StructLayout(LayoutKind.Explicit, Size = 464)]
                 public new partial struct Internal
                 {
                     [FieldOffset(0)]
@@ -10599,31 +10863,40 @@ namespace CppSharp
                     [FieldOffset(24)]
                     public int LineNumberEnd;
 
-                    [FieldOffset(56)]
+                    [FieldOffset(32)]
+                    public global::std.__cxx11.basic_string.Internal Name;
+
+                    [FieldOffset(64)]
+                    public global::std.__cxx11.basic_string.Internal USR;
+
+                    [FieldOffset(96)]
+                    public global::std.__cxx11.basic_string.Internal DebugText;
+
+                    [FieldOffset(128)]
                     public byte IsIncomplete;
 
-                    [FieldOffset(57)]
+                    [FieldOffset(129)]
                     public byte IsDependent;
 
-                    [FieldOffset(58)]
+                    [FieldOffset(130)]
                     public byte IsImplicit;
 
-                    [FieldOffset(64)]
+                    [FieldOffset(136)]
                     public global::System.IntPtr CompleteDeclaration;
 
-                    [FieldOffset(72)]
+                    [FieldOffset(144)]
                     public uint DefinitionOrder;
 
-                    [FieldOffset(104)]
+                    [FieldOffset(176)]
                     public global::System.IntPtr OriginalPtr;
 
-                    [FieldOffset(112)]
+                    [FieldOffset(184)]
                     public global::System.IntPtr Comment;
 
-                    [FieldOffset(384)]
+                    [FieldOffset(456)]
                     public byte IsAnonymous;
 
-                    [FieldOffset(385)]
+                    [FieldOffset(457)]
                     public byte IsInline;
 
                     [SuppressUnmanagedCodeSecurity]
@@ -10654,7 +10927,7 @@ namespace CppSharp
 
                 private static void* __CopyValue(Namespace.Internal native)
                 {
-                    var ret = Marshal.AllocHGlobal(392);
+                    var ret = Marshal.AllocHGlobal(464);
                     global::CppSharp.Parser.AST.Namespace.Internal.cctor_1(ret, new global::System.IntPtr(&native));
                     return ret.ToPointer();
                 }
@@ -10678,7 +10951,7 @@ namespace CppSharp
                 public Namespace()
                     : this((void*) null)
                 {
-                    __Instance = Marshal.AllocHGlobal(392);
+                    __Instance = Marshal.AllocHGlobal(464);
                     __ownsNativeInstance = true;
                     NativeToManagedMap[__Instance] = this;
                     Internal.ctor_0((__Instance + __PointerAdjustment));
@@ -10687,7 +10960,7 @@ namespace CppSharp
                 public Namespace(global::CppSharp.Parser.AST.Namespace _0)
                     : this((void*) null)
                 {
-                    __Instance = Marshal.AllocHGlobal(392);
+                    __Instance = Marshal.AllocHGlobal(464);
                     __ownsNativeInstance = true;
                     NativeToManagedMap[__Instance] = this;
                     if (ReferenceEquals(_0, null))
@@ -10854,7 +11127,7 @@ namespace CppSharp
 
             public unsafe partial class MacroDefinition : global::CppSharp.Parser.AST.PreprocessedEntity, IDisposable
             {
-                [StructLayout(LayoutKind.Explicit, Size = 48)]
+                [StructLayout(LayoutKind.Explicit, Size = 96)]
                 public new partial struct Internal
                 {
                     [FieldOffset(0)]
@@ -10866,10 +11139,16 @@ namespace CppSharp
                     [FieldOffset(16)]
                     public global::CppSharp.Parser.AST.DeclarationKind Kind;
 
-                    [FieldOffset(40)]
+                    [FieldOffset(24)]
+                    public global::std.__cxx11.basic_string.Internal Name;
+
+                    [FieldOffset(56)]
+                    public global::std.__cxx11.basic_string.Internal Expression;
+
+                    [FieldOffset(88)]
                     public int LineNumberStart;
 
-                    [FieldOffset(44)]
+                    [FieldOffset(92)]
                     public int LineNumberEnd;
 
                     [SuppressUnmanagedCodeSecurity]
@@ -10920,7 +11199,7 @@ namespace CppSharp
 
                 private static void* __CopyValue(MacroDefinition.Internal native)
                 {
-                    var ret = Marshal.AllocHGlobal(48);
+                    var ret = Marshal.AllocHGlobal(96);
                     global::CppSharp.Parser.AST.MacroDefinition.Internal.cctor_1(ret, new global::System.IntPtr(&native));
                     return ret.ToPointer();
                 }
@@ -10944,7 +11223,7 @@ namespace CppSharp
                 public MacroDefinition()
                     : this((void*) null)
                 {
-                    __Instance = Marshal.AllocHGlobal(48);
+                    __Instance = Marshal.AllocHGlobal(96);
                     __ownsNativeInstance = true;
                     NativeToManagedMap[__Instance] = this;
                     Internal.ctor_0((__Instance + __PointerAdjustment));
@@ -10953,7 +11232,7 @@ namespace CppSharp
                 public MacroDefinition(global::CppSharp.Parser.AST.MacroDefinition _0)
                     : this((void*) null)
                 {
-                    __Instance = Marshal.AllocHGlobal(48);
+                    __Instance = Marshal.AllocHGlobal(96);
                     __ownsNativeInstance = true;
                     NativeToManagedMap[__Instance] = this;
                     if (ReferenceEquals(_0, null))
@@ -11032,7 +11311,7 @@ namespace CppSharp
 
             public unsafe partial class MacroExpansion : global::CppSharp.Parser.AST.PreprocessedEntity, IDisposable
             {
-                [StructLayout(LayoutKind.Explicit, Size = 48)]
+                [StructLayout(LayoutKind.Explicit, Size = 96)]
                 public new partial struct Internal
                 {
                     [FieldOffset(0)]
@@ -11044,7 +11323,13 @@ namespace CppSharp
                     [FieldOffset(16)]
                     public global::CppSharp.Parser.AST.DeclarationKind Kind;
 
-                    [FieldOffset(40)]
+                    [FieldOffset(24)]
+                    public global::std.__cxx11.basic_string.Internal Name;
+
+                    [FieldOffset(56)]
+                    public global::std.__cxx11.basic_string.Internal Text;
+
+                    [FieldOffset(88)]
                     public global::System.IntPtr Definition;
 
                     [SuppressUnmanagedCodeSecurity]
@@ -11095,7 +11380,7 @@ namespace CppSharp
 
                 private static void* __CopyValue(MacroExpansion.Internal native)
                 {
-                    var ret = Marshal.AllocHGlobal(48);
+                    var ret = Marshal.AllocHGlobal(96);
                     global::CppSharp.Parser.AST.MacroExpansion.Internal.cctor_1(ret, new global::System.IntPtr(&native));
                     return ret.ToPointer();
                 }
@@ -11119,7 +11404,7 @@ namespace CppSharp
                 public MacroExpansion()
                     : this((void*) null)
                 {
-                    __Instance = Marshal.AllocHGlobal(48);
+                    __Instance = Marshal.AllocHGlobal(96);
                     __ownsNativeInstance = true;
                     NativeToManagedMap[__Instance] = this;
                     Internal.ctor_0((__Instance + __PointerAdjustment));
@@ -11128,7 +11413,7 @@ namespace CppSharp
                 public MacroExpansion(global::CppSharp.Parser.AST.MacroExpansion _0)
                     : this((void*) null)
                 {
-                    __Instance = Marshal.AllocHGlobal(48);
+                    __Instance = Marshal.AllocHGlobal(96);
                     __ownsNativeInstance = true;
                     NativeToManagedMap[__Instance] = this;
                     if (ReferenceEquals(_0, null))
@@ -11199,7 +11484,7 @@ namespace CppSharp
 
             public unsafe partial class TranslationUnit : global::CppSharp.Parser.AST.Namespace, IDisposable
             {
-                [StructLayout(LayoutKind.Explicit, Size = 432)]
+                [StructLayout(LayoutKind.Explicit, Size = 528)]
                 public new partial struct Internal
                 {
                     [FieldOffset(0)]
@@ -11220,34 +11505,46 @@ namespace CppSharp
                     [FieldOffset(24)]
                     public int LineNumberEnd;
 
-                    [FieldOffset(56)]
+                    [FieldOffset(32)]
+                    public global::std.__cxx11.basic_string.Internal Name;
+
+                    [FieldOffset(64)]
+                    public global::std.__cxx11.basic_string.Internal USR;
+
+                    [FieldOffset(96)]
+                    public global::std.__cxx11.basic_string.Internal DebugText;
+
+                    [FieldOffset(128)]
                     public byte IsIncomplete;
 
-                    [FieldOffset(57)]
+                    [FieldOffset(129)]
                     public byte IsDependent;
 
-                    [FieldOffset(58)]
+                    [FieldOffset(130)]
                     public byte IsImplicit;
 
-                    [FieldOffset(64)]
+                    [FieldOffset(136)]
                     public global::System.IntPtr CompleteDeclaration;
 
-                    [FieldOffset(72)]
+                    [FieldOffset(144)]
                     public uint DefinitionOrder;
 
-                    [FieldOffset(104)]
+                    [FieldOffset(176)]
                     public global::System.IntPtr OriginalPtr;
 
-                    [FieldOffset(112)]
+                    [FieldOffset(184)]
                     public global::System.IntPtr Comment;
 
-                    [FieldOffset(384)]
+                    [FieldOffset(456)]
                     public byte IsAnonymous;
 
-                    [FieldOffset(385)]
+                    [FieldOffset(457)]
                     public byte IsInline;
 
-                    [FieldOffset(400)]
+                    [FieldOffset(464)]
+                    public global::std.__cxx11.basic_string.Internal FileName;
+
+                    [FieldOffset(496)]
                     public byte IsSystemHeader;
 
                     [SuppressUnmanagedCodeSecurity]
@@ -11308,7 +11605,7 @@ namespace CppSharp
 
                 private static void* __CopyValue(TranslationUnit.Internal native)
                 {
-                    var ret = Marshal.AllocHGlobal(432);
+                    var ret = Marshal.AllocHGlobal(528);
                     global::CppSharp.Parser.AST.TranslationUnit.Internal.cctor_1(ret, new global::System.IntPtr(&native));
                     return ret.ToPointer();
                 }
@@ -11332,7 +11629,7 @@ namespace CppSharp
                 public TranslationUnit()
                     : this((void*) null)
                 {
-                    __Instance = Marshal.AllocHGlobal(432);
+                    __Instance = Marshal.AllocHGlobal(528);
                     __ownsNativeInstance = true;
                     NativeToManagedMap[__Instance] = this;
                     Internal.ctor_0((__Instance + __PointerAdjustment));
@@ -11341,7 +11638,7 @@ namespace CppSharp
                 public TranslationUnit(global::CppSharp.Parser.AST.TranslationUnit _0)
                     : this((void*) null)
                 {
-                    __Instance = Marshal.AllocHGlobal(432);
+                    __Instance = Marshal.AllocHGlobal(528);
                     __ownsNativeInstance = true;
                     NativeToManagedMap[__Instance] = this;
                     if (ReferenceEquals(_0, null))
@@ -11424,10 +11721,13 @@ namespace CppSharp
 
             public unsafe partial class NativeLibrary : IDisposable
             {
-                [StructLayout(LayoutKind.Explicit, Size = 64)]
+                [StructLayout(LayoutKind.Explicit, Size = 88)]
                 public partial struct Internal
                 {
-                    [FieldOffset(8)]
+                    [FieldOffset(0)]
+                    public global::std.__cxx11.basic_string.Internal FileName;
+
+                    [FieldOffset(32)]
                     public global::CppSharp.Parser.AST.ArchType ArchType;
 
                     [SuppressUnmanagedCodeSecurity]
@@ -11516,7 +11816,7 @@ namespace CppSharp
 
                 private static void* __CopyValue(NativeLibrary.Internal native)
                 {
-                    var ret = Marshal.AllocHGlobal(64);
+                    var ret = Marshal.AllocHGlobal(88);
                     global::CppSharp.Parser.AST.NativeLibrary.Internal.cctor_1(ret, new global::System.IntPtr(&native));
                     return ret.ToPointer();
                 }
@@ -11537,7 +11837,7 @@ namespace CppSharp
 
                 public NativeLibrary()
                 {
-                    __Instance = Marshal.AllocHGlobal(64);
+                    __Instance = Marshal.AllocHGlobal(88);
                     __ownsNativeInstance = true;
                     NativeToManagedMap[__Instance] = this;
                     Internal.ctor_0((__Instance + __PointerAdjustment));
@@ -11545,7 +11845,7 @@ namespace CppSharp
 
                 public NativeLibrary(global::CppSharp.Parser.AST.NativeLibrary _0)
                 {
-                    __Instance = Marshal.AllocHGlobal(64);
+                    __Instance = Marshal.AllocHGlobal(88);
                     __ownsNativeInstance = true;
                     NativeToManagedMap[__Instance] = this;
                     if (ReferenceEquals(_0, null))
@@ -12444,9 +12744,12 @@ namespace CppSharp
 
                 public unsafe partial class Argument : IDisposable
                 {
-                    [StructLayout(LayoutKind.Explicit, Size = 8)]
+                    [StructLayout(LayoutKind.Explicit, Size = 32)]
                     public partial struct Internal
                     {
+                        [FieldOffset(0)]
+                        public global::std.__cxx11.basic_string.Internal Text;
+
                         [SuppressUnmanagedCodeSecurity]
                         [DllImport("CppSharp.CppParser.dll", CallingConvention = global::System.Runtime.InteropServices.CallingConvention.Cdecl,
                             EntryPoint="_ZN8CppSharp9CppParser3AST19BlockCommandComment8ArgumentC2Ev")]
@@ -12493,7 +12796,7 @@ namespace CppSharp
 
                     private static void* __CopyValue(Argument.Internal native)
                     {
-                        var ret = Marshal.AllocHGlobal(8);
+                        var ret = Marshal.AllocHGlobal(32);
                         global::CppSharp.Parser.AST.BlockCommandComment.Argument.Internal.cctor_1(ret, new global::System.IntPtr(&native));
                         return ret.ToPointer();
                     }
@@ -12514,7 +12817,7 @@ namespace CppSharp
 
                     public Argument()
                     {
-                        __Instance = Marshal.AllocHGlobal(8);
+                        __Instance = Marshal.AllocHGlobal(32);
                         __ownsNativeInstance = true;
                         NativeToManagedMap[__Instance] = this;
                         Internal.ctor_0((__Instance + __PointerAdjustment));
@@ -12522,7 +12825,7 @@ namespace CppSharp
 
                     public Argument(global::CppSharp.Parser.AST.BlockCommandComment.Argument _0)
                     {
-                        __Instance = Marshal.AllocHGlobal(8);
+                        __Instance = Marshal.AllocHGlobal(32);
                         __ownsNativeInstance = true;
                         NativeToManagedMap[__Instance] = this;
                         if (ReferenceEquals(_0, null))
@@ -12974,12 +13277,15 @@ namespace CppSharp
 
             public unsafe partial class VerbatimBlockLineComment : global::CppSharp.Parser.AST.Comment, IDisposable
             {
-                [StructLayout(LayoutKind.Explicit, Size = 16)]
+                [StructLayout(LayoutKind.Explicit, Size = 40)]
                 public new partial struct Internal
                 {
                     [FieldOffset(0)]
                     public global::CppSharp.Parser.AST.CommentKind Kind;
 
+                    [FieldOffset(8)]
+                    public global::std.__cxx11.basic_string.Internal Text;
+
                     [SuppressUnmanagedCodeSecurity]
                     [DllImport("CppSharp.CppParser.dll", CallingConvention = global::System.Runtime.InteropServices.CallingConvention.Cdecl,
                         EntryPoint="_ZN8CppSharp9CppParser3AST24VerbatimBlockLineCommentC2Ev")]
@@ -12988,7 +13294,7 @@ namespace CppSharp
                     [SuppressUnmanagedCodeSecurity]
                     [DllImport("CppSharp.CppParser.dll", CallingConvention = global::System.Runtime.InteropServices.CallingConvention.Cdecl,
                         EntryPoint="_ZN8CppSharp9CppParser3AST24VerbatimBlockLineCommentC2ERKS2_")]
-                    internal static extern void cctor_1(global::System.IntPtr instance, global::System.IntPtr _0);
+                    internal static extern void cctor_2(global::System.IntPtr instance, global::System.IntPtr _0);
 
                     [SuppressUnmanagedCodeSecurity]
                     [DllImport("CppSharp.CppParser.dll", CallingConvention = global::System.Runtime.InteropServices.CallingConvention.Cdecl,
@@ -13018,8 +13324,8 @@ namespace CppSharp
 
                 private static void* __CopyValue(VerbatimBlockLineComment.Internal native)
                 {
-                    var ret = Marshal.AllocHGlobal(16);
-                    global::CppSharp.Parser.AST.VerbatimBlockLineComment.Internal.cctor_1(ret, new global::System.IntPtr(&native));
+                    var ret = Marshal.AllocHGlobal(40);
+                    global::CppSharp.Parser.AST.VerbatimBlockLineComment.Internal.cctor_2(ret, new global::System.IntPtr(&native));
                     return ret.ToPointer();
                 }
 
@@ -13042,7 +13348,7 @@ namespace CppSharp
                 public VerbatimBlockLineComment()
                     : this((void*) null)
                 {
-                    __Instance = Marshal.AllocHGlobal(16);
+                    __Instance = Marshal.AllocHGlobal(40);
                     __ownsNativeInstance = true;
                     NativeToManagedMap[__Instance] = this;
                     Internal.ctor_0((__Instance + __PointerAdjustment));
@@ -13051,13 +13357,13 @@ namespace CppSharp
                 public VerbatimBlockLineComment(global::CppSharp.Parser.AST.VerbatimBlockLineComment _0)
                     : this((void*) null)
                 {
-                    __Instance = Marshal.AllocHGlobal(16);
+                    __Instance = Marshal.AllocHGlobal(40);
                     __ownsNativeInstance = true;
                     NativeToManagedMap[__Instance] = this;
                     if (ReferenceEquals(_0, null))
                         throw new global::System.ArgumentNullException("_0", "Cannot be null because it is a C++ reference (&).");
                     var __arg0 = _0.__Instance;
-                    Internal.cctor_1((__Instance + __PointerAdjustment), __arg0);
+                    Internal.cctor_2((__Instance + __PointerAdjustment), __arg0);
                 }
 
                 protected override void Dispose(bool disposing)
@@ -13235,7 +13541,7 @@ namespace CppSharp
 
             public unsafe partial class VerbatimLineComment : global::CppSharp.Parser.AST.BlockCommandComment, IDisposable
             {
-                [StructLayout(LayoutKind.Explicit, Size = 48)]
+                [StructLayout(LayoutKind.Explicit, Size = 72)]
                 public new partial struct Internal
                 {
                     [FieldOffset(0)]
@@ -13247,6 +13553,9 @@ namespace CppSharp
                     [FieldOffset(8)]
                     public global::System.IntPtr ParagraphComment;
 
+                    [FieldOffset(40)]
+                    public global::std.__cxx11.basic_string.Internal Text;
+
                     [SuppressUnmanagedCodeSecurity]
                     [DllImport("CppSharp.CppParser.dll", CallingConvention = global::System.Runtime.InteropServices.CallingConvention.Cdecl,
                         EntryPoint="_ZN8CppSharp9CppParser3AST19VerbatimLineCommentC2Ev")]
@@ -13255,7 +13564,7 @@ namespace CppSharp
                     [SuppressUnmanagedCodeSecurity]
                     [DllImport("CppSharp.CppParser.dll", CallingConvention = global::System.Runtime.InteropServices.CallingConvention.Cdecl,
                         EntryPoint="_ZN8CppSharp9CppParser3AST19VerbatimLineCommentC2ERKS2_")]
-                    internal static extern void cctor_1(global::System.IntPtr instance, global::System.IntPtr _0);
+                    internal static extern void cctor_2(global::System.IntPtr instance, global::System.IntPtr _0);
 
                     [SuppressUnmanagedCodeSecurity]
                     [DllImport("CppSharp.CppParser.dll", CallingConvention = global::System.Runtime.InteropServices.CallingConvention.Cdecl,
@@ -13285,8 +13594,8 @@ namespace CppSharp
 
                 private static void* __CopyValue(VerbatimLineComment.Internal native)
                 {
-                    var ret = Marshal.AllocHGlobal(48);
-                    global::CppSharp.Parser.AST.VerbatimLineComment.Internal.cctor_1(ret, new global::System.IntPtr(&native));
+                    var ret = Marshal.AllocHGlobal(72);
+                    global::CppSharp.Parser.AST.VerbatimLineComment.Internal.cctor_2(ret, new global::System.IntPtr(&native));
                     return ret.ToPointer();
                 }
 
@@ -13309,7 +13618,7 @@ namespace CppSharp
                 public VerbatimLineComment()
                     : this((void*) null)
                 {
-                    __Instance = Marshal.AllocHGlobal(48);
+                    __Instance = Marshal.AllocHGlobal(72);
                     __ownsNativeInstance = true;
                     NativeToManagedMap[__Instance] = this;
                     Internal.ctor_0((__Instance + __PointerAdjustment));
@@ -13318,13 +13627,13 @@ namespace CppSharp
                 public VerbatimLineComment(global::CppSharp.Parser.AST.VerbatimLineComment _0)
                     : this((void*) null)
                 {
-                    __Instance = Marshal.AllocHGlobal(48);
+                    __Instance = Marshal.AllocHGlobal(72);
                     __ownsNativeInstance = true;
                     NativeToManagedMap[__Instance] = this;
                     if (ReferenceEquals(_0, null))
                         throw new global::System.ArgumentNullException("_0", "Cannot be null because it is a C++ reference (&).");
                     var __arg0 = _0.__Instance;
-                    Internal.cctor_1((__Instance + __PointerAdjustment), __arg0);
+                    Internal.cctor_2((__Instance + __PointerAdjustment), __arg0);
                 }
 
                 protected override void Dispose(bool disposing)
@@ -13416,9 +13725,12 @@ namespace CppSharp
 
                 public unsafe partial class Argument : IDisposable
                 {
-                    [StructLayout(LayoutKind.Explicit, Size = 8)]
+                    [StructLayout(LayoutKind.Explicit, Size = 32)]
                     public partial struct Internal
                     {
+                        [FieldOffset(0)]
+                        public global::std.__cxx11.basic_string.Internal Text;
+
                         [SuppressUnmanagedCodeSecurity]
                         [DllImport("CppSharp.CppParser.dll", CallingConvention = global::System.Runtime.InteropServices.CallingConvention.Cdecl,
                             EntryPoint="_ZN8CppSharp9CppParser3AST20InlineCommandComment8ArgumentC2Ev")]
@@ -13465,7 +13777,7 @@ namespace CppSharp
 
                     private static void* __CopyValue(Argument.Internal native)
                     {
-                        var ret = Marshal.AllocHGlobal(8);
+                        var ret = Marshal.AllocHGlobal(32);
                         global::CppSharp.Parser.AST.InlineCommandComment.Argument.Internal.cctor_1(ret, new global::System.IntPtr(&native));
                         return ret.ToPointer();
                     }
@@ -13486,7 +13798,7 @@ namespace CppSharp
 
                     public Argument()
                     {
-                        __Instance = Marshal.AllocHGlobal(8);
+                        __Instance = Marshal.AllocHGlobal(32);
                         __ownsNativeInstance = true;
                         NativeToManagedMap[__Instance] = this;
                         Internal.ctor_0((__Instance + __PointerAdjustment));
@@ -13494,7 +13806,7 @@ namespace CppSharp
 
                     public Argument(global::CppSharp.Parser.AST.InlineCommandComment.Argument _0)
                     {
-                        __Instance = Marshal.AllocHGlobal(8);
+                        __Instance = Marshal.AllocHGlobal(32);
                         __ownsNativeInstance = true;
                         NativeToManagedMap[__Instance] = this;
                         if (ReferenceEquals(_0, null))
@@ -13744,7 +14056,7 @@ namespace CppSharp
 
             public unsafe partial class HTMLStartTagComment : global::CppSharp.Parser.AST.HTMLTagComment, IDisposable
             {
-                [StructLayout(LayoutKind.Explicit, Size = 40)]
+                [StructLayout(LayoutKind.Explicit, Size = 64)]
                 public new partial struct Internal
                 {
                     [FieldOffset(0)]
@@ -13753,6 +14065,9 @@ namespace CppSharp
                     [FieldOffset(4)]
                     public byte HasTrailingNewline;
 
+                    [FieldOffset(8)]
+                    public global::std.__cxx11.basic_string.Internal TagName;
+
                     [SuppressUnmanagedCodeSecurity]
                     [DllImport("CppSharp.CppParser.dll", CallingConvention = global::System.Runtime.InteropServices.CallingConvention.Cdecl,
                         EntryPoint="_ZN8CppSharp9CppParser3AST19HTMLStartTagCommentC2Ev")]
@@ -13761,7 +14076,7 @@ namespace CppSharp
                     [SuppressUnmanagedCodeSecurity]
                     [DllImport("CppSharp.CppParser.dll", CallingConvention = global::System.Runtime.InteropServices.CallingConvention.Cdecl,
                         EntryPoint="_ZN8CppSharp9CppParser3AST19HTMLStartTagCommentC2ERKS2_")]
-                    internal static extern void cctor_1(global::System.IntPtr instance, global::System.IntPtr _0);
+                    internal static extern void cctor_2(global::System.IntPtr instance, global::System.IntPtr _0);
 
                     [SuppressUnmanagedCodeSecurity]
                     [DllImport("CppSharp.CppParser.dll", CallingConvention = global::System.Runtime.InteropServices.CallingConvention.Cdecl,
@@ -13801,9 +14116,15 @@ namespace CppSharp
 
                 public unsafe partial class Attribute : IDisposable
                 {
-                    [StructLayout(LayoutKind.Explicit, Size = 16)]
+                    [StructLayout(LayoutKind.Explicit, Size = 64)]
                     public partial struct Internal
                     {
+                        [FieldOffset(0)]
+                        public global::std.__cxx11.basic_string.Internal Name;
+
+                        [FieldOffset(32)]
+                        public global::std.__cxx11.basic_string.Internal Value;
+
                         [SuppressUnmanagedCodeSecurity]
                         [DllImport("CppSharp.CppParser.dll", CallingConvention = global::System.Runtime.InteropServices.CallingConvention.Cdecl,
                             EntryPoint="_ZN8CppSharp9CppParser3AST19HTMLStartTagComment9AttributeC2Ev")]
@@ -13860,7 +14181,7 @@ namespace CppSharp
 
                     private static void* __CopyValue(Attribute.Internal native)
                     {
-                        var ret = Marshal.AllocHGlobal(16);
+                        var ret = Marshal.AllocHGlobal(64);
                         global::CppSharp.Parser.AST.HTMLStartTagComment.Attribute.Internal.cctor_1(ret, new global::System.IntPtr(&native));
                         return ret.ToPointer();
                     }
@@ -13881,7 +14202,7 @@ namespace CppSharp
 
                     public Attribute()
                     {
-                        __Instance = Marshal.AllocHGlobal(16);
+                        __Instance = Marshal.AllocHGlobal(64);
                         __ownsNativeInstance = true;
                         NativeToManagedMap[__Instance] = this;
                         Internal.ctor_0((__Instance + __PointerAdjustment));
@@ -13889,7 +14210,7 @@ namespace CppSharp
 
                     public Attribute(global::CppSharp.Parser.AST.HTMLStartTagComment.Attribute _0)
                     {
-                        __Instance = Marshal.AllocHGlobal(16);
+                        __Instance = Marshal.AllocHGlobal(64);
                         __ownsNativeInstance = true;
                         NativeToManagedMap[__Instance] = this;
                         if (ReferenceEquals(_0, null))
@@ -13957,8 +14278,8 @@ namespace CppSharp
 
                 private static void* __CopyValue(HTMLStartTagComment.Internal native)
                 {
-                    var ret = Marshal.AllocHGlobal(40);
-                    global::CppSharp.Parser.AST.HTMLStartTagComment.Internal.cctor_1(ret, new global::System.IntPtr(&native));
+                    var ret = Marshal.AllocHGlobal(64);
+                    global::CppSharp.Parser.AST.HTMLStartTagComment.Internal.cctor_2(ret, new global::System.IntPtr(&native));
                     return ret.ToPointer();
                 }
 
@@ -13981,7 +14302,7 @@ namespace CppSharp
                 public HTMLStartTagComment()
                     : this((void*) null)
                 {
-                    __Instance = Marshal.AllocHGlobal(40);
+                    __Instance = Marshal.AllocHGlobal(64);
                     __ownsNativeInstance = true;
                     NativeToManagedMap[__Instance] = this;
                     Internal.ctor_0((__Instance + __PointerAdjustment));
@@ -13990,13 +14311,13 @@ namespace CppSharp
                 public HTMLStartTagComment(global::CppSharp.Parser.AST.HTMLStartTagComment _0)
                     : this((void*) null)
                 {
-                    __Instance = Marshal.AllocHGlobal(40);
+                    __Instance = Marshal.AllocHGlobal(64);
                     __ownsNativeInstance = true;
                     NativeToManagedMap[__Instance] = this;
                     if (ReferenceEquals(_0, null))
                         throw new global::System.ArgumentNullException("_0", "Cannot be null because it is a C++ reference (&).");
                     var __arg0 = _0.__Instance;
-                    Internal.cctor_1((__Instance + __PointerAdjustment), __arg0);
+                    Internal.cctor_2((__Instance + __PointerAdjustment), __arg0);
                 }
 
                 protected override void Dispose(bool disposing)
@@ -14056,7 +14377,7 @@ namespace CppSharp
 
             public unsafe partial class HTMLEndTagComment : global::CppSharp.Parser.AST.HTMLTagComment, IDisposable
             {
-                [StructLayout(LayoutKind.Explicit, Size = 16)]
+                [StructLayout(LayoutKind.Explicit, Size = 40)]
                 public new partial struct Internal
                 {
                     [FieldOffset(0)]
@@ -14065,6 +14386,9 @@ namespace CppSharp
                     [FieldOffset(4)]
                     public byte HasTrailingNewline;
 
+                    [FieldOffset(8)]
+                    public global::std.__cxx11.basic_string.Internal TagName;
+
                     [SuppressUnmanagedCodeSecurity]
                     [DllImport("CppSharp.CppParser.dll", CallingConvention = global::System.Runtime.InteropServices.CallingConvention.Cdecl,
                         EntryPoint="_ZN8CppSharp9CppParser3AST17HTMLEndTagCommentC2Ev")]
@@ -14073,7 +14397,7 @@ namespace CppSharp
                     [SuppressUnmanagedCodeSecurity]
                     [DllImport("CppSharp.CppParser.dll", CallingConvention = global::System.Runtime.InteropServices.CallingConvention.Cdecl,
                         EntryPoint="_ZN8CppSharp9CppParser3AST17HTMLEndTagCommentC2ERKS2_")]
-                    internal static extern void cctor_1(global::System.IntPtr instance, global::System.IntPtr _0);
+                    internal static extern void cctor_2(global::System.IntPtr instance, global::System.IntPtr _0);
 
                     [SuppressUnmanagedCodeSecurity]
                     [DllImport("CppSharp.CppParser.dll", CallingConvention = global::System.Runtime.InteropServices.CallingConvention.Cdecl,
@@ -14103,8 +14427,8 @@ namespace CppSharp
 
                 private static void* __CopyValue(HTMLEndTagComment.Internal native)
                 {
-                    var ret = Marshal.AllocHGlobal(16);
-                    global::CppSharp.Parser.AST.HTMLEndTagComment.Internal.cctor_1(ret, new global::System.IntPtr(&native));
+                    var ret = Marshal.AllocHGlobal(40);
+                    global::CppSharp.Parser.AST.HTMLEndTagComment.Internal.cctor_2(ret, new global::System.IntPtr(&native));
                     return ret.ToPointer();
                 }
 
@@ -14127,7 +14451,7 @@ namespace CppSharp
                 public HTMLEndTagComment()
                     : this((void*) null)
                 {
-                    __Instance = Marshal.AllocHGlobal(16);
+                    __Instance = Marshal.AllocHGlobal(40);
                     __ownsNativeInstance = true;
                     NativeToManagedMap[__Instance] = this;
                     Internal.ctor_0((__Instance + __PointerAdjustment));
@@ -14136,13 +14460,13 @@ namespace CppSharp
                 public HTMLEndTagComment(global::CppSharp.Parser.AST.HTMLEndTagComment _0)
                     : this((void*) null)
                 {
-                    __Instance = Marshal.AllocHGlobal(16);
+                    __Instance = Marshal.AllocHGlobal(40);
                     __ownsNativeInstance = true;
                     NativeToManagedMap[__Instance] = this;
                     if (ReferenceEquals(_0, null))
                         throw new global::System.ArgumentNullException("_0", "Cannot be null because it is a C++ reference (&).");
                     var __arg0 = _0.__Instance;
-                    Internal.cctor_1((__Instance + __PointerAdjustment), __arg0);
+                    Internal.cctor_2((__Instance + __PointerAdjustment), __arg0);
                 }
 
                 protected override void Dispose(bool disposing)
@@ -14173,7 +14497,7 @@ namespace CppSharp
 
             public unsafe partial class TextComment : global::CppSharp.Parser.AST.InlineContentComment, IDisposable
             {
-                [StructLayout(LayoutKind.Explicit, Size = 16)]
+                [StructLayout(LayoutKind.Explicit, Size = 40)]
                 public new partial struct Internal
                 {
                     [FieldOffset(0)]
@@ -14182,6 +14506,9 @@ namespace CppSharp
                     [FieldOffset(4)]
                     public byte HasTrailingNewline;
 
+                    [FieldOffset(8)]
+                    public global::std.__cxx11.basic_string.Internal Text;
+
                     [SuppressUnmanagedCodeSecurity]
                     [DllImport("CppSharp.CppParser.dll", CallingConvention = global::System.Runtime.InteropServices.CallingConvention.Cdecl,
                         EntryPoint="_ZN8CppSharp9CppParser3AST11TextCommentC2Ev")]
@@ -14190,7 +14517,7 @@ namespace CppSharp
                     [SuppressUnmanagedCodeSecurity]
                     [DllImport("CppSharp.CppParser.dll", CallingConvention = global::System.Runtime.InteropServices.CallingConvention.Cdecl,
                         EntryPoint="_ZN8CppSharp9CppParser3AST11TextCommentC2ERKS2_")]
-                    internal static extern void cctor_1(global::System.IntPtr instance, global::System.IntPtr _0);
+                    internal static extern void cctor_2(global::System.IntPtr instance, global::System.IntPtr _0);
 
                     [SuppressUnmanagedCodeSecurity]
                     [DllImport("CppSharp.CppParser.dll", CallingConvention = global::System.Runtime.InteropServices.CallingConvention.Cdecl,
@@ -14220,8 +14547,8 @@ namespace CppSharp
 
                 private static void* __CopyValue(TextComment.Internal native)
                 {
-                    var ret = Marshal.AllocHGlobal(16);
-                    global::CppSharp.Parser.AST.TextComment.Internal.cctor_1(ret, new global::System.IntPtr(&native));
+                    var ret = Marshal.AllocHGlobal(40);
+                    global::CppSharp.Parser.AST.TextComment.Internal.cctor_2(ret, new global::System.IntPtr(&native));
                     return ret.ToPointer();
                 }
 
@@ -14244,7 +14571,7 @@ namespace CppSharp
                 public TextComment()
                     : this((void*) null)
                 {
-                    __Instance = Marshal.AllocHGlobal(16);
+                    __Instance = Marshal.AllocHGlobal(40);
                     __ownsNativeInstance = true;
                     NativeToManagedMap[__Instance] = this;
                     Internal.ctor_0((__Instance + __PointerAdjustment));
@@ -14253,13 +14580,13 @@ namespace CppSharp
                 public TextComment(global::CppSharp.Parser.AST.TextComment _0)
                     : this((void*) null)
                 {
-                    __Instance = Marshal.AllocHGlobal(16);
+                    __Instance = Marshal.AllocHGlobal(40);
                     __ownsNativeInstance = true;
                     NativeToManagedMap[__Instance] = this;
                     if (ReferenceEquals(_0, null))
                         throw new global::System.ArgumentNullException("_0", "Cannot be null because it is a C++ reference (&).");
                     var __arg0 = _0.__Instance;
-                    Internal.cctor_1((__Instance + __PointerAdjustment), __arg0);
+                    Internal.cctor_2((__Instance + __PointerAdjustment), __arg0);
                 }
 
                 protected override void Dispose(bool disposing)
@@ -14290,13 +14617,19 @@ namespace CppSharp
 
             public unsafe partial class RawComment : IDisposable
             {
-                [StructLayout(LayoutKind.Explicit, Size = 32)]
+                [StructLayout(LayoutKind.Explicit, Size = 80)]
                 public partial struct Internal
                 {
                     [FieldOffset(0)]
                     public global::CppSharp.Parser.AST.RawCommentKind Kind;
 
-                    [FieldOffset(24)]
+                    [FieldOffset(8)]
+                    public global::std.__cxx11.basic_string.Internal Text;
+
+                    [FieldOffset(40)]
+                    public global::std.__cxx11.basic_string.Internal BriefText;
+
+                    [FieldOffset(72)]
                     public global::System.IntPtr FullCommentBlock;
 
                     [SuppressUnmanagedCodeSecurity]
@@ -14355,7 +14688,7 @@ namespace CppSharp
 
                 private static void* __CopyValue(RawComment.Internal native)
                 {
-                    var ret = Marshal.AllocHGlobal(32);
+                    var ret = Marshal.AllocHGlobal(80);
                     global::CppSharp.Parser.AST.RawComment.Internal.cctor_1(ret, new global::System.IntPtr(&native));
                     return ret.ToPointer();
                 }
@@ -14376,7 +14709,7 @@ namespace CppSharp
 
                 public RawComment()
                 {
-                    __Instance = Marshal.AllocHGlobal(32);
+                    __Instance = Marshal.AllocHGlobal(80);
                     __ownsNativeInstance = true;
                     NativeToManagedMap[__Instance] = this;
                     Internal.ctor_0((__Instance + __PointerAdjustment));
@@ -14384,7 +14717,7 @@ namespace CppSharp
 
                 public RawComment(global::CppSharp.Parser.AST.RawComment _0)
                 {
-                    __Instance = Marshal.AllocHGlobal(32);
+                    __Instance = Marshal.AllocHGlobal(80);
                     __ownsNativeInstance = true;
                     NativeToManagedMap[__Instance] = this;
                     if (ReferenceEquals(_0, null))
@@ -14603,34 +14936,40 @@ namespace CppSharp
 
         public unsafe partial class ParserOptions : IDisposable
         {
-            [StructLayout(LayoutKind.Explicit, Size = 224)]
+            [StructLayout(LayoutKind.Explicit, Size = 272)]
             public partial struct Internal
             {
-                [FieldOffset(176)]
+                [FieldOffset(24)]
+                public global::std.__cxx11.basic_string.Internal LibraryFile;
+
+                [FieldOffset(200)]
                 public global::System.IntPtr ASTContext;
 
-                [FieldOffset(184)]
+                [FieldOffset(208)]
                 public int ToolSetToUse;
 
-                [FieldOffset(200)]
+                [FieldOffset(216)]
+                public global::std.__cxx11.basic_string.Internal TargetTriple;
+
+                [FieldOffset(248)]
                 public global::CppSharp.Parser.AST.CppAbi Abi;
 
-                [FieldOffset(204)]
+                [FieldOffset(252)]
                 public byte NoStandardIncludes;
 
-                [FieldOffset(205)]
+                [FieldOffset(253)]
                 public byte NoBuiltinIncludes;
 
-                [FieldOffset(206)]
+                [FieldOffset(254)]
                 public byte MicrosoftMode;
 
-                [FieldOffset(207)]
+                [FieldOffset(255)]
                 public byte Verbose;
 
-                [FieldOffset(208)]
+                [FieldOffset(256)]
                 public global::CppSharp.Parser.LanguageVersion LanguageVersion;
 
-                [FieldOffset(216)]
+                [FieldOffset(264)]
                 public global::System.IntPtr TargetInfo;
 
                 [SuppressUnmanagedCodeSecurity]
@@ -14641,7 +14980,7 @@ namespace CppSharp
                 [SuppressUnmanagedCodeSecurity]
                 [DllImport("CppSharp.CppParser.dll", CallingConvention = global::System.Runtime.InteropServices.CallingConvention.Cdecl,
                     EntryPoint="_ZN8CppSharp9CppParser13ParserOptionsC2ERKS1_")]
-                internal static extern void cctor_1(global::System.IntPtr instance, global::System.IntPtr _0);
+                internal static extern void cctor_2(global::System.IntPtr instance, global::System.IntPtr _0);
 
                 [SuppressUnmanagedCodeSecurity]
                 [DllImport("CppSharp.CppParser.dll", CallingConvention = global::System.Runtime.InteropServices.CallingConvention.Cdecl,
@@ -14829,8 +15168,8 @@ namespace CppSharp
 
             private static void* __CopyValue(ParserOptions.Internal native)
             {
-                var ret = Marshal.AllocHGlobal(224);
-                global::CppSharp.Parser.ParserOptions.Internal.cctor_1(ret, new global::System.IntPtr(&native));
+                var ret = Marshal.AllocHGlobal(272);
+                global::CppSharp.Parser.ParserOptions.Internal.cctor_2(ret, new global::System.IntPtr(&native));
                 return ret.ToPointer();
             }
 
@@ -14850,7 +15189,7 @@ namespace CppSharp
 
             public ParserOptions()
             {
-                __Instance = Marshal.AllocHGlobal(224);
+                __Instance = Marshal.AllocHGlobal(272);
                 __ownsNativeInstance = true;
                 NativeToManagedMap[__Instance] = this;
                 Internal.ctor_0((__Instance + __PointerAdjustment));
@@ -14858,13 +15197,13 @@ namespace CppSharp
 
             public ParserOptions(global::CppSharp.Parser.ParserOptions _0)
             {
-                __Instance = Marshal.AllocHGlobal(224);
+                __Instance = Marshal.AllocHGlobal(272);
                 __ownsNativeInstance = true;
                 NativeToManagedMap[__Instance] = this;
                 if (ReferenceEquals(_0, null))
                     throw new global::System.ArgumentNullException("_0", "Cannot be null because it is a C++ reference (&).");
                 var __arg0 = _0.__Instance;
-                Internal.cctor_1((__Instance + __PointerAdjustment), __arg0);
+                Internal.cctor_2((__Instance + __PointerAdjustment), __arg0);
             }
 
             public void Dispose()
@@ -15232,16 +15571,22 @@ namespace CppSharp
 
         public unsafe partial class ParserDiagnostic : IDisposable
         {
-            [StructLayout(LayoutKind.Explicit, Size = 32)]
+            [StructLayout(LayoutKind.Explicit, Size = 80)]
             public partial struct Internal
             {
-                [FieldOffset(16)]
+                [FieldOffset(0)]
+                public global::std.__cxx11.basic_string.Internal FileName;
+
+                [FieldOffset(32)]
+                public global::std.__cxx11.basic_string.Internal Message;
+
+                [FieldOffset(64)]
                 public global::CppSharp.Parser.ParserDiagnosticLevel Level;
 
-                [FieldOffset(20)]
+                [FieldOffset(68)]
                 public int LineNumber;
 
-                [FieldOffset(24)]
+                [FieldOffset(72)]
                 public int ColumnNumber;
 
                 [SuppressUnmanagedCodeSecurity]
@@ -15300,7 +15645,7 @@ namespace CppSharp
 
             private static void* __CopyValue(ParserDiagnostic.Internal native)
             {
-                var ret = Marshal.AllocHGlobal(32);
+                var ret = Marshal.AllocHGlobal(80);
                 global::CppSharp.Parser.ParserDiagnostic.Internal.cctor_1(ret, new global::System.IntPtr(&native));
                 return ret.ToPointer();
             }
@@ -15321,7 +15666,7 @@ namespace CppSharp
 
             public ParserDiagnostic()
             {
-                __Instance = Marshal.AllocHGlobal(32);
+                __Instance = Marshal.AllocHGlobal(80);
                 __ownsNativeInstance = true;
                 NativeToManagedMap[__Instance] = this;
                 Internal.ctor_0((__Instance + __PointerAdjustment));
@@ -15329,7 +15674,7 @@ namespace CppSharp
 
             public ParserDiagnostic(global::CppSharp.Parser.ParserDiagnostic _0)
             {
-                __Instance = Marshal.AllocHGlobal(32);
+                __Instance = Marshal.AllocHGlobal(80);
                 __ownsNativeInstance = true;
                 NativeToManagedMap[__Instance] = this;
                 if (ReferenceEquals(_0, null))
@@ -15781,121 +16126,124 @@ namespace CppSharp
 
         public unsafe partial class ParserTargetInfo : IDisposable
         {
-            [StructLayout(LayoutKind.Explicit, Size = 160)]
+            [StructLayout(LayoutKind.Explicit, Size = 184)]
             public partial struct Internal
             {
-                [FieldOffset(8)]
+                [FieldOffset(0)]
+                public global::std.__cxx11.basic_string.Internal ABI;
+
+                [FieldOffset(32)]
                 public global::CppSharp.Parser.ParserIntType Char16Type;
 
-                [FieldOffset(12)]
+                [FieldOffset(36)]
                 public global::CppSharp.Parser.ParserIntType Char32Type;
 
-                [FieldOffset(16)]
+                [FieldOffset(40)]
                 public global::CppSharp.Parser.ParserIntType Int64Type;
 
-                [FieldOffset(20)]
+                [FieldOffset(44)]
                 public global::CppSharp.Parser.ParserIntType IntMaxType;
 
-                [FieldOffset(24)]
+                [FieldOffset(48)]
                 public global::CppSharp.Parser.ParserIntType IntPtrType;
 
-                [FieldOffset(28)]
+                [FieldOffset(52)]
                 public global::CppSharp.Parser.ParserIntType SizeType;
 
-                [FieldOffset(32)]
+                [FieldOffset(56)]
                 public global::CppSharp.Parser.ParserIntType UIntMaxType;
 
-                [FieldOffset(36)]
+                [FieldOffset(60)]
                 public global::CppSharp.Parser.ParserIntType WCharType;
 
-                [FieldOffset(40)]
+                [FieldOffset(64)]
                 public global::CppSharp.Parser.ParserIntType WIntType;
 
-                [FieldOffset(44)]
+                [FieldOffset(68)]
                 public uint BoolAlign;
 
-                [FieldOffset(48)]
+                [FieldOffset(72)]
                 public uint BoolWidth;
 
-                [FieldOffset(52)]
+                [FieldOffset(76)]
                 public uint CharAlign;
 
-                [FieldOffset(56)]
+                [FieldOffset(80)]
                 public uint CharWidth;
 
-                [FieldOffset(60)]
+                [FieldOffset(84)]
                 public uint Char16Align;
 
-                [FieldOffset(64)]
+                [FieldOffset(88)]
                 public uint Char16Width;
 
-                [FieldOffset(68)]
+                [FieldOffset(92)]
                 public uint Char32Align;
 
-                [FieldOffset(72)]
+                [FieldOffset(96)]
                 public uint Char32Width;
 
-                [FieldOffset(76)]
+                [FieldOffset(100)]
                 public uint HalfAlign;
 
-                [FieldOffset(80)]
+                [FieldOffset(104)]
                 public uint HalfWidth;
 
-                [FieldOffset(84)]
+                [FieldOffset(108)]
                 public uint FloatAlign;
 
-                [FieldOffset(88)]
+                [FieldOffset(112)]
                 public uint FloatWidth;
 
-                [FieldOffset(92)]
+                [FieldOffset(116)]
                 public uint DoubleAlign;
 
-                [FieldOffset(96)]
+                [FieldOffset(120)]
                 public uint DoubleWidth;
 
-                [FieldOffset(100)]
+                [FieldOffset(124)]
                 public uint ShortAlign;
 
-                [FieldOffset(104)]
+                [FieldOffset(128)]
                 public uint ShortWidth;
 
-                [FieldOffset(108)]
+                [FieldOffset(132)]
                 public uint IntAlign;
 
-                [FieldOffset(112)]
+                [FieldOffset(136)]
                 public uint IntWidth;
 
-                [FieldOffset(116)]
+                [FieldOffset(140)]
                 public uint IntMaxTWidth;
 
-                [FieldOffset(120)]
+                [FieldOffset(144)]
                 public uint LongAlign;
 
-                [FieldOffset(124)]
+                [FieldOffset(148)]
                 public uint LongWidth;
 
-                [FieldOffset(128)]
+                [FieldOffset(152)]
                 public uint LongDoubleAlign;
 
-                [FieldOffset(132)]
+                [FieldOffset(156)]
                 public uint LongDoubleWidth;
 
-                [FieldOffset(136)]
+                [FieldOffset(160)]
                 public uint LongLongAlign;
 
-                [FieldOffset(140)]
+                [FieldOffset(164)]
                 public uint LongLongWidth;
 
-                [FieldOffset(144)]
+                [FieldOffset(168)]
                 public uint PointerAlign;
 
-                [FieldOffset(148)]
+                [FieldOffset(172)]
                 public uint PointerWidth;
 
-                [FieldOffset(152)]
+                [FieldOffset(176)]
                 public uint WCharAlign;
 
-                [FieldOffset(156)]
+                [FieldOffset(180)]
                 public uint WCharWidth;
 
                 [SuppressUnmanagedCodeSecurity]
@@ -15944,7 +16292,7 @@ namespace CppSharp
 
             private static void* __CopyValue(ParserTargetInfo.Internal native)
             {
-                var ret = Marshal.AllocHGlobal(160);
+                var ret = Marshal.AllocHGlobal(184);
                 global::CppSharp.Parser.ParserTargetInfo.Internal.cctor_1(ret, new global::System.IntPtr(&native));
                 return ret.ToPointer();
             }
@@ -15965,7 +16313,7 @@ namespace CppSharp
 
             public ParserTargetInfo()
             {
-                __Instance = Marshal.AllocHGlobal(160);
+                __Instance = Marshal.AllocHGlobal(184);
                 __ownsNativeInstance = true;
                 NativeToManagedMap[__Instance] = this;
                 Internal.ctor_0((__Instance + __PointerAdjustment));
@@ -15973,7 +16321,7 @@ namespace CppSharp
 
             public ParserTargetInfo(global::CppSharp.Parser.ParserTargetInfo _0)
             {
-                __Instance = Marshal.AllocHGlobal(160);
+                __Instance = Marshal.AllocHGlobal(184);
                 __ownsNativeInstance = true;
                 NativeToManagedMap[__Instance] = this;
                 if (ReferenceEquals(_0, null))
diff --git a/src/CppParser/Bindings/CSharp/x86_64-linux-gnu/CppSharp.CppParser.cs b/src/CppParser/Bindings/CSharp/x86_64-linux-gnu/CppSharp.CppParser.cs
index cabceac0..0b43b4b9 100644
--- a/src/CppParser/Bindings/CSharp/x86_64-linux-gnu/CppSharp.CppParser.cs
+++ b/src/CppParser/Bindings/CSharp/x86_64-linux-gnu/CppSharp.CppParser.cs
@@ -3178,6 +3178,9 @@ namespace CppSharp
                     [FieldOffset(0)]
                     public uint Offset;
 
+                    [FieldOffset(8)]
+                    public global::std.basic_string.Internal Name;
+
                     [FieldOffset(16)]
                     public global::CppSharp.Parser.AST.QualifiedType.Internal QualifiedType;
 
@@ -3845,6 +3848,15 @@ namespace CppSharp
                     [FieldOffset(24)]
                     public int LineNumberEnd;
 
+                    [FieldOffset(32)]
+                    public global::std.basic_string.Internal Name;
+
+                    [FieldOffset(40)]
+                    public global::std.basic_string.Internal USR;
+
+                    [FieldOffset(48)]
+                    public global::std.basic_string.Internal DebugText;
+
                     [FieldOffset(56)]
                     public byte IsIncomplete;
 
@@ -4294,6 +4306,15 @@ namespace CppSharp
                     [FieldOffset(24)]
                     public int LineNumberEnd;
 
+                    [FieldOffset(32)]
+                    public global::std.basic_string.Internal Name;
+
+                    [FieldOffset(40)]
+                    public global::std.basic_string.Internal USR;
+
+                    [FieldOffset(48)]
+                    public global::std.basic_string.Internal DebugText;
+
                     [FieldOffset(56)]
                     public byte IsIncomplete;
 
@@ -4912,6 +4933,15 @@ namespace CppSharp
                     [FieldOffset(24)]
                     public int LineNumberEnd;
 
+                    [FieldOffset(32)]
+                    public global::std.basic_string.Internal Name;
+
+                    [FieldOffset(40)]
+                    public global::std.basic_string.Internal USR;
+
+                    [FieldOffset(48)]
+                    public global::std.basic_string.Internal DebugText;
+
                     [FieldOffset(56)]
                     public byte IsIncomplete;
 
@@ -5053,6 +5083,15 @@ namespace CppSharp
                     [FieldOffset(24)]
                     public int LineNumberEnd;
 
+                    [FieldOffset(32)]
+                    public global::std.basic_string.Internal Name;
+
+                    [FieldOffset(40)]
+                    public global::std.basic_string.Internal USR;
+
+                    [FieldOffset(48)]
+                    public global::std.basic_string.Internal DebugText;
+
                     [FieldOffset(56)]
                     public byte IsIncomplete;
 
@@ -5180,6 +5219,15 @@ namespace CppSharp
                     [FieldOffset(24)]
                     public int LineNumberEnd;
 
+                    [FieldOffset(32)]
+                    public global::std.basic_string.Internal Name;
+
+                    [FieldOffset(40)]
+                    public global::std.basic_string.Internal USR;
+
+                    [FieldOffset(48)]
+                    public global::std.basic_string.Internal DebugText;
+
                     [FieldOffset(56)]
                     public byte IsIncomplete;
 
@@ -5328,6 +5376,15 @@ namespace CppSharp
                     [FieldOffset(24)]
                     public int LineNumberEnd;
 
+                    [FieldOffset(32)]
+                    public global::std.basic_string.Internal Name;
+
+                    [FieldOffset(40)]
+                    public global::std.basic_string.Internal USR;
+
+                    [FieldOffset(48)]
+                    public global::std.basic_string.Internal DebugText;
+
                     [FieldOffset(56)]
                     public byte IsIncomplete;
 
@@ -5461,6 +5518,9 @@ namespace CppSharp
                     [FieldOffset(8)]
                     public global::System.IntPtr Decl;
 
+                    [FieldOffset(16)]
+                    public global::std.basic_string.Internal String;
+
                     [SuppressUnmanagedCodeSecurity]
                     [DllImport("CppSharp.CppParser.dll", CallingConvention = global::System.Runtime.InteropServices.CallingConvention.Cdecl,
                         EntryPoint="_ZN8CppSharp9CppParser3AST9StatementC2ERKS2_")]
@@ -5605,6 +5665,9 @@ namespace CppSharp
                     [FieldOffset(8)]
                     public global::System.IntPtr Decl;
 
+                    [FieldOffset(16)]
+                    public global::std.basic_string.Internal String;
+
                     [SuppressUnmanagedCodeSecurity]
                     [DllImport("CppSharp.CppParser.dll", CallingConvention = global::System.Runtime.InteropServices.CallingConvention.Cdecl,
                         EntryPoint="_ZN8CppSharp9CppParser3AST10ExpressionC2ERKS2_")]
@@ -5682,12 +5745,18 @@ namespace CppSharp
                     [FieldOffset(8)]
                     public global::System.IntPtr Decl;
 
+                    [FieldOffset(16)]
+                    public global::std.basic_string.Internal String;
+
                     [FieldOffset(24)]
                     public global::System.IntPtr LHS;
 
                     [FieldOffset(32)]
                     public global::System.IntPtr RHS;
 
+                    [FieldOffset(40)]
+                    public global::std.basic_string.Internal OpcodeStr;
+
                     [SuppressUnmanagedCodeSecurity]
                     [DllImport("CppSharp.CppParser.dll", CallingConvention = global::System.Runtime.InteropServices.CallingConvention.Cdecl,
                         EntryPoint="_ZN8CppSharp9CppParser3AST14BinaryOperatorC2ERKS2_")]
@@ -5827,6 +5896,9 @@ namespace CppSharp
                     [FieldOffset(8)]
                     public global::System.IntPtr Decl;
 
+                    [FieldOffset(16)]
+                    public global::std.basic_string.Internal String;
+
                     [SuppressUnmanagedCodeSecurity]
                     [DllImport("CppSharp.CppParser.dll", CallingConvention = global::System.Runtime.InteropServices.CallingConvention.Cdecl,
                         EntryPoint="_ZN8CppSharp9CppParser3AST8CallExprC2ERKS2_")]
@@ -5957,6 +6029,9 @@ namespace CppSharp
                     [FieldOffset(8)]
                     public global::System.IntPtr Decl;
 
+                    [FieldOffset(16)]
+                    public global::std.basic_string.Internal String;
+
                     [SuppressUnmanagedCodeSecurity]
                     [DllImport("CppSharp.CppParser.dll", CallingConvention = global::System.Runtime.InteropServices.CallingConvention.Cdecl,
                         EntryPoint="_ZN8CppSharp9CppParser3AST16CXXConstructExprC2ERKS2_")]
@@ -6099,6 +6174,15 @@ namespace CppSharp
                     [FieldOffset(24)]
                     public int LineNumberEnd;
 
+                    [FieldOffset(32)]
+                    public global::std.basic_string.Internal Name;
+
+                    [FieldOffset(40)]
+                    public global::std.basic_string.Internal USR;
+
+                    [FieldOffset(48)]
+                    public global::std.basic_string.Internal DebugText;
+
                     [FieldOffset(56)]
                     public byte IsIncomplete;
 
@@ -6308,6 +6392,15 @@ namespace CppSharp
                     [FieldOffset(24)]
                     public int LineNumberEnd;
 
+                    [FieldOffset(32)]
+                    public global::std.basic_string.Internal Name;
+
+                    [FieldOffset(40)]
+                    public global::std.basic_string.Internal USR;
+
+                    [FieldOffset(48)]
+                    public global::std.basic_string.Internal DebugText;
+
                     [FieldOffset(56)]
                     public byte IsIncomplete;
 
@@ -6353,6 +6446,12 @@ namespace CppSharp
                     [FieldOffset(144)]
                     public global::CppSharp.Parser.AST.CXXOperatorKind OperatorKind;
 
+                    [FieldOffset(152)]
+                    public global::std.basic_string.Internal Mangled;
+
+                    [FieldOffset(160)]
+                    public global::std.basic_string.Internal Signature;
+
                     [FieldOffset(168)]
                     public global::CppSharp.Parser.AST.CallingConvention CallingConvention;
 
@@ -6723,6 +6822,15 @@ namespace CppSharp
                     [FieldOffset(24)]
                     public int LineNumberEnd;
 
+                    [FieldOffset(32)]
+                    public global::std.basic_string.Internal Name;
+
+                    [FieldOffset(40)]
+                    public global::std.basic_string.Internal USR;
+
+                    [FieldOffset(48)]
+                    public global::std.basic_string.Internal DebugText;
+
                     [FieldOffset(56)]
                     public byte IsIncomplete;
 
@@ -6768,6 +6876,12 @@ namespace CppSharp
                     [FieldOffset(144)]
                     public global::CppSharp.Parser.AST.CXXOperatorKind OperatorKind;
 
+                    [FieldOffset(152)]
+                    public global::std.basic_string.Internal Mangled;
+
+                    [FieldOffset(160)]
+                    public global::std.basic_string.Internal Signature;
+
                     [FieldOffset(168)]
                     public global::CppSharp.Parser.AST.CallingConvention CallingConvention;
 
@@ -7040,6 +7154,15 @@ namespace CppSharp
                     [FieldOffset(24)]
                     public int LineNumberEnd;
 
+                    [FieldOffset(32)]
+                    public global::std.basic_string.Internal Name;
+
+                    [FieldOffset(40)]
+                    public global::std.basic_string.Internal USR;
+
+                    [FieldOffset(48)]
+                    public global::std.basic_string.Internal DebugText;
+
                     [FieldOffset(56)]
                     public byte IsIncomplete;
 
@@ -7140,6 +7263,15 @@ namespace CppSharp
                         [FieldOffset(24)]
                         public int LineNumberEnd;
 
+                        [FieldOffset(32)]
+                        public global::std.basic_string.Internal Name;
+
+                        [FieldOffset(40)]
+                        public global::std.basic_string.Internal USR;
+
+                        [FieldOffset(48)]
+                        public global::std.basic_string.Internal DebugText;
+
                         [FieldOffset(56)]
                         public byte IsIncomplete;
 
@@ -7161,6 +7293,9 @@ namespace CppSharp
                         [FieldOffset(112)]
                         public global::System.IntPtr Comment;
 
+                        [FieldOffset(120)]
+                        public global::std.basic_string.Internal Expression;
+
                         [FieldOffset(128)]
                         public ulong Value;
 
@@ -7452,6 +7587,15 @@ namespace CppSharp
                     [FieldOffset(24)]
                     public int LineNumberEnd;
 
+                    [FieldOffset(32)]
+                    public global::std.basic_string.Internal Name;
+
+                    [FieldOffset(40)]
+                    public global::std.basic_string.Internal USR;
+
+                    [FieldOffset(48)]
+                    public global::std.basic_string.Internal DebugText;
+
                     [FieldOffset(56)]
                     public byte IsIncomplete;
 
@@ -7473,6 +7617,9 @@ namespace CppSharp
                     [FieldOffset(112)]
                     public global::System.IntPtr Comment;
 
+                    [FieldOffset(120)]
+                    public global::std.basic_string.Internal Mangled;
+
                     [FieldOffset(128)]
                     public global::CppSharp.Parser.AST.QualifiedType.Internal QualifiedType;
 
@@ -7772,6 +7919,15 @@ namespace CppSharp
                     [FieldOffset(24)]
                     public int LineNumberEnd;
 
+                    [FieldOffset(32)]
+                    public global::std.basic_string.Internal Name;
+
+                    [FieldOffset(40)]
+                    public global::std.basic_string.Internal USR;
+
+                    [FieldOffset(48)]
+                    public global::std.basic_string.Internal DebugText;
+
                     [FieldOffset(56)]
                     public byte IsIncomplete;
 
@@ -7965,6 +8121,15 @@ namespace CppSharp
                     [FieldOffset(24)]
                     public int LineNumberEnd;
 
+                    [FieldOffset(32)]
+                    public global::std.basic_string.Internal Name;
+
+                    [FieldOffset(40)]
+                    public global::std.basic_string.Internal USR;
+
+                    [FieldOffset(48)]
+                    public global::std.basic_string.Internal DebugText;
+
                     [FieldOffset(56)]
                     public byte IsIncomplete;
 
@@ -8089,6 +8254,15 @@ namespace CppSharp
                     [FieldOffset(24)]
                     public int LineNumberEnd;
 
+                    [FieldOffset(32)]
+                    public global::std.basic_string.Internal Name;
+
+                    [FieldOffset(40)]
+                    public global::std.basic_string.Internal USR;
+
+                    [FieldOffset(48)]
+                    public global::std.basic_string.Internal DebugText;
+
                     [FieldOffset(56)]
                     public byte IsIncomplete;
 
@@ -8593,6 +8767,15 @@ namespace CppSharp
                     [FieldOffset(24)]
                     public int LineNumberEnd;
 
+                    [FieldOffset(32)]
+                    public global::std.basic_string.Internal Name;
+
+                    [FieldOffset(40)]
+                    public global::std.basic_string.Internal USR;
+
+                    [FieldOffset(48)]
+                    public global::std.basic_string.Internal DebugText;
+
                     [FieldOffset(56)]
                     public byte IsIncomplete;
 
@@ -8806,6 +8989,15 @@ namespace CppSharp
                     [FieldOffset(24)]
                     public int LineNumberEnd;
 
+                    [FieldOffset(32)]
+                    public global::std.basic_string.Internal Name;
+
+                    [FieldOffset(40)]
+                    public global::std.basic_string.Internal USR;
+
+                    [FieldOffset(48)]
+                    public global::std.basic_string.Internal DebugText;
+
                     [FieldOffset(56)]
                     public byte IsIncomplete;
 
@@ -8933,6 +9125,15 @@ namespace CppSharp
                     [FieldOffset(24)]
                     public int LineNumberEnd;
 
+                    [FieldOffset(32)]
+                    public global::std.basic_string.Internal Name;
+
+                    [FieldOffset(40)]
+                    public global::std.basic_string.Internal USR;
+
+                    [FieldOffset(48)]
+                    public global::std.basic_string.Internal DebugText;
+
                     [FieldOffset(56)]
                     public byte IsIncomplete;
 
@@ -9106,6 +9307,15 @@ namespace CppSharp
                     [FieldOffset(24)]
                     public int LineNumberEnd;
 
+                    [FieldOffset(32)]
+                    public global::std.basic_string.Internal Name;
+
+                    [FieldOffset(40)]
+                    public global::std.basic_string.Internal USR;
+
+                    [FieldOffset(48)]
+                    public global::std.basic_string.Internal DebugText;
+
                     [FieldOffset(56)]
                     public byte IsIncomplete;
 
@@ -9281,6 +9491,15 @@ namespace CppSharp
                     [FieldOffset(24)]
                     public int LineNumberEnd;
 
+                    [FieldOffset(32)]
+                    public global::std.basic_string.Internal Name;
+
+                    [FieldOffset(40)]
+                    public global::std.basic_string.Internal USR;
+
+                    [FieldOffset(48)]
+                    public global::std.basic_string.Internal DebugText;
+
                     [FieldOffset(56)]
                     public byte IsIncomplete;
 
@@ -9430,6 +9649,15 @@ namespace CppSharp
                     [FieldOffset(24)]
                     public int LineNumberEnd;
 
+                    [FieldOffset(32)]
+                    public global::std.basic_string.Internal Name;
+
+                    [FieldOffset(40)]
+                    public global::std.basic_string.Internal USR;
+
+                    [FieldOffset(48)]
+                    public global::std.basic_string.Internal DebugText;
+
                     [FieldOffset(56)]
                     public byte IsIncomplete;
 
@@ -9632,6 +9860,15 @@ namespace CppSharp
                     [FieldOffset(24)]
                     public int LineNumberEnd;
 
+                    [FieldOffset(32)]
+                    public global::std.basic_string.Internal Name;
+
+                    [FieldOffset(40)]
+                    public global::std.basic_string.Internal USR;
+
+                    [FieldOffset(48)]
+                    public global::std.basic_string.Internal DebugText;
+
                     [FieldOffset(56)]
                     public byte IsIncomplete;
 
@@ -9812,6 +10049,15 @@ namespace CppSharp
                     [FieldOffset(24)]
                     public int LineNumberEnd;
 
+                    [FieldOffset(32)]
+                    public global::std.basic_string.Internal Name;
+
+                    [FieldOffset(40)]
+                    public global::std.basic_string.Internal USR;
+
+                    [FieldOffset(48)]
+                    public global::std.basic_string.Internal DebugText;
+
                     [FieldOffset(56)]
                     public byte IsIncomplete;
 
@@ -10055,6 +10301,15 @@ namespace CppSharp
                     [FieldOffset(24)]
                     public int LineNumberEnd;
 
+                    [FieldOffset(32)]
+                    public global::std.basic_string.Internal Name;
+
+                    [FieldOffset(40)]
+                    public global::std.basic_string.Internal USR;
+
+                    [FieldOffset(48)]
+                    public global::std.basic_string.Internal DebugText;
+
                     [FieldOffset(56)]
                     public byte IsIncomplete;
 
@@ -10218,6 +10473,15 @@ namespace CppSharp
                     [FieldOffset(24)]
                     public int LineNumberEnd;
 
+                    [FieldOffset(32)]
+                    public global::std.basic_string.Internal Name;
+
+                    [FieldOffset(40)]
+                    public global::std.basic_string.Internal USR;
+
+                    [FieldOffset(48)]
+                    public global::std.basic_string.Internal DebugText;
+
                     [FieldOffset(56)]
                     public byte IsIncomplete;
 
@@ -10599,6 +10863,15 @@ namespace CppSharp
                     [FieldOffset(24)]
                     public int LineNumberEnd;
 
+                    [FieldOffset(32)]
+                    public global::std.basic_string.Internal Name;
+
+                    [FieldOffset(40)]
+                    public global::std.basic_string.Internal USR;
+
+                    [FieldOffset(48)]
+                    public global::std.basic_string.Internal DebugText;
+
                     [FieldOffset(56)]
                     public byte IsIncomplete;
 
@@ -10866,6 +11139,12 @@ namespace CppSharp
                     [FieldOffset(16)]
                     public global::CppSharp.Parser.AST.DeclarationKind Kind;
 
+                    [FieldOffset(24)]
+                    public global::std.basic_string.Internal Name;
+
+                    [FieldOffset(32)]
+                    public global::std.basic_string.Internal Expression;
+
                     [FieldOffset(40)]
                     public int LineNumberStart;
 
@@ -11044,6 +11323,12 @@ namespace CppSharp
                     [FieldOffset(16)]
                     public global::CppSharp.Parser.AST.DeclarationKind Kind;
 
+                    [FieldOffset(24)]
+                    public global::std.basic_string.Internal Name;
+
+                    [FieldOffset(32)]
+                    public global::std.basic_string.Internal Text;
+
                     [FieldOffset(40)]
                     public global::System.IntPtr Definition;
 
@@ -11220,6 +11505,15 @@ namespace CppSharp
                     [FieldOffset(24)]
                     public int LineNumberEnd;
 
+                    [FieldOffset(32)]
+                    public global::std.basic_string.Internal Name;
+
+                    [FieldOffset(40)]
+                    public global::std.basic_string.Internal USR;
+
+                    [FieldOffset(48)]
+                    public global::std.basic_string.Internal DebugText;
+
                     [FieldOffset(56)]
                     public byte IsIncomplete;
 
@@ -11247,6 +11541,9 @@ namespace CppSharp
                     [FieldOffset(385)]
                     public byte IsInline;
 
+                    [FieldOffset(392)]
+                    public global::std.basic_string.Internal FileName;
+
                     [FieldOffset(400)]
                     public byte IsSystemHeader;
 
@@ -11427,6 +11724,9 @@ namespace CppSharp
                 [StructLayout(LayoutKind.Explicit, Size = 64)]
                 public partial struct Internal
                 {
+                    [FieldOffset(0)]
+                    public global::std.basic_string.Internal FileName;
+
                     [FieldOffset(8)]
                     public global::CppSharp.Parser.AST.ArchType ArchType;
 
@@ -12447,6 +12747,9 @@ namespace CppSharp
                     [StructLayout(LayoutKind.Explicit, Size = 8)]
                     public partial struct Internal
                     {
+                        [FieldOffset(0)]
+                        public global::std.basic_string.Internal Text;
+
                         [SuppressUnmanagedCodeSecurity]
                         [DllImport("CppSharp.CppParser.dll", CallingConvention = global::System.Runtime.InteropServices.CallingConvention.Cdecl,
                             EntryPoint="_ZN8CppSharp9CppParser3AST19BlockCommandComment8ArgumentC2Ev")]
@@ -12980,6 +13283,9 @@ namespace CppSharp
                     [FieldOffset(0)]
                     public global::CppSharp.Parser.AST.CommentKind Kind;
 
+                    [FieldOffset(8)]
+                    public global::std.basic_string.Internal Text;
+
                     [SuppressUnmanagedCodeSecurity]
                     [DllImport("CppSharp.CppParser.dll", CallingConvention = global::System.Runtime.InteropServices.CallingConvention.Cdecl,
                         EntryPoint="_ZN8CppSharp9CppParser3AST24VerbatimBlockLineCommentC2Ev")]
@@ -13247,6 +13553,9 @@ namespace CppSharp
                     [FieldOffset(8)]
                     public global::System.IntPtr ParagraphComment;
 
+                    [FieldOffset(40)]
+                    public global::std.basic_string.Internal Text;
+
                     [SuppressUnmanagedCodeSecurity]
                     [DllImport("CppSharp.CppParser.dll", CallingConvention = global::System.Runtime.InteropServices.CallingConvention.Cdecl,
                         EntryPoint="_ZN8CppSharp9CppParser3AST19VerbatimLineCommentC2Ev")]
@@ -13419,6 +13728,9 @@ namespace CppSharp
                     [StructLayout(LayoutKind.Explicit, Size = 8)]
                     public partial struct Internal
                     {
+                        [FieldOffset(0)]
+                        public global::std.basic_string.Internal Text;
+
                         [SuppressUnmanagedCodeSecurity]
                         [DllImport("CppSharp.CppParser.dll", CallingConvention = global::System.Runtime.InteropServices.CallingConvention.Cdecl,
                             EntryPoint="_ZN8CppSharp9CppParser3AST20InlineCommandComment8ArgumentC2Ev")]
@@ -13753,6 +14065,9 @@ namespace CppSharp
                     [FieldOffset(4)]
                     public byte HasTrailingNewline;
 
+                    [FieldOffset(8)]
+                    public global::std.basic_string.Internal TagName;
+
                     [SuppressUnmanagedCodeSecurity]
                     [DllImport("CppSharp.CppParser.dll", CallingConvention = global::System.Runtime.InteropServices.CallingConvention.Cdecl,
                         EntryPoint="_ZN8CppSharp9CppParser3AST19HTMLStartTagCommentC2Ev")]
@@ -13804,6 +14119,12 @@ namespace CppSharp
                     [StructLayout(LayoutKind.Explicit, Size = 16)]
                     public partial struct Internal
                     {
+                        [FieldOffset(0)]
+                        public global::std.basic_string.Internal Name;
+
+                        [FieldOffset(8)]
+                        public global::std.basic_string.Internal Value;
+
                         [SuppressUnmanagedCodeSecurity]
                         [DllImport("CppSharp.CppParser.dll", CallingConvention = global::System.Runtime.InteropServices.CallingConvention.Cdecl,
                             EntryPoint="_ZN8CppSharp9CppParser3AST19HTMLStartTagComment9AttributeC2Ev")]
@@ -14065,6 +14386,9 @@ namespace CppSharp
                     [FieldOffset(4)]
                     public byte HasTrailingNewline;
 
+                    [FieldOffset(8)]
+                    public global::std.basic_string.Internal TagName;
+
                     [SuppressUnmanagedCodeSecurity]
                     [DllImport("CppSharp.CppParser.dll", CallingConvention = global::System.Runtime.InteropServices.CallingConvention.Cdecl,
                         EntryPoint="_ZN8CppSharp9CppParser3AST17HTMLEndTagCommentC2Ev")]
@@ -14182,6 +14506,9 @@ namespace CppSharp
                     [FieldOffset(4)]
                     public byte HasTrailingNewline;
 
+                    [FieldOffset(8)]
+                    public global::std.basic_string.Internal Text;
+
                     [SuppressUnmanagedCodeSecurity]
                     [DllImport("CppSharp.CppParser.dll", CallingConvention = global::System.Runtime.InteropServices.CallingConvention.Cdecl,
                         EntryPoint="_ZN8CppSharp9CppParser3AST11TextCommentC2Ev")]
@@ -14296,6 +14623,12 @@ namespace CppSharp
                     [FieldOffset(0)]
                     public global::CppSharp.Parser.AST.RawCommentKind Kind;
 
+                    [FieldOffset(8)]
+                    public global::std.basic_string.Internal Text;
+
+                    [FieldOffset(16)]
+                    public global::std.basic_string.Internal BriefText;
+
                     [FieldOffset(24)]
                     public global::System.IntPtr FullCommentBlock;
 
@@ -14606,12 +14939,18 @@ namespace CppSharp
             [StructLayout(LayoutKind.Explicit, Size = 224)]
             public partial struct Internal
             {
+                [FieldOffset(24)]
+                public global::std.basic_string.Internal LibraryFile;
+
                 [FieldOffset(176)]
                 public global::System.IntPtr ASTContext;
 
                 [FieldOffset(184)]
                 public int ToolSetToUse;
 
+                [FieldOffset(192)]
+                public global::std.basic_string.Internal TargetTriple;
+
                 [FieldOffset(200)]
                 public global::CppSharp.Parser.AST.CppAbi Abi;
 
@@ -15235,6 +15574,12 @@ namespace CppSharp
             [StructLayout(LayoutKind.Explicit, Size = 32)]
             public partial struct Internal
             {
+                [FieldOffset(0)]
+                public global::std.basic_string.Internal FileName;
+
+                [FieldOffset(8)]
+                public global::std.basic_string.Internal Message;
+
                 [FieldOffset(16)]
                 public global::CppSharp.Parser.ParserDiagnosticLevel Level;
 
@@ -15784,6 +16129,9 @@ namespace CppSharp
             [StructLayout(LayoutKind.Explicit, Size = 160)]
             public partial struct Internal
             {
+                [FieldOffset(0)]
+                public global::std.basic_string.Internal ABI;
+
                 [FieldOffset(8)]
                 public global::CppSharp.Parser.ParserIntType Char16Type;
 
diff --git a/src/CppParser/Bindings/CSharp/x86_64-pc-win32-msvc/CppSharp.CppParser.cs b/src/CppParser/Bindings/CSharp/x86_64-pc-win32-msvc/CppSharp.CppParser.cs
index 1fca3ba5..940892d2 100644
--- a/src/CppParser/Bindings/CSharp/x86_64-pc-win32-msvc/CppSharp.CppParser.cs
+++ b/src/CppParser/Bindings/CSharp/x86_64-pc-win32-msvc/CppSharp.CppParser.cs
@@ -3179,6 +3179,9 @@ namespace CppSharp
                     [FieldOffset(0)]
                     public uint Offset;
 
+                    [FieldOffset(8)]
+                    public global::std.basic_string.Internal Name;
+
                     [FieldOffset(40)]
                     public global::CppSharp.Parser.AST.QualifiedType.Internal QualifiedType;
 
@@ -3846,6 +3849,15 @@ namespace CppSharp
                     [FieldOffset(24)]
                     public int LineNumberEnd;
 
+                    [FieldOffset(32)]
+                    public global::std.basic_string.Internal Name;
+
+                    [FieldOffset(64)]
+                    public global::std.basic_string.Internal USR;
+
+                    [FieldOffset(96)]
+                    public global::std.basic_string.Internal DebugText;
+
                     [FieldOffset(128)]
                     public byte IsIncomplete;
 
@@ -4295,6 +4307,15 @@ namespace CppSharp
                     [FieldOffset(24)]
                     public int LineNumberEnd;
 
+                    [FieldOffset(32)]
+                    public global::std.basic_string.Internal Name;
+
+                    [FieldOffset(64)]
+                    public global::std.basic_string.Internal USR;
+
+                    [FieldOffset(96)]
+                    public global::std.basic_string.Internal DebugText;
+
                     [FieldOffset(128)]
                     public byte IsIncomplete;
 
@@ -4913,6 +4934,15 @@ namespace CppSharp
                     [FieldOffset(24)]
                     public int LineNumberEnd;
 
+                    [FieldOffset(32)]
+                    public global::std.basic_string.Internal Name;
+
+                    [FieldOffset(64)]
+                    public global::std.basic_string.Internal USR;
+
+                    [FieldOffset(96)]
+                    public global::std.basic_string.Internal DebugText;
+
                     [FieldOffset(128)]
                     public byte IsIncomplete;
 
@@ -5054,6 +5084,15 @@ namespace CppSharp
                     [FieldOffset(24)]
                     public int LineNumberEnd;
 
+                    [FieldOffset(32)]
+                    public global::std.basic_string.Internal Name;
+
+                    [FieldOffset(64)]
+                    public global::std.basic_string.Internal USR;
+
+                    [FieldOffset(96)]
+                    public global::std.basic_string.Internal DebugText;
+
                     [FieldOffset(128)]
                     public byte IsIncomplete;
 
@@ -5181,6 +5220,15 @@ namespace CppSharp
                     [FieldOffset(24)]
                     public int LineNumberEnd;
 
+                    [FieldOffset(32)]
+                    public global::std.basic_string.Internal Name;
+
+                    [FieldOffset(64)]
+                    public global::std.basic_string.Internal USR;
+
+                    [FieldOffset(96)]
+                    public global::std.basic_string.Internal DebugText;
+
                     [FieldOffset(128)]
                     public byte IsIncomplete;
 
@@ -5329,6 +5377,15 @@ namespace CppSharp
                     [FieldOffset(24)]
                     public int LineNumberEnd;
 
+                    [FieldOffset(32)]
+                    public global::std.basic_string.Internal Name;
+
+                    [FieldOffset(64)]
+                    public global::std.basic_string.Internal USR;
+
+                    [FieldOffset(96)]
+                    public global::std.basic_string.Internal DebugText;
+
                     [FieldOffset(128)]
                     public byte IsIncomplete;
 
@@ -5462,6 +5519,9 @@ namespace CppSharp
                     [FieldOffset(8)]
                     public global::System.IntPtr Decl;
 
+                    [FieldOffset(16)]
+                    public global::std.basic_string.Internal String;
+
                     [SuppressUnmanagedCodeSecurity]
                     [DllImport("CppSharp.CppParser.dll", CallingConvention = global::System.Runtime.InteropServices.CallingConvention.Cdecl,
                         EntryPoint="??0Statement@AST@CppParser@CppSharp@@QEAA@AEBV0123@@Z")]
@@ -5606,6 +5666,9 @@ namespace CppSharp
                     [FieldOffset(8)]
                     public global::System.IntPtr Decl;
 
+                    [FieldOffset(16)]
+                    public global::std.basic_string.Internal String;
+
                     [SuppressUnmanagedCodeSecurity]
                     [DllImport("CppSharp.CppParser.dll", CallingConvention = global::System.Runtime.InteropServices.CallingConvention.Cdecl,
                         EntryPoint="??0Expression@AST@CppParser@CppSharp@@QEAA@AEBV0123@@Z")]
@@ -5683,12 +5746,18 @@ namespace CppSharp
                     [FieldOffset(8)]
                     public global::System.IntPtr Decl;
 
+                    [FieldOffset(16)]
+                    public global::std.basic_string.Internal String;
+
                     [FieldOffset(48)]
                     public global::System.IntPtr LHS;
 
                     [FieldOffset(56)]
                     public global::System.IntPtr RHS;
 
+                    [FieldOffset(64)]
+                    public global::std.basic_string.Internal OpcodeStr;
+
                     [SuppressUnmanagedCodeSecurity]
                     [DllImport("CppSharp.CppParser.dll", CallingConvention = global::System.Runtime.InteropServices.CallingConvention.Cdecl,
                         EntryPoint="??0BinaryOperator@AST@CppParser@CppSharp@@QEAA@AEBV0123@@Z")]
@@ -5828,6 +5897,9 @@ namespace CppSharp
                     [FieldOffset(8)]
                     public global::System.IntPtr Decl;
 
+                    [FieldOffset(16)]
+                    public global::std.basic_string.Internal String;
+
                     [SuppressUnmanagedCodeSecurity]
                     [DllImport("CppSharp.CppParser.dll", CallingConvention = global::System.Runtime.InteropServices.CallingConvention.Cdecl,
                         EntryPoint="??0CallExpr@AST@CppParser@CppSharp@@QEAA@AEBV0123@@Z")]
@@ -5958,6 +6030,9 @@ namespace CppSharp
                     [FieldOffset(8)]
                     public global::System.IntPtr Decl;
 
+                    [FieldOffset(16)]
+                    public global::std.basic_string.Internal String;
+
                     [SuppressUnmanagedCodeSecurity]
                     [DllImport("CppSharp.CppParser.dll", CallingConvention = global::System.Runtime.InteropServices.CallingConvention.Cdecl,
                         EntryPoint="??0CXXConstructExpr@AST@CppParser@CppSharp@@QEAA@AEBV0123@@Z")]
@@ -6100,6 +6175,15 @@ namespace CppSharp
                     [FieldOffset(24)]
                     public int LineNumberEnd;
 
+                    [FieldOffset(32)]
+                    public global::std.basic_string.Internal Name;
+
+                    [FieldOffset(64)]
+                    public global::std.basic_string.Internal USR;
+
+                    [FieldOffset(96)]
+                    public global::std.basic_string.Internal DebugText;
+
                     [FieldOffset(128)]
                     public byte IsIncomplete;
 
@@ -6309,6 +6393,15 @@ namespace CppSharp
                     [FieldOffset(24)]
                     public int LineNumberEnd;
 
+                    [FieldOffset(32)]
+                    public global::std.basic_string.Internal Name;
+
+                    [FieldOffset(64)]
+                    public global::std.basic_string.Internal USR;
+
+                    [FieldOffset(96)]
+                    public global::std.basic_string.Internal DebugText;
+
                     [FieldOffset(128)]
                     public byte IsIncomplete;
 
@@ -6354,6 +6447,12 @@ namespace CppSharp
                     [FieldOffset(216)]
                     public global::CppSharp.Parser.AST.CXXOperatorKind OperatorKind;
 
+                    [FieldOffset(224)]
+                    public global::std.basic_string.Internal Mangled;
+
+                    [FieldOffset(256)]
+                    public global::std.basic_string.Internal Signature;
+
                     [FieldOffset(288)]
                     public global::CppSharp.Parser.AST.CallingConvention CallingConvention;
 
@@ -6724,6 +6823,15 @@ namespace CppSharp
                     [FieldOffset(24)]
                     public int LineNumberEnd;
 
+                    [FieldOffset(32)]
+                    public global::std.basic_string.Internal Name;
+
+                    [FieldOffset(64)]
+                    public global::std.basic_string.Internal USR;
+
+                    [FieldOffset(96)]
+                    public global::std.basic_string.Internal DebugText;
+
                     [FieldOffset(128)]
                     public byte IsIncomplete;
 
@@ -6769,6 +6877,12 @@ namespace CppSharp
                     [FieldOffset(216)]
                     public global::CppSharp.Parser.AST.CXXOperatorKind OperatorKind;
 
+                    [FieldOffset(224)]
+                    public global::std.basic_string.Internal Mangled;
+
+                    [FieldOffset(256)]
+                    public global::std.basic_string.Internal Signature;
+
                     [FieldOffset(288)]
                     public global::CppSharp.Parser.AST.CallingConvention CallingConvention;
 
@@ -7041,6 +7155,15 @@ namespace CppSharp
                     [FieldOffset(24)]
                     public int LineNumberEnd;
 
+                    [FieldOffset(32)]
+                    public global::std.basic_string.Internal Name;
+
+                    [FieldOffset(64)]
+                    public global::std.basic_string.Internal USR;
+
+                    [FieldOffset(96)]
+                    public global::std.basic_string.Internal DebugText;
+
                     [FieldOffset(128)]
                     public byte IsIncomplete;
 
@@ -7141,6 +7264,15 @@ namespace CppSharp
                         [FieldOffset(24)]
                         public int LineNumberEnd;
 
+                        [FieldOffset(32)]
+                        public global::std.basic_string.Internal Name;
+
+                        [FieldOffset(64)]
+                        public global::std.basic_string.Internal USR;
+
+                        [FieldOffset(96)]
+                        public global::std.basic_string.Internal DebugText;
+
                         [FieldOffset(128)]
                         public byte IsIncomplete;
 
@@ -7162,6 +7294,9 @@ namespace CppSharp
                         [FieldOffset(184)]
                         public global::System.IntPtr Comment;
 
+                        [FieldOffset(192)]
+                        public global::std.basic_string.Internal Expression;
+
                         [FieldOffset(224)]
                         public ulong Value;
 
@@ -7453,6 +7588,15 @@ namespace CppSharp
                     [FieldOffset(24)]
                     public int LineNumberEnd;
 
+                    [FieldOffset(32)]
+                    public global::std.basic_string.Internal Name;
+
+                    [FieldOffset(64)]
+                    public global::std.basic_string.Internal USR;
+
+                    [FieldOffset(96)]
+                    public global::std.basic_string.Internal DebugText;
+
                     [FieldOffset(128)]
                     public byte IsIncomplete;
 
@@ -7474,6 +7618,9 @@ namespace CppSharp
                     [FieldOffset(184)]
                     public global::System.IntPtr Comment;
 
+                    [FieldOffset(192)]
+                    public global::std.basic_string.Internal Mangled;
+
                     [FieldOffset(224)]
                     public global::CppSharp.Parser.AST.QualifiedType.Internal QualifiedType;
 
@@ -7773,6 +7920,15 @@ namespace CppSharp
                     [FieldOffset(24)]
                     public int LineNumberEnd;
 
+                    [FieldOffset(32)]
+                    public global::std.basic_string.Internal Name;
+
+                    [FieldOffset(64)]
+                    public global::std.basic_string.Internal USR;
+
+                    [FieldOffset(96)]
+                    public global::std.basic_string.Internal DebugText;
+
                     [FieldOffset(128)]
                     public byte IsIncomplete;
 
@@ -7966,6 +8122,15 @@ namespace CppSharp
                     [FieldOffset(24)]
                     public int LineNumberEnd;
 
+                    [FieldOffset(32)]
+                    public global::std.basic_string.Internal Name;
+
+                    [FieldOffset(64)]
+                    public global::std.basic_string.Internal USR;
+
+                    [FieldOffset(96)]
+                    public global::std.basic_string.Internal DebugText;
+
                     [FieldOffset(128)]
                     public byte IsIncomplete;
 
@@ -8090,6 +8255,15 @@ namespace CppSharp
                     [FieldOffset(24)]
                     public int LineNumberEnd;
 
+                    [FieldOffset(32)]
+                    public global::std.basic_string.Internal Name;
+
+                    [FieldOffset(64)]
+                    public global::std.basic_string.Internal USR;
+
+                    [FieldOffset(96)]
+                    public global::std.basic_string.Internal DebugText;
+
                     [FieldOffset(128)]
                     public byte IsIncomplete;
 
@@ -8594,6 +8768,15 @@ namespace CppSharp
                     [FieldOffset(24)]
                     public int LineNumberEnd;
 
+                    [FieldOffset(32)]
+                    public global::std.basic_string.Internal Name;
+
+                    [FieldOffset(64)]
+                    public global::std.basic_string.Internal USR;
+
+                    [FieldOffset(96)]
+                    public global::std.basic_string.Internal DebugText;
+
                     [FieldOffset(128)]
                     public byte IsIncomplete;
 
@@ -8807,6 +8990,15 @@ namespace CppSharp
                     [FieldOffset(24)]
                     public int LineNumberEnd;
 
+                    [FieldOffset(32)]
+                    public global::std.basic_string.Internal Name;
+
+                    [FieldOffset(64)]
+                    public global::std.basic_string.Internal USR;
+
+                    [FieldOffset(96)]
+                    public global::std.basic_string.Internal DebugText;
+
                     [FieldOffset(128)]
                     public byte IsIncomplete;
 
@@ -8934,6 +9126,15 @@ namespace CppSharp
                     [FieldOffset(24)]
                     public int LineNumberEnd;
 
+                    [FieldOffset(32)]
+                    public global::std.basic_string.Internal Name;
+
+                    [FieldOffset(64)]
+                    public global::std.basic_string.Internal USR;
+
+                    [FieldOffset(96)]
+                    public global::std.basic_string.Internal DebugText;
+
                     [FieldOffset(128)]
                     public byte IsIncomplete;
 
@@ -9107,6 +9308,15 @@ namespace CppSharp
                     [FieldOffset(24)]
                     public int LineNumberEnd;
 
+                    [FieldOffset(32)]
+                    public global::std.basic_string.Internal Name;
+
+                    [FieldOffset(64)]
+                    public global::std.basic_string.Internal USR;
+
+                    [FieldOffset(96)]
+                    public global::std.basic_string.Internal DebugText;
+
                     [FieldOffset(128)]
                     public byte IsIncomplete;
 
@@ -9282,6 +9492,15 @@ namespace CppSharp
                     [FieldOffset(24)]
                     public int LineNumberEnd;
 
+                    [FieldOffset(32)]
+                    public global::std.basic_string.Internal Name;
+
+                    [FieldOffset(64)]
+                    public global::std.basic_string.Internal USR;
+
+                    [FieldOffset(96)]
+                    public global::std.basic_string.Internal DebugText;
+
                     [FieldOffset(128)]
                     public byte IsIncomplete;
 
@@ -9431,6 +9650,15 @@ namespace CppSharp
                     [FieldOffset(24)]
                     public int LineNumberEnd;
 
+                    [FieldOffset(32)]
+                    public global::std.basic_string.Internal Name;
+
+                    [FieldOffset(64)]
+                    public global::std.basic_string.Internal USR;
+
+                    [FieldOffset(96)]
+                    public global::std.basic_string.Internal DebugText;
+
                     [FieldOffset(128)]
                     public byte IsIncomplete;
 
@@ -9633,6 +9861,15 @@ namespace CppSharp
                     [FieldOffset(24)]
                     public int LineNumberEnd;
 
+                    [FieldOffset(32)]
+                    public global::std.basic_string.Internal Name;
+
+                    [FieldOffset(64)]
+                    public global::std.basic_string.Internal USR;
+
+                    [FieldOffset(96)]
+                    public global::std.basic_string.Internal DebugText;
+
                     [FieldOffset(128)]
                     public byte IsIncomplete;
 
@@ -9813,6 +10050,15 @@ namespace CppSharp
                     [FieldOffset(24)]
                     public int LineNumberEnd;
 
+                    [FieldOffset(32)]
+                    public global::std.basic_string.Internal Name;
+
+                    [FieldOffset(64)]
+                    public global::std.basic_string.Internal USR;
+
+                    [FieldOffset(96)]
+                    public global::std.basic_string.Internal DebugText;
+
                     [FieldOffset(128)]
                     public byte IsIncomplete;
 
@@ -10056,6 +10302,15 @@ namespace CppSharp
                     [FieldOffset(24)]
                     public int LineNumberEnd;
 
+                    [FieldOffset(32)]
+                    public global::std.basic_string.Internal Name;
+
+                    [FieldOffset(64)]
+                    public global::std.basic_string.Internal USR;
+
+                    [FieldOffset(96)]
+                    public global::std.basic_string.Internal DebugText;
+
                     [FieldOffset(128)]
                     public byte IsIncomplete;
 
@@ -10219,6 +10474,15 @@ namespace CppSharp
                     [FieldOffset(24)]
                     public int LineNumberEnd;
 
+                    [FieldOffset(32)]
+                    public global::std.basic_string.Internal Name;
+
+                    [FieldOffset(64)]
+                    public global::std.basic_string.Internal USR;
+
+                    [FieldOffset(96)]
+                    public global::std.basic_string.Internal DebugText;
+
                     [FieldOffset(128)]
                     public byte IsIncomplete;
 
@@ -10600,6 +10864,15 @@ namespace CppSharp
                     [FieldOffset(24)]
                     public int LineNumberEnd;
 
+                    [FieldOffset(32)]
+                    public global::std.basic_string.Internal Name;
+
+                    [FieldOffset(64)]
+                    public global::std.basic_string.Internal USR;
+
+                    [FieldOffset(96)]
+                    public global::std.basic_string.Internal DebugText;
+
                     [FieldOffset(128)]
                     public byte IsIncomplete;
 
@@ -10867,6 +11140,12 @@ namespace CppSharp
                     [FieldOffset(16)]
                     public global::CppSharp.Parser.AST.DeclarationKind Kind;
 
+                    [FieldOffset(24)]
+                    public global::std.basic_string.Internal Name;
+
+                    [FieldOffset(56)]
+                    public global::std.basic_string.Internal Expression;
+
                     [FieldOffset(88)]
                     public int LineNumberStart;
 
@@ -11045,6 +11324,12 @@ namespace CppSharp
                     [FieldOffset(16)]
                     public global::CppSharp.Parser.AST.DeclarationKind Kind;
 
+                    [FieldOffset(24)]
+                    public global::std.basic_string.Internal Name;
+
+                    [FieldOffset(56)]
+                    public global::std.basic_string.Internal Text;
+
                     [FieldOffset(88)]
                     public global::System.IntPtr Definition;
 
@@ -11221,6 +11506,15 @@ namespace CppSharp
                     [FieldOffset(24)]
                     public int LineNumberEnd;
 
+                    [FieldOffset(32)]
+                    public global::std.basic_string.Internal Name;
+
+                    [FieldOffset(64)]
+                    public global::std.basic_string.Internal USR;
+
+                    [FieldOffset(96)]
+                    public global::std.basic_string.Internal DebugText;
+
                     [FieldOffset(128)]
                     public byte IsIncomplete;
 
@@ -11248,6 +11542,9 @@ namespace CppSharp
                     [FieldOffset(432)]
                     public byte IsInline;
 
+                    [FieldOffset(440)]
+                    public global::std.basic_string.Internal FileName;
+
                     [FieldOffset(472)]
                     public byte IsSystemHeader;
 
@@ -11428,6 +11725,9 @@ namespace CppSharp
                 [StructLayout(LayoutKind.Explicit, Size = 88)]
                 public partial struct Internal
                 {
+                    [FieldOffset(0)]
+                    public global::std.basic_string.Internal FileName;
+
                     [FieldOffset(32)]
                     public global::CppSharp.Parser.AST.ArchType ArchType;
 
@@ -12448,6 +12748,9 @@ namespace CppSharp
                     [StructLayout(LayoutKind.Explicit, Size = 32)]
                     public partial struct Internal
                     {
+                        [FieldOffset(0)]
+                        public global::std.basic_string.Internal Text;
+
                         [SuppressUnmanagedCodeSecurity]
                         [DllImport("CppSharp.CppParser.dll", CallingConvention = global::System.Runtime.InteropServices.CallingConvention.Cdecl,
                             EntryPoint="??0Argument@BlockCommandComment@AST@CppParser@CppSharp@@QEAA@XZ")]
@@ -12981,6 +13284,9 @@ namespace CppSharp
                     [FieldOffset(0)]
                     public global::CppSharp.Parser.AST.CommentKind Kind;
 
+                    [FieldOffset(8)]
+                    public global::std.basic_string.Internal Text;
+
                     [SuppressUnmanagedCodeSecurity]
                     [DllImport("CppSharp.CppParser.dll", CallingConvention = global::System.Runtime.InteropServices.CallingConvention.Cdecl,
                         EntryPoint="??0VerbatimBlockLineComment@AST@CppParser@CppSharp@@QEAA@XZ")]
@@ -13248,6 +13554,9 @@ namespace CppSharp
                     [FieldOffset(8)]
                     public global::System.IntPtr ParagraphComment;
 
+                    [FieldOffset(40)]
+                    public global::std.basic_string.Internal Text;
+
                     [SuppressUnmanagedCodeSecurity]
                     [DllImport("CppSharp.CppParser.dll", CallingConvention = global::System.Runtime.InteropServices.CallingConvention.Cdecl,
                         EntryPoint="??0VerbatimLineComment@AST@CppParser@CppSharp@@QEAA@XZ")]
@@ -13420,6 +13729,9 @@ namespace CppSharp
                     [StructLayout(LayoutKind.Explicit, Size = 32)]
                     public partial struct Internal
                     {
+                        [FieldOffset(0)]
+                        public global::std.basic_string.Internal Text;
+
                         [SuppressUnmanagedCodeSecurity]
                         [DllImport("CppSharp.CppParser.dll", CallingConvention = global::System.Runtime.InteropServices.CallingConvention.Cdecl,
                             EntryPoint="??0Argument@InlineCommandComment@AST@CppParser@CppSharp@@QEAA@XZ")]
@@ -13754,6 +14066,9 @@ namespace CppSharp
                     [FieldOffset(4)]
                     public byte HasTrailingNewline;
 
+                    [FieldOffset(8)]
+                    public global::std.basic_string.Internal TagName;
+
                     [SuppressUnmanagedCodeSecurity]
                     [DllImport("CppSharp.CppParser.dll", CallingConvention = global::System.Runtime.InteropServices.CallingConvention.Cdecl,
                         EntryPoint="??0HTMLStartTagComment@AST@CppParser@CppSharp@@QEAA@XZ")]
@@ -13805,6 +14120,12 @@ namespace CppSharp
                     [StructLayout(LayoutKind.Explicit, Size = 64)]
                     public partial struct Internal
                     {
+                        [FieldOffset(0)]
+                        public global::std.basic_string.Internal Name;
+
+                        [FieldOffset(32)]
+                        public global::std.basic_string.Internal Value;
+
                         [SuppressUnmanagedCodeSecurity]
                         [DllImport("CppSharp.CppParser.dll", CallingConvention = global::System.Runtime.InteropServices.CallingConvention.Cdecl,
                             EntryPoint="??0Attribute@HTMLStartTagComment@AST@CppParser@CppSharp@@QEAA@XZ")]
@@ -14066,6 +14387,9 @@ namespace CppSharp
                     [FieldOffset(4)]
                     public byte HasTrailingNewline;
 
+                    [FieldOffset(8)]
+                    public global::std.basic_string.Internal TagName;
+
                     [SuppressUnmanagedCodeSecurity]
                     [DllImport("CppSharp.CppParser.dll", CallingConvention = global::System.Runtime.InteropServices.CallingConvention.Cdecl,
                         EntryPoint="??0HTMLEndTagComment@AST@CppParser@CppSharp@@QEAA@XZ")]
@@ -14183,6 +14507,9 @@ namespace CppSharp
                     [FieldOffset(4)]
                     public byte HasTrailingNewline;
 
+                    [FieldOffset(8)]
+                    public global::std.basic_string.Internal Text;
+
                     [SuppressUnmanagedCodeSecurity]
                     [DllImport("CppSharp.CppParser.dll", CallingConvention = global::System.Runtime.InteropServices.CallingConvention.Cdecl,
                         EntryPoint="??0TextComment@AST@CppParser@CppSharp@@QEAA@XZ")]
@@ -14297,6 +14624,12 @@ namespace CppSharp
                     [FieldOffset(0)]
                     public global::CppSharp.Parser.AST.RawCommentKind Kind;
 
+                    [FieldOffset(8)]
+                    public global::std.basic_string.Internal Text;
+
+                    [FieldOffset(40)]
+                    public global::std.basic_string.Internal BriefText;
+
                     [FieldOffset(72)]
                     public global::System.IntPtr FullCommentBlock;
 
@@ -14607,12 +14940,18 @@ namespace CppSharp
             [StructLayout(LayoutKind.Explicit, Size = 272)]
             public partial struct Internal
             {
+                [FieldOffset(24)]
+                public global::std.basic_string.Internal LibraryFile;
+
                 [FieldOffset(200)]
                 public global::System.IntPtr ASTContext;
 
                 [FieldOffset(208)]
                 public int ToolSetToUse;
 
+                [FieldOffset(216)]
+                public global::std.basic_string.Internal TargetTriple;
+
                 [FieldOffset(248)]
                 public global::CppSharp.Parser.AST.CppAbi Abi;
 
@@ -15236,6 +15575,12 @@ namespace CppSharp
             [StructLayout(LayoutKind.Explicit, Size = 80)]
             public partial struct Internal
             {
+                [FieldOffset(0)]
+                public global::std.basic_string.Internal FileName;
+
+                [FieldOffset(32)]
+                public global::std.basic_string.Internal Message;
+
                 [FieldOffset(64)]
                 public global::CppSharp.Parser.ParserDiagnosticLevel Level;
 
@@ -15785,6 +16130,9 @@ namespace CppSharp
             [StructLayout(LayoutKind.Explicit, Size = 184)]
             public partial struct Internal
             {
+                [FieldOffset(0)]
+                public global::std.basic_string.Internal ABI;
+
                 [FieldOffset(32)]
                 public global::CppSharp.Parser.ParserIntType Char16Type;