FritzW
(Friedrich Westermann)
February 17, 2020, 9:03am
1
if you open the PascalParser/PascalParse.sln from
The Tests inside will not work anymore
The test for Echoes will run if I change the signature in EnumTokenhelper
for IsJunk to:
method IsJunk : Boolean; // inline;
begin
exit IsTokenIDJunk(self);
end;
The Test for Island Windows will compile but produce some other errors in Runtime
Thanks, logged as bugs://83943
mh
(marc hoffman)
February 17, 2020, 12:12pm
3
I get
An exception occurred in PascalParse.Test.Echoes, thread 0001 ()
Type: System.InvalidProgramException
Message:
Invalid IL code in ProHolz.Ast.TMyTestObject:Test1 (): IL_0094: call 0x06000142
Call Stack:
0000000000000041 mscorlib.dll, MonoMethod.Invoke (MonoMethod.cs 305)
0000000000000006 mscorlib.dll, MethodBase.Invoke (methodbase.cs 229)
0000000000000036 RemObjects.Elements.EUnit.dll, MethodReference.Invoke (Method.pas 136)
000000000000006C RemObjects.Elements.EUnit.dll, MethodAction.<_>b__0 (MethodAction.pas 19)
0000000000000008 RemObjects.Elements.EUnit.dll, ResultAction.DoExecute (ResultAction.pas 23)
0000000000000097 RemObjects.Elements.EUnit.dll, BaseAction.Execute (BaseAction.pas 36)
0000000000000053 RemObjects.Elements.EUnit.dll, TryFinallyAction.DoExecute (TryFinallyAction.pas 38)
0000000000000097 RemObjects.Elements.EUnit.dll, BaseAction.Execute (BaseAction.pas 36)
0000000000000092 RemObjects.Elements.EUnit.dll, Runner.RunTestcase (Runner.pas 130)
00000000000000C5 RemObjects.Elements.EUnit.dll, Runner.Run (Runner.pas 104)
000000000000007B RemObjects.Elements.EUnit.dll, Runner.RunChildren (Runner.pas 161)
0000000000000001 RemObjects.Elements.EUnit.dll, Runner.<RunClass>b__0 (Runner.pas 139)
0000000000000008 RemObjects.Elements.EUnit.dll, ResultAction.DoExecute (ResultAction.pas 23)
0000000000000097 RemObjects.Elements.EUnit.dll, BaseAction.Execute (BaseAction.pas 36)
0000000000000053 RemObjects.Elements.EUnit.dll, TryFinallyAction.DoExecute (TryFinallyAction.pas 38)
0000000000000097 RemObjects.Elements.EUnit.dll, BaseAction.Execute (BaseAction.pas 36)
0000000000000037 RemObjects.Elements.EUnit.dll, Runner.RunClass (Runner.pas 142)
00000000000000BC RemObjects.Elements.EUnit.dll, Runner.Run (Runner.pas 103)
000000000000007B RemObjects.Elements.EUnit.dll, Runner.RunChildren (Runner.pas 161)
0000000000000001 RemObjects.Elements.EUnit.dll, Runner.RunSuite (Runner.pas 148)
00000000000000B3 RemObjects.Elements.EUnit.dll, Runner.Run (Runner.pas 102)
0000000000000065 RemObjects.Elements.EUnit.dll, Runner.RunTests____withListener (Runner.pas 49)
000000000000000E PascalParse.exe, __Global.Main (Program.pas 13)
is that the error we’re supposed to be seeing?
The method it seems to be failing for is ProHolz.Ast.TMyTestObject.Test1
.
mh
(marc hoffman)
February 17, 2020, 12:17pm
4
Oddly, wile I was able to run your test project once by pressing Cmd-T (I assume I still had some binaries left from before), now that I tried. building it once with Cmd-B it fails with several errors on a missing metic named “createxNode” (which indeed isn’t defined anywhere i can see)…
FritzW
(Friedrich Westermann)
February 17, 2020, 12:27pm
5
Oh yes the last one is from CC you have to revert the source and disable W0, because cc goes wrong with static factory methods… I see I have not told it as a error, disabled the setting in Fire and Water and forgot about it.
mh
(marc hoffman)
February 17, 2020, 12:33pm
6
Sorry, I’m not sure I understand what to revert. Can you just make sure the latest in git (thats what I used) compiles, or send me a compiling testcase separately?
thanx!
FritzW
(Friedrich Westermann)
February 17, 2020, 12:35pm
7
The last in GIT will compile,
the problem is with the fix for W0 enabled the source is wrong after a Build.
We can also do a Teamviewer if you want.
TSyntaxNode.Create(
becomes
createxNode.Create(
mh
(marc hoffman)
February 17, 2020, 12:46pm
8
Hm, ok. is that. ing you reported elsewhere? I’m wasn’t aware of this happening…
Thanks, logged as bugs://83946
FritzW
(Friedrich Westermann)
February 17, 2020, 12:47pm
10
I can do a extra Report if you want.
mh
(marc hoffman)
February 17, 2020, 12:50pm
11
Na, I logged it now; I was just surprised that I was supposed to expect/know about this happening
bugs://83946 got closed with status fixed.
FritzW
(Friedrich Westermann)
February 24, 2020, 7:13am
13
Sorry to tell, but the problems are not full solved:
The case wit CC is only partial fixed. The source will be correct but there are Hints for W0:
before compile:
After Compile:
The inline problem is still there:
bugs://83946 got reopened.
bugs://83946 got closed with status fixed.
1 Like
ck
(Carlo Kok)
April 15, 2020, 7:18am
16
Do you still get this @FritzW :
Test suite (11 tests) started
TMyTestObject started
Test1 finished. State: Succeeded.
Test2 finished. State: Succeeded.
Test3 finished. State: Succeeded.
Test5 finished. State: Succeeded.
TMyTestObject finished. State: Succeeded.
ClassesTest started
Test finished. State: Succeeded.
TestClone finished. State: Succeeded.
ClassesTest finished. State: Succeeded.
TestBinaryReadeWriter started
FirstTest finished. State: Succeeded.
testBinaryXML finished. State: Failed. Message: [InvalidOperationException]: Stack empty.
TestBinaryReadeWriter finished. State: Failed. Message: One or more test failed
TestEnumsClass started
FirstTest finished. State: Succeeded.
TestEnumsClass finished. State: Succeeded.
GlobalsTest started
GlobalsTest finished. State: Succeeded.
LexerTest started
Test finished. State: Succeeded.
TestElements finished. State: Succeeded.
LexerTest finished. State: Succeeded.
LexerPasTest started
Test finished. State: Failed. Message: Expected " " but got "INTERFACE" (TestLexerPasLex.pas line 42)
Test2 finished. State: Failed. Message: Expected " " but got "INTERFACE" (TestLexerPasLex.pas line 72)
TestNumbers finished. State: Succeeded.
LexerPasTest finished. State: Failed. Message: One or more test failed
NodeStackTest started
Test finished. State: Succeeded.
NodeStackTest finished. State: Succeeded.
TestSearchPath started
Test1 finished. State: Succeeded.
TestSearchPath finished. State: Succeeded.
TestTreeBuilder started
TestNames finished. State: Failed. Message: [InvalidOperationException]: Stack empty.
TestAsm finished. State: Failed. Message: [ESyntaxTreeException]: "Identifier" expected found " "
TestNameSpace finished. State: Failed. Message: [ESyntaxTreeException]: "Identifier" expected found " "
TestCompilerVersions finished. State: Succeeded.
TestCompilerDirectives finished. State: Failed. Message: Stack empty. (TestTreeBuilder.pas line 55)
TestSynEditUnit finished. State: Failed. Message: Stack empty. (TestTreeBuilder.pas line 66)
TestVariantRecord finished. State: Failed. Message: Stack empty. (TestTreeBuilder.pas line 139)
TestConstArrays finished. State: Failed. Message: [InvalidOperationException]: Stack empty.
TestCommentPositions finished. State: Failed. Message: [ESyntaxTreeException]: "Identifier" expected found " "
TestCommentPositions2 finished. State: Failed. Message: [ESyntaxTreeException]: "Identifier" expected found " "
TestTreeBuilder finished. State: Failed. Message: One or more test failed
XCTestCase started
XCTestCase finished. State: Succeeded.
Test suite (11 tests) finished. State: Failed. Message: One or more test failed
======================================
14 succeeded, 12 failed, 0 skipped, 0 untested
that’s the output I get.
bugs://83943 got closed with status cannotrepro.
FritzW
(Friedrich Westermann)
April 15, 2020, 7:57am
18
Hi Carlo,
I have installed now fire 2501 and tested again:
ck
(Carlo Kok)
April 15, 2020, 8:02am
19
Did you rebuild?
Can you send the (failing) PascalPArse.exe ?
FritzW
(Friedrich Westermann)
April 15, 2020, 8:31am
20
Here is the exe
PascalParse.exe.zip (105.1 KB)