about summary refs log tree commit diff stats
path: root/src
Commit message (Expand)AuthorAgeFilesLines
...
* buffer: do not set readyState if document is nilbptato2023-11-291-1/+2
* dom: add document.readyStatebptato2023-11-272-2/+10
* buffer: add DOMContentLoaded, misc event improvementsbptato2023-11-272-49/+75
* layout: rewrite inline box handlingbptato2023-11-273-554/+654
* js: remove nonsensical comment linebptato2023-11-261-1/+0
* config: add bare aliases for "8bit", "24bit"bptato2023-11-261-2/+2
* color: fix rgbToEightBit parenthesesbptato2023-11-261-1/+1
* dom: expose HTMLInputElement.checkedbptato2023-11-241-1/+1
* layout: clamp size constraints to min/max sizes for floatsbptato2023-11-231-7/+12
* layout: add clear, etc.bptato2023-11-232-39/+116
* css/values: use Opt instead of Result[string]bptato2023-11-211-55/+54
* css/values: simplify getComputedValuebptato2023-11-211-11/+10
* Move clang workaround to config.nimsbptato2023-11-211-4/+0
* layout: simplify max width/height calculationbptato2023-11-211-41/+43
* layout: fix some sizing bugsbptato2023-11-211-103/+124
* pager: fix regressionbptato2023-11-213-20/+20
* bindings: find termcap on FreeBSDbptato2023-11-212-10/+21
* pager: remove pager.tty memberbptato2023-11-212-7/+8
* buffer: call onload function on dispatchLoadEventbptato2023-11-211-3/+13
* env: stub out window.getComputedStyle()bptato2023-11-212-1/+6
* fromjs: fix fromJSOption with nilbptato2023-11-211-1/+1
* renderdocument: avoid setText with zero-width stringbptato2023-11-211-9/+10
* css: add box-sizingbptato2023-11-212-16/+60
* dom: add baseURI, insertAdjacentHTMLbptato2023-11-201-0/+35
* renderdocument: fix regression in d20fc30bptato2023-11-201-12/+0
* twtstr: remove tolower, isWhitespacebptato2023-11-208-34/+23
* renderdocument, cell: fix FormatCell bugsbptato2023-11-202-20/+43
* buffer: optimize findPrevLinkbptato2023-11-201-0/+8
* Update chakasubptato2023-11-171-1/+1
* urimethodmap: do not escape substituted URIbptato2023-11-171-1/+1
* http: use Accept-Encodingbptato2023-11-172-0/+4
* layout: move charwidth into LineBoxStatebptato2023-11-171-9/+8
* layout: add floatsbptato2023-11-173-222/+562
* env: add window.frames, window.selfbptato2023-11-151-0/+6
* dom: fix lastElementChildbptato2023-11-131-1/+1
* layout: refactor flow margin propagation, sizingbptato2023-11-124-615/+637
* color: fix 3/6-digit hex color parsingbptato2023-11-111-2/+4
* layout: refactor block layoutingbptato2023-10-281-151/+165
* layout: refactorbptato2023-10-282-273/+278
* buffer: remove viewport referencebptato2023-10-284-22/+16
* Add -C optionbptato2023-10-273-150/+178
* toml: fix dquote escapingbptato2023-10-261-1/+1
* renderdocument: slightly refactor, optimize addLinesbptato2023-10-263-39/+28
* layout/engine: refactor inline atoms etc.bptato2023-10-263-248/+256
* buffer: close ssock on exitbptato2023-10-261-0/+1
* layout/engine: reformatbptato2023-10-261-26/+45
* layout/engine: add table row group/caption to anon tablebptato2023-10-261-0/+2
* dom: expose head, body, window (as defaultView)bptato2023-10-251-3/+3
* buffer: call load event on loadbptato2023-10-251-1/+13
* js: refine isInstanceOf check in functionsbptato2023-10-253-13/+30
L; // don't deallocate on return return result; } void teardown_real_hardware_types() { for (int i = 0; i < SIZE(Real_hardware_types); ++i) delete Real_hardware_types.at(i); Real_hardware_types.clear(); } :(before "End Checks") Transform.push_back(check_for_misuse_of_real_hardware); :(code) void check_for_misuse_of_real_hardware(const recipe_ordinal r) { const recipe& caller = get(Recipe, r); if (caller.name == "main") return; if (starts_with(caller.name, "scenario_")) return; trace(101, "transform") << "--- check if recipe " << caller.name << " has any dependency-injection mistakes" << end(); for (int index = 0; index < SIZE(caller.steps); ++index) { const instruction& inst = caller.steps.at(index); if (is_primitive(inst.operation)) continue; for (int i = 0; i < SIZE(inst.ingredients); ++i) { const reagent& ing = inst.ingredients.at(i); if (!is_literal(ing) || ing.name != "0") continue; const recipe& callee = get(Recipe, inst.operation); if (!callee.has_header) continue; if (i >= SIZE(callee.ingredients)) continue; const reagent& expected_ing = callee.ingredients.at(i); for (int j = 0; j < SIZE(Real_hardware_types); ++j) { if (*Real_hardware_types.at(j) == *expected_ing.type) raise << maybe(caller.name) << "'" << to_original_string(inst) << "': only 'main' can pass 0 into a " << to_string(expected_ing.type) << '\n' << end(); } } } } void test_warn_on_using_real_screen_directly_in_non_main_recipe() { Hide_errors = true; transform( "def foo [\n" " print 0, 34\n" "]\n" ); CHECK_TRACE_CONTENTS( "error: foo: 'print 0, 34': only 'main' can pass 0 into a (address screen)\n" ); }