Function that decides, how variable of type 'type' should be checked for pointers
| 399 | |
| 400 | // Function that decides, how variable of type 'type' should be checked for pointers |
| 401 | void CheckVariable(char* ptr, const ExternTypeInfo& type) |
| 402 | { |
| 403 | if(!type.pointerCount) |
| 404 | return; |
| 405 | switch(type.subCat) |
| 406 | { |
| 407 | case ExternTypeInfo::CAT_ARRAY: |
| 408 | CheckArray(ptr, type); |
| 409 | break; |
| 410 | case ExternTypeInfo::CAT_POINTER: |
| 411 | MarkPointer(ptr, type, true); |
| 412 | break; |
| 413 | case ExternTypeInfo::CAT_CLASS: |
| 414 | CheckClass(ptr, type); |
| 415 | break; |
| 416 | case ExternTypeInfo::CAT_FUNCTION: |
| 417 | CheckFunction(ptr); |
| 418 | break; |
| 419 | } |
| 420 | } |
| 421 | } |
| 422 | |
| 423 | // Set range of memory that is not checked. Used to exclude pointers to stack from marking and GC |
no test coverage detected