Goose  Timeline

Many hyperlinks are disabled.
Use anonymous login to enable hyperlinks.

11 check-ins using file bs/verify/verify.h version 1e62b306a5

2021-11-28
13:34
Verification: fixed incorrect handling of type predicates in function parameters check-in: c066339928 user: zlodo tags: trunk
2021-11-26
22:42
  • Fixed adding predicates to a type alias created with using that modified the original type
  • Fixed ambiguous parsing of using expressions that were mistook for overload redefinitions in some cases
check-in: 35ff2a536e user: zlodo tags: trunk
00:37
  • Parser: if an infix rules fails to parse, backtrack
  • Parser: it is now possible to define a contextual "default lhs value"
  • Parser: if an infix operator fails parsing, it is retried as an infix operator, using the default lhs value if there is one available
  • Type predicates: setup @val as the default lhs value inside of the proposition list context, so it is now possible to write u32[<10] instead of u32[@val<10]
check-in: 0184a27429 user: zlodo tags: trunk
2021-11-25
21:21
Got rid of the where operator. Predicates are now added to types simply by following the type with a proposition list. check-in: 23ecb4f9cb user: zlodo tags: trunk
20:30
  • simplified ref parsing implementation by using the parser's infix parsing rule helper
  • refactored "requires" and "ensures": they are now simply infix operators that take a function type on the lhs and a proposition list on the rhs
check-in: e1ede8dafa user: zlodo tags: trunk
2021-11-24
19:45
Propositions are now parsed like regular statement sequences, but using the proposition list under construction as the current builder check-in: 8be0ff932c user: zlodo tags: trunk
00:38
Removed a misleading comment check-in: ea3608d6e9 user: zlodo tags: trunk
00:03
  • Moved the hackish "cast" function from builtins to the prologue
  • Fixed failed eager evaluation of builtin function calls raising erorrs, instead of being ignored
  • Fixed the first local variable inside intrinsic functions getting a temporary index that aliases one of the params to hilarious effects
check-in: b8498ed590 user: zlodo tags: trunk
2021-11-23
19:45
  • Parser: when encountering a prefix bracket block, parse it into a propositions list.
  • Builtins: when a proposition list is dropped (ie used as a stand alone statement), convert it into assert instructions.
  • Builtins: remove the builtin assert function, now replaced with the above so that propositions are always enclosed in brackets, regardless of where they are used. Also removes the confusion of making the assert function a compile-time check when its traditionally a runtime check
check-in: 2ba2e560b1 user: zlodo tags: trunk
2021-11-22
20:33
Parser: split block parsing code check-in: a4eaf901ef user: zlodo tags: trunk
20:22
Function pre-conditions and post-conditions now use the same proposition lists as type predicates check-in: 1c335aeb04 user: zlodo tags: trunk