Skip to content
This repository has been archived by the owner on Oct 16, 2024. It is now read-only.

User errors are swamped by cascading failures #3

Open
alicederyn opened this issue Feb 7, 2015 · 1 comment
Open

User errors are swamped by cascading failures #3

alicederyn opened this issue Feb 7, 2015 · 1 comment

Comments

@alicederyn
Copy link
Collaborator

FreeBuilder is designed to output a stub builder when the user supplies an erroneous type (e.g. private constructor, @Nullable getter) so the error message(s) won't be swamped by references to undefined methods.

Unfortunately, javac seems to discard all generated code once an error is issued (by any annotation processor). We should see if there is anything that can be done on our side. For instance, does postponing errors to the final round work?

@alicederyn alicederyn added the bug label Feb 10, 2015
@alicederyn alicederyn modified the milestones: 1.0-rc3, 1.0.1 Feb 11, 2015
@alicederyn
Copy link
Collaborator Author

Postponing errors has not worked, unfortunately. It looks like a contribution to javac itself will be required. Moving this off Milestone 1.0 (with great sadness).

@alicederyn alicederyn removed this from the 1.0 milestone Feb 27, 2015
alicederyn added a commit that referenced this issue Feb 27, 2015
…ated code to be ignored, triggering cascading failures throughout the user's code) by delaying error reporting until the end of the last round of processing. This did not work, unfortunately.

Also fixes an error in the generated code where "non-getter" abstract methods are not implemented, by simply dropping the Value and Partial types entirely if we issue any errors.
alicederyn added a commit that referenced this issue Mar 1, 2015
…ated code to be ignored, triggering cascading failures throughout the user's code) by delaying error reporting until the end of the last round of processing. This did not work, unfortunately.

Also fixes an error in the generated code where "non-getter" abstract methods are not implemented, by simply dropping the Value and Partial types entirely if we issue any errors.
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
None yet
Development

No branches or pull requests

1 participant