-
-
Notifications
You must be signed in to change notification settings - Fork 64
Fix F macro definition #82
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
Conversation
I think this PR does not solve the problems illustrated at #62 (comment) and subsequent comments. I haven't got time to re-read those comments and comment on a proper approach, but I think this PR is unfortunately not enough to make this work... |
7dde89d
to
737660e
Compare
Memory usage change @ 737660e
Click for full report table
Click for full report CSV
|
Memory usage change @ 666a6f6
Click for full report table
Click for full report CSV
|
This fixed my build issue. It may not be the best fix, as @matthijskooijman suggests, but at least I'm unblocked now and can continue with my project. Thanks. |
Question @giulcioffi : Should |
@aentinger ArduinoCore-API provides an implementation of |
I'm still unsure there's a perfect way to tackle this. |
I think that the goal of this PR, to make However, I don't like the approach taken by this PR, namely to duplicate a file that's also shipped with avr-libc. I also wonder if it is even needed, since the So I would that simply removing the redefinition of
@facchinm, what failure are you referring to exactly? I think the problem here is simply that the API exposed by the combination of |
666a6f6
to
04105f5
Compare
Closing, for details see #62 (comment). |
This PR is intended to solve isse #62. The F() macro has been implemented as in typical AVR architecture: in
String.h
class __FlashStringHelper;
#define F(string_literal) (reinterpret_cast<const __FlashStringHelper *>(PSTR(string_literal)))
pgmspace.h
is not included anymore from ArduinoCore-API/api/deprecated-avr-comp, but is the one provided by avr-libc. It has been copied from there and inserted into a new foldertools
. This has been done to avoid modifications inside ArduinoCore-API.