Skip to content

Tags: purs3lab/HandlERR

Tags

v0.7-devbuild-2018-11-30

Toggle v0.7-devbuild-2018-11-30's commit message

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature. The key has expired.
Disallow some implicit void pointer conversions in checked scopes (co…

…rrectcomputation#590)

In memory-safe checked scopes, disallow implicit conversions to and from void pointer types when the non-void pointer type points to data that contains a checked pointer.   Disallow these conversions at assignments, call arguments, return statements, and arms of conditional expressions.   Memory-safe checked scopes are currently the default kind of checked scopes.   This addresses part of Github issue correctcomputation#571.

Also do some cleanup within the compiler.  Rename the checked scope specifier for the default checked scope from "BoundsAndTypes" to "Memory".   The original name is incorrect for the kind of safety that will be provided.

Testing:
- Add new tests to the Checked C repo for these cases.
- Passed automated testing on Windows and Linux.

v0.7-devbuild-2018-08-01

Toggle v0.7-devbuild-2018-08-01's commit message

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature. The key has expired.
Fix compiler assert about bounds expression already existing. (correc…

…tcomputation#537)

The children() method for iterating over chidren of AST cast expressions
was incorrectly including compiler-generated bounds expressions.  Child AST
nodes should be nodes that appear in the source program and additional
information shouldn't be treated as child nodes.   There were
complex IR invariants about when a bounds expression stored within a cast
expression was child AST node or not.

This change fixes the bug and simplifies the AST invariants. This fixes
issue correctcomputation#526. for cast expressions, there is now one entry for bounds expressions
declared as part of the program. There are separate nodes for normalized
bounds and inferred bounds.

Testing:
- Added a new regression test case for the failing case.
- Passes existing Checked C and clang Checked C tests.

v0.7-devbuild-2018-04-27-2018

Toggle v0.7-devbuild-2018-04-27-2018's commit message
Tag binary release.

v0.7-devbuild-2018-04-12

Toggle v0.7-devbuild-2018-04-12's commit message

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature. The key has expired.
Update README.md

Add a link to the compiler user manual.  Move some other information to the wiki.