Skip to content

Commit 1ff17da

Browse files
committed
Documented the release of CppSharp 0.8.17.
Signed-off-by: Dimitar Dobrev <[email protected]>
1 parent ad5ce72 commit 1ff17da

File tree

1 file changed

+171
-0
lines changed

1 file changed

+171
-0
lines changed
Lines changed: 171 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,171 @@
1+
# CppSharp 0.8.17 25.12.2017
2+
3+
4+
5+
Collected extra symbols in the order of their compilation.
6+
7+
Fixed the generated C# when a specialisation of a template used as a secondary base has an invalid function.
8+
9+
Fixed the generated C# when a template interface specialised with another specialisation returns a template parameter.
10+
11+
Fixed the generated C# when a default arg is assigned a specialisation also used as a secondary base.
12+
13+
Fixed a crash when a constructor takes a template or specialisation.
14+
15+
Fixed the generated C# for public fields with type a dependent pointer.
16+
17+
Enabled classes having specializations for secondary bases to call their extensions.
18+
19+
Fixed the generated C# for subclasses of specialisations used as secondary bases.
20+
21+
Fixed the generated C# when a template specialization with extensions is used for a secondary base.
22+
23+
Extended the multiple inheritance to work for templates.
24+
25+
Fixed a regression causing public fields of type specialization to be ignored.
26+
27+
Fixed the generated C# for templates with optional arguments.
28+
29+
Represented "void" with "object" for template arguments in the generated C#.
30+
31+
Fixed the generated C# for public fields with type a dependent function pointer.
32+
33+
Fixed the generated C# when a constructor has a default parameter with type an external specialisation.
34+
35+
Set an index when marshalling the value in setters of properties.
36+
37+
Fixed the generated C# when a function uses an external specialisation.
38+
39+
Fixed the generated C# when a base class is an external specialisation.
40+
41+
Fixed the generated C# for indexers with dependent keys.
42+
43+
Fixed the generated C# for templated indexers specialised with enums.
44+
45+
Add compiler/abi information to LLVM package names on linux.
46+
47+
Exported entire specialisations when they only have valid functions.
48+
49+
Considered dependent fields when generating internals for types nested in templates.
50+
51+
Removed extensions for non-generated template specialisations.
52+
53+
Fixed the generated C# when a template returns a specialisation with itself as a type arg.
54+
55+
Fixed the generated C# for members of types nested in templates.
56+
57+
Fixed the generated C# when a template is nested in another.
58+
59+
Add ability for managed module wrapper to reference extra assemblies.
60+
61+
Re-added linux include path that was removed by mistake.
62+
63+
Enable debug information generation for all tests.
64+
65+
Fix debug output not being generated when AST element had no comment.
66+
67+
Explicitly link to libstdc++ on linux.
68+
69+
All arguments passed to `build/Compile.sh` are passed to premake. Allows more fine-grained build customization when using this shell script for compiling.
70+
71+
Tweak linux include dirs, previous change broke GCC7 include dirs on archlinux.
72+
73+
Consistent class/struct keywords fixed for cases where wrapper class would contain members from several different translation units.
74+
75+
Fix debug output breaking generated binding code.
76+
77+
Completely remove `GenerateUnformatted()` method.
78+
79+
CI: x64 builds on msvc and sudo requirement for travis
80+
81+
Always generate formatted code.
82+
83+
Fix `Delegates` name-space being not generated. In some cases `Delegates` name-space could be attached to a name-space which is not wrapped and as a result of that `Delegates` name-space was also not generated in wrapper code resulting in a wrapper build errors. Change adds extra logic which tries to find the correct library name-space if more than one name-space is present.
84+
85+
Consistently declare classes/structs. Fixes issue where compilation error is produced due to file name containing constants matching class marked as value type.
86+
87+
Fix linking to LLVM libs on linux, when system has llvm/clang installed.
88+
89+
Enable cxx11 abi for GCC 4.9+ on linux.
90+
91+
Worked around a bug in the Mono C# compiler when casting generics.
92+
93+
Fixed a crash when the body of a templated function contains references to non-functions.
94+
95+
Use correct LLVM build dir for includes from unpackaged LLVM builds
96+
97+
get_llvm_build_dir() returns "build" subdir if it exists, if not - subdir with package name.
98+
99+
Fix linked libs for linux
100+
101+
Use correct LLVM build dir for includes from unpackaged LLVM builds.
102+
103+
Removed a duplicate explicit instantiation from the tests.
104+
105+
Cloning llvm from git replaced with downloading archives of exact commits from github. This is much faster.
106+
107+
Worked around duplication of types nested in templates and forwarded.
108+
109+
Fixed a crash when passing null as an std::string on Unix.
110+
111+
Force-set platform type to managed targets.
112+
113+
Fix linux include paths in ParserGen and CLI generator.
114+
115+
Fix build errors in CppSharp.Parser.Bootstrap target.
116+
117+
Fixed a crash when there are parsing errors.
118+
119+
Fixed the collection of additional symbols to ignore warnings.
120+
121+
Fixed the generated C# when a constructor takes a specialisation.
122+
123+
Fixed a possible crash when instantiating template functions in the parser.
124+
125+
Fixed the generated C# for templates with fields other templates not used anywhere else.
126+
127+
Fixed the generated C# when using std::map.
128+
129+
Fixed the generated C# for specialisations with an ignored specialisation as an arg.
130+
131+
Fixed the generated C# for specialisations only used as type arguments.
132+
133+
Removed extensions for internal template specialisations.
134+
135+
Fixed the parsing of an undeclared template specialisation with an extension method.
136+
137+
Validated bodies of instantiated template functions.
138+
139+
Added a new field accessor synth kind.
140+
141+
Improved IsSynthetized check to handle property setters.
142+
143+
Improve get base method and property methods to work with generalized declarations.
144+
145+
Added AssociatedDeclaration to Declaration copy constructor.
146+
147+
Included template specialisations only used as returned types.
148+
149+
Included the destructor of std::allocator to the C++ symbols.
150+
151+
Prevented C++ generation for invalid specialised functions.
152+
153+
Fixed the generated C# for fixed arrays of Booleans
154+
155+
Updated to LLVM/Clang revisions 318543/318538 respectively.
156+
157+
Fixed the script for LLVM to handle paths with spaces.
158+
159+
Generalized method fields to declaration associations.
160+
161+
Improved debugging display for declarations.
162+
163+
Added optional visiting of property accessors.
164+
165+
CodeGenerator is now an IAstVisitor.
166+
167+
Cleaned up the additional parser options after parsing headers.
168+
169+
Fixed the generated C++ for symbols to be compatible with Clang.
170+
171+
Fixed the generated C# when a type nested in a template is forwarded.

0 commit comments

Comments
 (0)