Skip to content

Commit 4192f10

Browse files
committed
Eight defects of 997's array constants, Math intrinsics and LLVM conversions and shifts, with reproducers; WARNINGs and NOTEs on Const, the three shift functions, LeftShift, RightShift and the LLVM page
1 parent 746f570 commit 4192f10

44 files changed

Lines changed: 1102 additions & 0 deletions

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

‎BUGS-TO-REPORT.md‎

Lines changed: 314 additions & 0 deletions
Large diffs are not rendered by default.
Binary file not shown.
Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
{
2+
"mode": "compile",
3+
"expect": {
4+
"exit": 1,
5+
"diagnostics": ["TB5079"]
6+
}
7+
}
Lines changed: 61 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,61 @@
1+
{
2+
"configuration.inherits": "Defaults",
3+
"project.appTitle": "ArrayConstAfterProcedureNotFound",
4+
"project.buildPath": "${SourcePath}\\Build\\${ProjectName}_${Architecture}.${FileExtension}",
5+
"project.buildType": "Standard EXE",
6+
"project.description": "Reproduces: A module-level array Const declared after a procedure is not found by the procedures that follow it",
7+
"project.exportPathIsV2": true,
8+
"project.id": "{2BEB2C3D-7435-4AB0-9355-BAFDA31BBC8A}",
9+
"project.name": "ArrayConstAfterProcedureNotFound",
10+
"project.optionExplicit": true,
11+
"project.references": [
12+
{
13+
"id": "{00020430-0000-0000-C000-000000000046}",
14+
"lcid": 0,
15+
"name": "OLE Automation",
16+
"path32": "C:\\Windows\\SysWOW64\\stdole2.tlb",
17+
"path64": "C:\\Windows\\System32\\stdole2.tlb",
18+
"symbolId": "stdole",
19+
"versionMajor": 2,
20+
"versionMinor": 0
21+
},
22+
{
23+
"id": "{F50B82D0-DCAB-43FE-9631-11959D4A4728}",
24+
"isCompilerPackage": true,
25+
"licence": "MIT",
26+
"name": "[COMPILER PACKAGE] twinBASIC - VB Compatibility Package (Forms)",
27+
"path32": "",
28+
"path64": "",
29+
"publisher": "TWINBASIC-COMPILER",
30+
"symbolId": "VB",
31+
"versionBuild": 0,
32+
"versionMajor": 0,
33+
"versionMinor": 0,
34+
"versionRevision": 31
35+
},
36+
{
37+
"id": "{C192FB39-64CA-4D9B-B477-A5502F48EFCC}",
38+
"isCompilerPackage": true,
39+
"licence": "MIT",
40+
"name": "[COMPILER PACKAGE] twinBASIC - App global class object",
41+
"path32": "",
42+
"path64": "",
43+
"publisher": "TWINBASIC-COMPILER",
44+
"symbolId": "AppGlobalClassProject",
45+
"versionBuild": 0,
46+
"versionMajor": 1,
47+
"versionMinor": 0,
48+
"versionRevision": 0
49+
}
50+
],
51+
"project.settingsVersion": 1,
52+
"project.startupObject": "Sub Main",
53+
"project.warnings": {
54+
"errors": [],
55+
"hints": [],
56+
"ignored": [],
57+
"info": [],
58+
"warnings": []
59+
},
60+
"runtime.useUnicodeStandardLibrary": true
61+
}
Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
' A module-level array Const declared after a procedure is not found by the procedures that follow it.
2+
Module Startup
3+
4+
Public Sub Main()
5+
End Sub
6+
7+
Const Scalar As Long = 5
8+
Const Arr() As Long = Array(1, 2, 3)
9+
10+
Public Sub UseIt()
11+
Debug.Print Scalar
12+
Debug.Print Arr(1)
13+
End Sub
14+
15+
End Module
Binary file not shown.
Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
{
2+
"mode": "compile",
3+
"expect": {
4+
"exit": 4
5+
}
6+
}
Lines changed: 61 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,61 @@
1+
{
2+
"configuration.inherits": "Defaults",
3+
"project.appTitle": "ArrayConstElementOverflowCrash",
4+
"project.buildPath": "${SourcePath}\\Build\\${ProjectName}_${Architecture}.${FileExtension}",
5+
"project.buildType": "Standard EXE",
6+
"project.description": "Reproduces: A module-level array Const with an element that does not fit its type crashes the compiler",
7+
"project.exportPathIsV2": true,
8+
"project.id": "{4401A4EA-F2FC-4E51-B2B1-5E7F888EC3AF}",
9+
"project.name": "ArrayConstElementOverflowCrash",
10+
"project.optionExplicit": true,
11+
"project.references": [
12+
{
13+
"id": "{00020430-0000-0000-C000-000000000046}",
14+
"lcid": 0,
15+
"name": "OLE Automation",
16+
"path32": "C:\\Windows\\SysWOW64\\stdole2.tlb",
17+
"path64": "C:\\Windows\\System32\\stdole2.tlb",
18+
"symbolId": "stdole",
19+
"versionMajor": 2,
20+
"versionMinor": 0
21+
},
22+
{
23+
"id": "{F50B82D0-DCAB-43FE-9631-11959D4A4728}",
24+
"isCompilerPackage": true,
25+
"licence": "MIT",
26+
"name": "[COMPILER PACKAGE] twinBASIC - VB Compatibility Package (Forms)",
27+
"path32": "",
28+
"path64": "",
29+
"publisher": "TWINBASIC-COMPILER",
30+
"symbolId": "VB",
31+
"versionBuild": 0,
32+
"versionMajor": 0,
33+
"versionMinor": 0,
34+
"versionRevision": 31
35+
},
36+
{
37+
"id": "{C192FB39-64CA-4D9B-B477-A5502F48EFCC}",
38+
"isCompilerPackage": true,
39+
"licence": "MIT",
40+
"name": "[COMPILER PACKAGE] twinBASIC - App global class object",
41+
"path32": "",
42+
"path64": "",
43+
"publisher": "TWINBASIC-COMPILER",
44+
"symbolId": "AppGlobalClassProject",
45+
"versionBuild": 0,
46+
"versionMajor": 1,
47+
"versionMinor": 0,
48+
"versionRevision": 0
49+
}
50+
],
51+
"project.settingsVersion": 1,
52+
"project.startupObject": "Sub Main",
53+
"project.warnings": {
54+
"errors": [],
55+
"hints": [],
56+
"ignored": [],
57+
"info": [],
58+
"warnings": []
59+
},
60+
"runtime.useUnicodeStandardLibrary": true
61+
}
Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
' Crashes the compiler: an array Const whose element does not fit the element type.
2+
Module Startup
3+
4+
Const Big() As Long = Array(2147483648)
5+
6+
Public Sub Main()
7+
End Sub
8+
9+
End Module
Binary file not shown.

0 commit comments

Comments
 (0)