Files
codeql/csharp/ql/test/library-tests/unsafe/PrintAst.expected
2025-12-02 13:49:16 +01:00

142 lines
7.0 KiB
Plaintext

unsafe.cs:
# 1| [NamespaceDeclaration] namespace ... { ... }
# 3| 1: [Class] Test
# 5| 6: [Method] Main
# 5| -1: [TypeMention] Void
#-----| 2: (Parameters)
# 5| 0: [Parameter] args
# 5| -1: [TypeMention] String[]
# 5| 1: [TypeMention] string
# 6| 4: [BlockStmt] {...}
# 7| 0: [LocalVariableDeclStmt] ... ...;
# 7| 0: [LocalVariableDeclAndInitExpr] Int32 i = ...
# 7| -1: [TypeMention] int
# 7| 0: [LocalVariableAccess] access to local variable i
# 7| 1: [IntLiteral] 42
# 8| 1: [LocalVariableDeclStmt] ... ...;
# 8| 0: [LocalVariableDeclAndInitExpr] Int32[] ia = ...
# 8| -1: [TypeMention] Int32[]
# 8| 1: [TypeMention] int
# 8| 0: [LocalVariableAccess] access to local variable ia
# 8| 1: [ArrayCreation] array creation of type Int32[]
# 8| -1: [TypeMention] Int32[]
# 8| 1: [TypeMention] int
# 8| 0: [IntLiteral] 2
# 9| 2: [ExprStmt] ...;
# 9| 0: [AssignExpr] ... = ...
# 9| 0: [ArrayAccess] access to array element
# 9| -1: [LocalVariableAccess] access to local variable ia
# 9| 0: [IntLiteral] 0
# 9| 1: [IntLiteral] 0
# 10| 3: [ExprStmt] ...;
# 10| 0: [AssignExpr] ... = ...
# 10| 0: [ArrayAccess] access to array element
# 10| -1: [LocalVariableAccess] access to local variable ia
# 10| 0: [IntLiteral] 1
# 10| 1: [IntLiteral] 1
# 11| 4: [LocalVariableDeclStmt] ... ...;
# 11| 0: [LocalVariableDeclAndInitExpr] Int32* ip = ...
# 11| -1: [TypeMention] int*
# 11| 1: [TypeMention] int
# 11| 0: [LocalVariableAccess] access to local variable ip
# 11| 1: [AddressOfExpr] &...
# 11| 0: [LocalVariableAccess] access to local variable i
# 12| 5: [ExprStmt] ...;
# 12| 0: [AssignExpr] ... = ...
# 12| 0: [LocalVariableAccess] access to local variable ip
# 12| 1: [AddExpr] ... + ...
# 12| 0: [LocalVariableAccess] access to local variable ip
# 12| 1: [IntLiteral] 1
# 13| 6: [ExprStmt] ...;
# 13| 0: [AssignExpr] ... = ...
# 13| 0: [LocalVariableAccess] access to local variable ip
# 13| 1: [AddExpr] ... + ...
# 13| 0: [PointerIndirectionExpr] *...
# 13| 0: [LocalVariableAccess] access to local variable ip
# 13| 1: [LocalVariableAccess] access to local variable ip
# 14| 7: [ExprStmt] ...;
# 14| 0: [AssignExpr] ... = ...
# 14| 0: [LocalVariableAccess] access to local variable ip
# 14| 1: [AddExpr] ... + ...
# 14| 0: [PointerIndirectionExpr] *...
# 14| 0: [LocalVariableAccess] access to local variable ip
# 14| 1: [AddressOfExpr] &...
# 14| 0: [LocalVariableAccess] access to local variable i
# 15| 8: [LocalVariableDeclStmt] ... ...;
# 15| 0: [LocalVariableDeclAndInitExpr] Int32* ip42 = ...
# 15| -1: [TypeMention] int*
# 15| 1: [TypeMention] int
# 15| 0: [LocalVariableAccess] access to local variable ip42
# 15| 1: [AddressOfExpr] &...
# 15| 0: [LocalVariableAccess] access to local variable i
# 16| 9: [ExprStmt] ...;
# 16| 0: [PostIncrExpr] ...++
# 16| 0: [LocalVariableAccess] access to local variable ip
# 17| 10: [ExprStmt] ...;
# 17| 0: [AssignExpr] ... = ...
# 17| 0: [LocalVariableAccess] access to local variable ip
# 17| 1: [SubExpr] ... - ...
# 17| 0: [LocalVariableAccess] access to local variable ip
# 17| 1: [IntLiteral] 1
# 18| 11: [ExprStmt] ...;
# 18| 0: [AssignExpr] ... = ...
# 18| 0: [PointerIndirectionExpr] *...
# 18| 0: [LocalVariableAccess] access to local variable ip42
# 18| 1: [SizeofExpr] sizeof(..)
# 18| 0: [TypeAccess] access to type Char*
# 18| 0: [TypeMention] char*
# 18| 1: [TypeMention] char
# 19| 12: [LocalVariableDeclStmt] ... ...;
# 19| 0: [LocalVariableDeclAndInitExpr] Int64 distance = ...
# 19| -1: [TypeMention] long
# 19| 0: [LocalVariableAccess] access to local variable distance
# 19| 1: [SubExpr] ... - ...
# 19| 0: [LocalVariableAccess] access to local variable ip
# 19| 1: [LocalVariableAccess] access to local variable ip42
# 22| 7: [Method] f
# 22| -1: [TypeMention] Void
#-----| 2: (Parameters)
# 22| 0: [Parameter] p
# 22| -1: [TypeMention] char*
# 22| 1: [TypeMention] char
# 23| 4: [BlockStmt] {...}
# 24| 0: [ExprStmt] ...;
# 24| 0: [MethodCall] call to method ToString
# 24| -1: [PointerIndirectionExpr] *...
# 24| 0: [ParameterAccess] access to parameter p
# 25| 1: [ExprStmt] ...;
# 25| 0: [MethodCall] call to method ToString
# 25| -1: [PointerIndirectionExpr] *...
# 25| 0: [ParameterAccess] access to parameter p
# 26| 2: [ExprStmt] ...;
# 26| 0: [MethodCall] call to method ToString
# 26| -1: [PointerIndirectionExpr] *...
# 26| 0: [AddExpr] ... + ...
# 26| 0: [ParameterAccess] access to parameter p
# 26| 1: [IntLiteral] 0
# 30| 8: [Method] g
# 30| -1: [TypeMention] Void
# 30| 4: [BlockStmt] {...}
# 32| 9: [Method] h
# 32| -1: [TypeMention] Void
# 33| 4: [BlockStmt] {...}
# 34| 0: [UnsafeStmt] unsafe {...}
# 35| 0: [BlockStmt] {...}
# 36| 0: [LocalVariableDeclStmt] ... ...;
# 36| 0: [LocalVariableDeclAndInitExpr] Int32[] data = ...
# 36| -1: [TypeMention] Int32[]
# 36| 0: [LocalVariableAccess] access to local variable data
# 36| 1: [ArrayCreation] array creation of type Int32[]
# 36| -1: [TypeMention] Int32[]
# 36| 1: [TypeMention] int
# 36| 0: [IntLiteral] 10
# 37| 1: [FixedStmt] fixed(...) { ... }
# 37| -1: [LocalVariableDeclAndInitExpr] Int32* p = ...
# 37| -1: [TypeMention] int*
# 37| 1: [TypeMention] int
# 37| 0: [LocalVariableAccess] access to local variable p
# 37| 1: [CastExpr] (...) ...
# 37| 1: [LocalVariableAccess] access to local variable data
# 38| 0: [BlockStmt] {...}
# 44| 2: [Class] SafeClass