-
Notifications
You must be signed in to change notification settings - Fork 14
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
CPP abstract class error when building with Lime #22
Comments
Does it compile if you enable full DCE? <haxeflag name="-dce" value="full" /> |
Compilation does succeed if DCE is set to full. Since my project does utilize reflection, I will have to find a way to enable DCE on only this library (unless another fix is available that can be implemented on this repo). |
I don't think there is anything we can change here. I suspect that hxcpp is somehow broken and emits wrong C++ code for classes that extend abstract classes. So I guess for a fix you would need to report this issue to the hxcpp team. You can try to use version 3.0.2 to see if it compiles, this version does not yet use abstract classes. |
The project successfully builds when reverting to As you suggested, I reported the issue at HaxeFoundation/haxe#10861 EDIT: Switching to 3.0.2, build works now in my main project. Will leave this issue open until the latest available version of this library works. |
This issue has been automatically marked as stale because it has not had recent activity. It will be closed in 7 days if no further activity occurs. If the issue is still valid, please add a respective comment to prevent this issue from being closed automatically. Thank you for your contributions. |
This issue is similar to that of #21, however after revisiting the issue recently and finding that the Travix tests function properly, I decided to perform a more thorough investigation.
As a result, I discovered the issue and have developed a minimal reproduction and provided additional logs.
The core issue is, I believe, with the
lime
framework, whose purpose is to provide additional utilities for cross-platform development, such as common interfaces for functionality like rendering. This library supercedes the build tools provided by Haxe, and some of the command line arguments it adds may be causing these build problems.I was able to reproduce my problems with the following steps:
haxelib install lime
)lime create HelloWorld
)project.xml
and add the haxelib (<haxelib name="haxe-concurrent" />
)Main.hx
to use the library (I simply added code which instantiates aRLock
and nothing else)lime build windows
)The build fails with an error relating to methods of an abstract class. I am not an expert in C++ compilation but my theory is that the issue arises from one of the build flags enforced by Lime.
I have uploaded the project where I reproduced the issue to GitHub Below are the full logs from the build process:
The text was updated successfully, but these errors were encountered: