Four COM Interfaces pages, vb6run, 13 new bug reproducers, and a faster waitForCompile - #219
Merged
Merged
Conversation
… CDP, shows the compile has ended and the window agrees; about 5 s less per project
…bed without protocol detail
… described without protocol detail
…rtErrorInfo and IConnectionPoint/IConnectionPointContainer, checked on BETA 995; ObjPtr returns the declared interface's pointer, not the IUnknown identity
… or --docs to compare the check_run fences with VB6; probes and command-line cases
…target only when part of it is hidden
…h a run-mode reproducer (995); Raise, Source and Description state twinBASIC's Err.Raise defaults, with the VBA differences; IDispatch: stdole.IDispatch calls are late-bound by name
…, which follows the contract on every call; VB6 project in bugs/enum-connections-one-item/vb6/
… own, slot=file fences translated to class and standard modules
…d run with 'bug_repro vb6' through lib/vb6.mjs; new --with-vb6; the three VB6 comparisons moved into their reproducers
…; no entry points at the scratch tree
…ode can obtain them on BETA 995
…efaults, inherited ones crash (995, 983); reproducer bugs/new-on-interface/
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Adds four COM Interfaces pages, a tool that runs documentation samples in VB6, and 13 bug entries with reproducers, and shortens the IDE compile wait.
ObjPtrreturns the pointer of the interface the variable is declared as, not theIUnknownidentity;Istests identity.Err.Raisestates its defaults (Sourceempty,Descriptionfrom the number, an omitted argument reset), andRaise,SourceandDescriptionlist the VBA differences.stdole.IDispatchis late-bound by name and raises&H80020006; it does not end the run.ErrorContext,ErrorCallstackandErrorStackFramesay that no code can obtain them on BETA 995.Err.Raisedefaults,IConnectionPointcrashes and HRESULTs,Newon anInterface). Filed upstream and moved tobugs/filed/: the two enumerator entries (IEnumConnections.Nextreturns one item when asked for two with two connections present twinbasic#2461, TheIEnumConnectionPointsof a twinBASIC class raisesE_FAILat the end of the list, andSkipandCloneraiseE_NOTIMPLtwinbasic#2462) and the earlierwv2-headers-foreach-crash(For Each over WebView2 request or response headers crashes in WebView2HeadersCollection.Next twinbasic#2460). 45 reproducers become 58: 31 filed, 27 queued.scripts/vb6run.mjs(new) builds and runs VB6 code without a shell, from a file or with--docs, which builds thecheck_runfences in VB6 and reports each assame,differs,not VB6,errororrefused. Aprojname=group becomes a VB6 project of its own. Nothing can open a dialog:Debug.Printis rewritten toPrint #, the build is unattended, and a sample that callsMsgBoxorInputBoxor containsEndis refused.vb6/project.new --with-vb6makes it,packzips it as<slug>-vb6.zip, andvb6builds and runs it in a temp copy. Six reproducers have one, the two enumerators among them, where VB6 follows the contract on every call.waitForCompileends once the page's traffic, read through CDP (tb-wire.mjs, new), shows the compile has ended and the window agrees, with the five-second still check as fallback. An IDE start per project goes from 8–11 s to 6–8 s, andexamples.batfrom about 120 s to 80 s.assertlane now waits for the error panel to stop moving before it presses Stop.vb6runandbug_repro vb6need VB6, andwaitForCompilea twinBASIC install, so they stay outside every gate and CI, likeexamples.bat. The probes and command-line cases for the VB6 tools need no VB6 and run intest.bat.