Skip to content

Conversation

tautschnig
Copy link
Collaborator

We previously silently accepted initialisers that weren't compile-time
constants, resulting in surprising behaviour: the assertion in the
enclosed regression test would fail, because x ended up being
initialised before y.

  • Each commit message has a non-empty body, explaining why the change was made.
  • n/a Methods or procedures I have added are documented, following the guidelines provided in CODING_STANDARD.md.
  • n/a The feature or user visible behaviour I have added or modified has been documented in the User Guide in doc/cprover-manual/
  • Regression or unit tests are included, or existing tests cover the modified code (in this case I have detailed which ones those are in the commit message).
  • n/a My commit message includes data points confirming performance improvements (if claimed).
  • My PR is restricted to a single feature or bugfix.
  • n/a White-space or formatting changes outside the feature-related changed lines are in commits of their own.

@tautschnig tautschnig assigned tautschnig and unassigned kroening Nov 17, 2021
@tautschnig tautschnig force-pushed the local-static branch 2 times, most recently from bc9627d to a42cebe Compare November 17, 2021 17:12
@codecov
Copy link

codecov bot commented Nov 17, 2021

Codecov Report

Merging #6461 (bc9627d) into develop (bfa4c2c) will decrease coverage by 0.05%.
The diff coverage is 65.70%.

❗ Current head bc9627d differs from pull request most recent head 1a86739. Consider uploading reports for the commit 1a86739 to get more accurate results
Impacted file tree graph

@@             Coverage Diff             @@
##           develop    #6461      +/-   ##
===========================================
- Coverage    76.01%   75.96%   -0.06%     
===========================================
  Files         1527     1542      +15     
  Lines       164465   165032     +567     
===========================================
+ Hits        125013   125360     +347     
- Misses       39452    39672     +220     
Impacted Files Coverage Δ
src/crangler/ctokenit.cpp 0.00% <0.00%> (ø)
src/crangler/ctokenit.h 0.00% <0.00%> (ø)
src/goto-programs/validate_goto_model.cpp 100.00% <ø> (ø)
src/goto-symex/frame.h 100.00% <ø> (ø)
src/goto-symex/goto_symex.h 92.30% <ø> (ø)
unit/goto-programs/goto_program_validate.cpp 100.00% <ø> (ø)
src/crangler/c_defines.cpp 41.66% <41.66%> (ø)
src/crangler/crangler_parse_options.cpp 56.25% <56.25%> (ø)
src/crangler/c_wrangler.cpp 58.29% <58.29%> (ø)
src/crangler/scanner.l 63.63% <63.63%> (ø)
... and 23 more

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update eddc014...1a86739. Read the comment docs.

…ants

Arrays and structs (and any nesting thereof) could also be compile-time
constants.
We previously silently accepted initialisers that weren't compile-time
constants, resulting in surprising behaviour: the assertion in the
enclosed regression test would fail, because x ended up being
initialised before y.
@tautschnig tautschnig merged commit 8aab2e5 into diffblue:develop Nov 18, 2021
@tautschnig tautschnig deleted the local-static branch November 18, 2021 20:14
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants