mirror of
https://github.com/reactos/reactos.git
synced 2024-10-30 03:27:31 +00:00
fe36f081c7
* [COMPILER_APITEST] Import MS EH/SEH tests Taken from https://github.com/microsoft/compiler-tests * [CRT] Add missing declaration of _longjmpex * [COMPILER_APITEST] Add cmake build files for MS SEH test It is built as a static library * [COMPILER_APITEST] Fix GCC build of MS SEH tests There are a number of hacks in there now. Also the volatile hacks should be separated and sent upstream. * [COMPILER_APITEST] Fix x64 build of MS SEH tests * [COMPILER_APITEST] Fix clang build of MS SEH tests * [COMPILER_APITEST] Include MS SEH tests
677 lines
10 KiB
Plaintext
677 lines
10 KiB
Plaintext
|
|
Test #1
|
|
A ctor. i = 0
|
|
B ctor. i = 1
|
|
A ctor. i = 2
|
|
B ctor. i = 3
|
|
B ctor. i = 4
|
|
A copy ctor. i = 5
|
|
B dtor. i = 4
|
|
B dtor. i = 3
|
|
Throwing
|
|
B ctor. i = 6
|
|
B ctor. i = 7
|
|
A copy ctor. i = 8
|
|
B dtor. i = 7
|
|
B dtor. i = 6
|
|
B ctor. i = 9
|
|
B ctor. i = 10
|
|
A copy ctor. i = 11
|
|
B dtor. i = 10
|
|
B dtor. i = 9
|
|
B ctor. i = 12
|
|
B ctor. i = 13
|
|
A dtor. i = 5
|
|
B dtor. i = 13
|
|
B dtor. i = 12
|
|
B ctor. i = 14
|
|
B ctor. i = 15
|
|
A dtor. i = 2
|
|
B dtor. i = 15
|
|
B dtor. i = 14
|
|
B dtor. i = 1
|
|
B ctor. i = 16
|
|
B ctor. i = 17
|
|
A dtor. i = 0
|
|
B dtor. i = 17
|
|
B dtor. i = 16
|
|
In main's catch
|
|
B ctor. i = 18
|
|
B ctor. i = 19
|
|
A dtor. i = 11
|
|
B dtor. i = 19
|
|
B dtor. i = 18
|
|
B ctor. i = 20
|
|
B ctor. i = 21
|
|
A dtor. i = 8
|
|
B dtor. i = 21
|
|
B dtor. i = 20
|
|
|
|
|
|
Test #2
|
|
A ctor. i = 0
|
|
B ctor. i = 1
|
|
A ctor. i = 2
|
|
A ctor. i = 3
|
|
B ctor. i = 4
|
|
B ctor. i = 5
|
|
A copy ctor. i = 6
|
|
B dtor. i = 5
|
|
B dtor. i = 4
|
|
Throwing
|
|
B ctor. i = 7
|
|
B ctor. i = 8
|
|
A copy ctor. i = 9
|
|
B dtor. i = 8
|
|
B dtor. i = 7
|
|
B ctor. i = 10
|
|
B ctor. i = 11
|
|
A copy ctor. i = 12
|
|
B dtor. i = 11
|
|
B dtor. i = 10
|
|
B ctor. i = 13
|
|
B ctor. i = 14
|
|
A dtor. i = 6
|
|
B dtor. i = 14
|
|
B dtor. i = 13
|
|
B ctor. i = 15
|
|
B ctor. i = 16
|
|
A dtor. i = 3
|
|
B dtor. i = 16
|
|
B dtor. i = 15
|
|
B ctor. i = 17
|
|
B ctor. i = 18
|
|
A dtor. i = 2
|
|
B dtor. i = 18
|
|
B dtor. i = 17
|
|
In catch;
|
|
A ctor. i = 19
|
|
Rethrowing
|
|
B ctor. i = 20
|
|
B ctor. i = 21
|
|
A dtor. i = 19
|
|
B dtor. i = 21
|
|
B dtor. i = 20
|
|
B ctor. i = 22
|
|
B ctor. i = 23
|
|
A dtor. i = 12
|
|
B dtor. i = 23
|
|
B dtor. i = 22
|
|
B ctor. i = 24
|
|
B ctor. i = 25
|
|
A copy ctor. i = 26
|
|
B dtor. i = 25
|
|
B dtor. i = 24
|
|
B dtor. i = 1
|
|
B ctor. i = 27
|
|
B ctor. i = 28
|
|
A dtor. i = 0
|
|
B dtor. i = 28
|
|
B dtor. i = 27
|
|
In main's catch
|
|
B ctor. i = 29
|
|
B ctor. i = 30
|
|
A dtor. i = 26
|
|
B dtor. i = 30
|
|
B dtor. i = 29
|
|
B ctor. i = 31
|
|
B ctor. i = 32
|
|
A dtor. i = 9
|
|
B dtor. i = 32
|
|
B dtor. i = 31
|
|
|
|
|
|
Test #3
|
|
A ctor. i = 0
|
|
B ctor. i = 1
|
|
A ctor. i = 2
|
|
A ctor. i = 3
|
|
B ctor. i = 4
|
|
B ctor. i = 5
|
|
A copy ctor. i = 6
|
|
B dtor. i = 5
|
|
B dtor. i = 4
|
|
Throwing
|
|
B ctor. i = 7
|
|
B ctor. i = 8
|
|
A copy ctor. i = 9
|
|
B dtor. i = 8
|
|
B dtor. i = 7
|
|
B ctor. i = 10
|
|
B ctor. i = 11
|
|
A copy ctor. i = 12
|
|
B dtor. i = 11
|
|
B dtor. i = 10
|
|
B ctor. i = 13
|
|
B ctor. i = 14
|
|
A dtor. i = 6
|
|
B dtor. i = 14
|
|
B dtor. i = 13
|
|
B ctor. i = 15
|
|
B ctor. i = 16
|
|
A dtor. i = 3
|
|
B dtor. i = 16
|
|
B dtor. i = 15
|
|
B ctor. i = 17
|
|
B ctor. i = 18
|
|
A dtor. i = 2
|
|
B dtor. i = 18
|
|
B dtor. i = 17
|
|
In catch
|
|
A ctor. i = 19
|
|
Throwing new a
|
|
B ctor. i = 20
|
|
B ctor. i = 21
|
|
A copy ctor. i = 22
|
|
B dtor. i = 21
|
|
B dtor. i = 20
|
|
B ctor. i = 23
|
|
B ctor. i = 24
|
|
A copy ctor. i = 25
|
|
B dtor. i = 24
|
|
B dtor. i = 23
|
|
B ctor. i = 26
|
|
B ctor. i = 27
|
|
A dtor. i = 9
|
|
B dtor. i = 27
|
|
B dtor. i = 26
|
|
B ctor. i = 28
|
|
B ctor. i = 29
|
|
A dtor. i = 19
|
|
B dtor. i = 29
|
|
B dtor. i = 28
|
|
B ctor. i = 30
|
|
B ctor. i = 31
|
|
A dtor. i = 12
|
|
B dtor. i = 31
|
|
B dtor. i = 30
|
|
B dtor. i = 1
|
|
B ctor. i = 32
|
|
B ctor. i = 33
|
|
A dtor. i = 0
|
|
B dtor. i = 33
|
|
B dtor. i = 32
|
|
In main's catch
|
|
B ctor. i = 34
|
|
B ctor. i = 35
|
|
A dtor. i = 25
|
|
B dtor. i = 35
|
|
B dtor. i = 34
|
|
B ctor. i = 36
|
|
B ctor. i = 37
|
|
A dtor. i = 22
|
|
B dtor. i = 37
|
|
B dtor. i = 36
|
|
|
|
|
|
Test #4
|
|
A ctor. i = 0
|
|
B ctor. i = 1
|
|
B ctor. i = 2
|
|
A ctor. i = 3
|
|
A ctor. i = 4
|
|
A ctor. i = 5
|
|
A ctor. i = 6
|
|
B ctor. i = 7
|
|
A ctor. i = 8
|
|
A ctor. i = 9
|
|
B ctor. i = 10
|
|
B ctor. i = 11
|
|
A copy ctor. i = 12
|
|
B dtor. i = 11
|
|
B dtor. i = 10
|
|
Throwing
|
|
B ctor. i = 13
|
|
B ctor. i = 14
|
|
A copy ctor. i = 15
|
|
B dtor. i = 14
|
|
B dtor. i = 13
|
|
B ctor. i = 16
|
|
B ctor. i = 17
|
|
A copy ctor. i = 18
|
|
B dtor. i = 17
|
|
B dtor. i = 16
|
|
B ctor. i = 19
|
|
B ctor. i = 20
|
|
A dtor. i = 12
|
|
B dtor. i = 20
|
|
B dtor. i = 19
|
|
B ctor. i = 21
|
|
B ctor. i = 22
|
|
A dtor. i = 9
|
|
B dtor. i = 22
|
|
B dtor. i = 21
|
|
B ctor. i = 23
|
|
B ctor. i = 24
|
|
A dtor. i = 8
|
|
B dtor. i = 24
|
|
B dtor. i = 23
|
|
In catch;
|
|
A ctor. i = 25
|
|
Rethrowing
|
|
B ctor. i = 26
|
|
B ctor. i = 27
|
|
A dtor. i = 25
|
|
B dtor. i = 27
|
|
B dtor. i = 26
|
|
B ctor. i = 28
|
|
B ctor. i = 29
|
|
A dtor. i = 18
|
|
B dtor. i = 29
|
|
B dtor. i = 28
|
|
B ctor. i = 30
|
|
B ctor. i = 31
|
|
A copy ctor. i = 32
|
|
B dtor. i = 31
|
|
B dtor. i = 30
|
|
B dtor. i = 7
|
|
B ctor. i = 33
|
|
B ctor. i = 34
|
|
A dtor. i = 6
|
|
B dtor. i = 34
|
|
B dtor. i = 33
|
|
B ctor. i = 35
|
|
B ctor. i = 36
|
|
A dtor. i = 5
|
|
B dtor. i = 36
|
|
B dtor. i = 35
|
|
In catch #1
|
|
B ctor. i = 37
|
|
Rethrowing
|
|
B dtor. i = 37
|
|
B ctor. i = 38
|
|
B ctor. i = 39
|
|
A dtor. i = 32
|
|
B dtor. i = 39
|
|
B dtor. i = 38
|
|
B ctor. i = 40
|
|
B ctor. i = 41
|
|
A dtor. i = 4
|
|
B dtor. i = 41
|
|
B dtor. i = 40
|
|
B ctor. i = 42
|
|
B ctor. i = 43
|
|
A dtor. i = 3
|
|
B dtor. i = 43
|
|
B dtor. i = 42
|
|
In catch #2
|
|
A ctor. i = 44
|
|
Throwing new a
|
|
B ctor. i = 45
|
|
B ctor. i = 46
|
|
A copy ctor. i = 47
|
|
B dtor. i = 46
|
|
B dtor. i = 45
|
|
B ctor. i = 48
|
|
B ctor. i = 49
|
|
A copy ctor. i = 50
|
|
B dtor. i = 49
|
|
B dtor. i = 48
|
|
B ctor. i = 51
|
|
B ctor. i = 52
|
|
A dtor. i = 15
|
|
B dtor. i = 52
|
|
B dtor. i = 51
|
|
B ctor. i = 53
|
|
B ctor. i = 54
|
|
A dtor. i = 44
|
|
B dtor. i = 54
|
|
B dtor. i = 53
|
|
B dtor. i = 2
|
|
In catch #3
|
|
B ctor. i = 55
|
|
Rethrowing
|
|
B dtor. i = 55
|
|
B ctor. i = 56
|
|
B ctor. i = 57
|
|
A dtor. i = 50
|
|
B dtor. i = 57
|
|
B dtor. i = 56
|
|
B ctor. i = 58
|
|
B ctor. i = 59
|
|
A copy ctor. i = 60
|
|
B dtor. i = 59
|
|
B dtor. i = 58
|
|
B dtor. i = 1
|
|
B ctor. i = 61
|
|
B ctor. i = 62
|
|
A dtor. i = 0
|
|
B dtor. i = 62
|
|
B dtor. i = 61
|
|
In main's catch
|
|
B ctor. i = 63
|
|
B ctor. i = 64
|
|
A dtor. i = 60
|
|
B dtor. i = 64
|
|
B dtor. i = 63
|
|
B ctor. i = 65
|
|
B ctor. i = 66
|
|
A dtor. i = 47
|
|
B dtor. i = 66
|
|
B dtor. i = 65
|
|
|
|
|
|
Test #5
|
|
A ctor. i = 0
|
|
B ctor. i = 1
|
|
B ctor. i = 2
|
|
B ctor. i = 3
|
|
B ctor. i = 4
|
|
A ctor. i = 5
|
|
B ctor. i = 6
|
|
B ctor. i = 7
|
|
A copy ctor. i = 8
|
|
B dtor. i = 7
|
|
B dtor. i = 6
|
|
Throwing
|
|
B ctor. i = 9
|
|
B ctor. i = 10
|
|
A copy ctor. i = 11
|
|
B dtor. i = 10
|
|
B dtor. i = 9
|
|
B ctor. i = 12
|
|
B ctor. i = 13
|
|
A copy ctor. i = 14
|
|
B dtor. i = 13
|
|
B dtor. i = 12
|
|
B ctor. i = 15
|
|
B ctor. i = 16
|
|
A dtor. i = 8
|
|
B dtor. i = 16
|
|
B dtor. i = 15
|
|
B ctor. i = 17
|
|
B ctor. i = 18
|
|
A dtor. i = 5
|
|
B dtor. i = 18
|
|
B dtor. i = 17
|
|
B dtor. i = 4
|
|
B dtor. i = 3
|
|
B dtor. i = 2
|
|
A ctor. i = 19
|
|
In catch #2
|
|
B ctor. i = 20
|
|
Throwing a new b
|
|
B copy ctor. i = 21
|
|
B copy ctor. i = 22
|
|
B dtor. i = 20
|
|
B ctor. i = 23
|
|
B ctor. i = 24
|
|
A dtor. i = 11
|
|
B dtor. i = 24
|
|
B dtor. i = 23
|
|
B ctor. i = 25
|
|
B ctor. i = 26
|
|
A dtor. i = 19
|
|
B dtor. i = 26
|
|
B dtor. i = 25
|
|
B ctor. i = 27
|
|
B ctor. i = 28
|
|
A dtor. i = 14
|
|
B dtor. i = 28
|
|
B dtor. i = 27
|
|
B dtor. i = 1
|
|
In catch #3
|
|
Throwing a new a
|
|
A ctor. i = 29
|
|
B ctor. i = 30
|
|
B ctor. i = 31
|
|
A copy ctor. i = 32
|
|
B dtor. i = 31
|
|
B dtor. i = 30
|
|
B dtor. i = 21
|
|
B dtor. i = 22
|
|
B ctor. i = 33
|
|
B ctor. i = 34
|
|
A dtor. i = 0
|
|
B dtor. i = 34
|
|
B dtor. i = 33
|
|
In main's catch
|
|
B ctor. i = 35
|
|
B ctor. i = 36
|
|
A dtor. i = 32
|
|
B dtor. i = 36
|
|
B dtor. i = 35
|
|
B ctor. i = 37
|
|
B ctor. i = 38
|
|
A dtor. i = 29
|
|
B dtor. i = 38
|
|
B dtor. i = 37
|
|
|
|
|
|
Test #6
|
|
B ctor. i = 0
|
|
B ctor. i = 1
|
|
B ctor. i = 2
|
|
Throwing a b
|
|
B copy ctor. i = 3
|
|
B copy ctor. i = 4
|
|
B dtor. i = 2
|
|
B ctor. i = 5
|
|
In catch #1
|
|
Throwing a new b
|
|
B copy ctor. i = 6
|
|
B copy ctor. i = 7
|
|
B dtor. i = 3
|
|
B dtor. i = 5
|
|
B dtor. i = 4
|
|
B dtor. i = 1
|
|
B ctor. i = 8
|
|
In catch #2
|
|
Throwing a new b
|
|
B copy ctor. i = 9
|
|
B copy ctor. i = 10
|
|
B dtor. i = 6
|
|
B dtor. i = 8
|
|
B dtor. i = 7
|
|
B dtor. i = 0
|
|
A ctor. i = 11
|
|
In catch #3
|
|
Throwing a new a
|
|
B ctor. i = 12
|
|
B ctor. i = 13
|
|
A copy ctor. i = 14
|
|
B dtor. i = 13
|
|
B dtor. i = 12
|
|
B ctor. i = 15
|
|
B ctor. i = 16
|
|
A copy ctor. i = 17
|
|
B dtor. i = 16
|
|
B dtor. i = 15
|
|
B dtor. i = 9
|
|
B ctor. i = 18
|
|
B ctor. i = 19
|
|
A dtor. i = 11
|
|
B dtor. i = 19
|
|
B dtor. i = 18
|
|
B dtor. i = 10
|
|
In main's catch
|
|
B ctor. i = 20
|
|
B ctor. i = 21
|
|
A dtor. i = 17
|
|
B dtor. i = 21
|
|
B dtor. i = 20
|
|
B ctor. i = 22
|
|
B ctor. i = 23
|
|
A dtor. i = 14
|
|
B dtor. i = 23
|
|
B dtor. i = 22
|
|
|
|
|
|
Test #7
|
|
B ctor. i = 0
|
|
B ctor. i = 1
|
|
B ctor. i = 2
|
|
Throwing a b
|
|
B ctor. i = 3
|
|
B copy ctor. i = 4
|
|
B dtor. i = 2
|
|
B ctor. i = 5
|
|
In catch #1
|
|
B ctor. i = 6
|
|
Rethrowing b
|
|
B copy ctor. i = 7
|
|
B dtor. i = 6
|
|
B ctor. i = 8
|
|
In catch #1 of catch#1
|
|
Rethrowing b
|
|
B dtor. i = 8
|
|
B dtor. i = 7
|
|
B dtor. i = 5
|
|
B dtor. i = 4
|
|
B copy ctor. i = 9
|
|
B dtor. i = 1
|
|
B ctor. i = 10
|
|
In catch #2
|
|
Throwing a new A
|
|
A ctor. i = 11
|
|
B ctor. i = 12
|
|
B ctor. i = 13
|
|
A copy ctor. i = 14
|
|
B dtor. i = 13
|
|
B dtor. i = 12
|
|
B dtor. i = 3
|
|
B dtor. i = 10
|
|
B dtor. i = 9
|
|
B dtor. i = 0
|
|
In main's catch
|
|
B ctor. i = 15
|
|
B ctor. i = 16
|
|
A dtor. i = 14
|
|
B dtor. i = 16
|
|
B dtor. i = 15
|
|
B ctor. i = 17
|
|
B ctor. i = 18
|
|
A dtor. i = 11
|
|
B dtor. i = 18
|
|
B dtor. i = 17
|
|
|
|
|
|
Test #8
|
|
B ctor. i = 0
|
|
B ctor. i = 1
|
|
B ctor. i = 2
|
|
B ctor. i = 3
|
|
Throwing a b
|
|
B ctor. i = 4
|
|
B ctor. i = 5
|
|
B copy ctor. i = 6
|
|
B dtor. i = 4
|
|
B dtor. i = 3
|
|
B ctor. i = 7
|
|
In catch #1
|
|
B ctor. i = 8
|
|
Rethrowing b
|
|
A ctor. i = 9
|
|
Rethrowing
|
|
B copy ctor. i = 10
|
|
B ctor. i = 11
|
|
B ctor. i = 12
|
|
A dtor. i = 9
|
|
B dtor. i = 12
|
|
B dtor. i = 11
|
|
B dtor. i = 8
|
|
B ctor. i = 13
|
|
In catch #1 of catch#1
|
|
Rethrowing b
|
|
A ctor. i = 14
|
|
Rethrowing
|
|
B ctor. i = 15
|
|
B ctor. i = 16
|
|
A dtor. i = 14
|
|
B dtor. i = 16
|
|
B dtor. i = 15
|
|
B dtor. i = 13
|
|
B dtor. i = 10
|
|
B dtor. i = 7
|
|
B dtor. i = 6
|
|
B copy ctor. i = 17
|
|
B dtor. i = 2
|
|
B dtor. i = 1
|
|
B ctor. i = 18
|
|
In catch #2
|
|
Throwing a new A
|
|
A ctor. i = 19
|
|
B ctor. i = 20
|
|
B ctor. i = 21
|
|
A copy ctor. i = 22
|
|
B dtor. i = 21
|
|
B dtor. i = 20
|
|
B dtor. i = 5
|
|
B dtor. i = 18
|
|
B dtor. i = 17
|
|
B dtor. i = 0
|
|
In main's catch
|
|
B ctor. i = 23
|
|
B ctor. i = 24
|
|
A dtor. i = 22
|
|
B dtor. i = 24
|
|
B dtor. i = 23
|
|
B ctor. i = 25
|
|
B ctor. i = 26
|
|
A dtor. i = 19
|
|
B dtor. i = 26
|
|
B dtor. i = 25
|
|
|
|
|
|
Test #9
|
|
B ctor. i = 0
|
|
Throwing B
|
|
B copy ctor. i = 1
|
|
B dtor. i = 0
|
|
In catch #1
|
|
Rethrow
|
|
In catch #2
|
|
B dtor. i = 1
|
|
End of test9, throwing a A
|
|
A ctor. i = 2
|
|
B ctor. i = 3
|
|
B ctor. i = 4
|
|
A copy ctor. i = 5
|
|
B dtor. i = 4
|
|
B dtor. i = 3
|
|
In main's catch
|
|
B ctor. i = 6
|
|
B ctor. i = 7
|
|
A dtor. i = 5
|
|
B dtor. i = 7
|
|
B dtor. i = 6
|
|
B ctor. i = 8
|
|
B ctor. i = 9
|
|
A dtor. i = 2
|
|
B dtor. i = 9
|
|
B dtor. i = 8
|
|
|
|
|
|
Test #10
|
|
B ctor. i = 0
|
|
Throwing B
|
|
B copy ctor. i = 1
|
|
B dtor. i = 0
|
|
In catch #1
|
|
Throwing a new B()
|
|
B ctor. i = 2
|
|
In catch #2
|
|
B dtor. i = 2
|
|
B dtor. i = 1
|
|
End of test10, throwing a A
|
|
A ctor. i = 3
|
|
B ctor. i = 4
|
|
B ctor. i = 5
|
|
A copy ctor. i = 6
|
|
B dtor. i = 5
|
|
B dtor. i = 4
|
|
In main's catch
|
|
B ctor. i = 7
|
|
B ctor. i = 8
|
|
A dtor. i = 6
|
|
B dtor. i = 8
|
|
B dtor. i = 7
|
|
B ctor. i = 9
|
|
B ctor. i = 10
|
|
A dtor. i = 3
|
|
B dtor. i = 10
|
|
B dtor. i = 9
|
|
|
|
|
|
Passed
|