Skip to content

Overwrite String functions during bytecode conversion #944

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

romainbrenguier
Copy link
Contributor

Replace all String functions in the preprocessing, even if they exist
already (e.g. if a model exists).
This implements issue diffblue/test-gen#360 .
This is based on PR #906

romainbrenguier and others added 11 commits May 19, 2017 16:45
This is a new implementation of the string preprocessing for Java
functions. Which now takes place during java bytecode processing
instead of being a step in the goto-program treatment.

Rename code_of_function to code_for_function

Update documentation

Minor corrections on the code

Make all methods non-static

This is to allow using class variables in them.
The conversion_functiont map had to be adapted.

Use class variable for refined string type

Instead of recreating a new refined string type each time it is
requested, we add a field to hold it in java_string_library_preprocess.
…onversion

Removing add_string_type declaration, not used anymore
Removing string_refine_preprocess from Makefile

Removing include of string_refine_preprocess
Changes requested by Matthias Guedemann, Peter Schrammel, and Chris Smowton.
Replace code.copy_to_operands() with code.add()
Correct implementation and usage of string_length_type()
Replace all String functions in the preprocessing, even if they exist
already (e.g. if a model exists).

This implements issue diffblue/test-gen#360
String classes that are present in a loaded model will generate a type
that may be different from the internal type constructed for Java
strings in cbmc. Thus we now create a String type and write it in the
table, possibly overwriting a pre-existing Java string type.
@romainbrenguier
Copy link
Contributor Author

This pull request is replaced by #983 so I'm closing this one

@romainbrenguier romainbrenguier deleted the pull-request/override-string-functions branch June 1, 2017 15:37
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant