Powered by OpenAIRE graph
Found an issue? Give us feedback
image/svg+xml art designer at PLoS, modified by Wikipedia users Nina, Beao, JakobVoss, and AnonMoos Open Access logo, converted into svg, designed by PLoS. This version with transparent background. http://commons.wikimedia.org/wiki/File:Open_Access_logo_PLoS_white.svg art designer at PLoS, modified by Wikipedia users Nina, Beao, JakobVoss, and AnonMoos http://www.plos.org/ ZENODOarrow_drop_down
image/svg+xml art designer at PLoS, modified by Wikipedia users Nina, Beao, JakobVoss, and AnonMoos Open Access logo, converted into svg, designed by PLoS. This version with transparent background. http://commons.wikimedia.org/wiki/File:Open_Access_logo_PLoS_white.svg art designer at PLoS, modified by Wikipedia users Nina, Beao, JakobVoss, and AnonMoos http://www.plos.org/
ZENODO
Software
Data sources: ZENODO
addClaim

alternative-intelligence-cp/nitpick: v0.40.x — Conditionals (if/else + the is ternary)

Authors: shaglama;

alternative-intelligence-cp/nitpick: v0.40.x — Conditionals (if/else + the is ternary)

Abstract

Nitpick v0.40.x — Conditionals (if / else if / else + the is ternary) The v0.40.x cycle hardened Nitpick's two conditional surfaces — the if/else if/else statement chain and the is (cond) : a : b inline value-ternary. All COND-DEC items (001–014) resolved across v0.40.0–v0.40.7. Headline fix A variable or borrow used only inside an is arm is no longer a false [unused-variable]. The warning and borrow analyses (warnings.cpp collectIdentifiers and borrow_checker.cpp checkExpression) now recurse through the ternary's condition and both arms. Other bugs fixed Mixed-width is PHI verification failure — an is whose two arms had different integer widths produced an ill-typed LLVM PHI; the narrower arm is now sign-extended to the common type first. exit not treated as a branch terminator — dead code after an exit inside a branch now correctly flags [dead-code]. Diagnostics minted ARIA-IS-001 — incompatible is arms. ARIA-IF-001 — stray else / else if with no preceding if. ARIA-IF-002 — assignment = used as a condition (suggests ==). ARIA-IF-003 — if used in value position (points at is and pick+give); ratifies that if is a statement, never an expression. Formal semantics k-semantics/aria.k gains a native grammar production for the is ternary (is ( Exp ) : Exp : Exp with strict(1) so only the condition is forced) and two reduction rules selecting exactly one arm — modeling short-circuit directly. Validation Compiler CTest: 201/201 K core tests: 235/235 (adds 229–235 for the is ternary) Bug regressions: bug951–bug990 (40 fixtures) Docs: new guide/conditionals/ 8-chapter cookbook

Powered by OpenAIRE graph
Found an issue? Give us feedback