llvm/test/tools/llvm-readobj/codeview-merging-cycle.test
Alexandre Ganea 0444f57668 [DebugInfo] Common behavior for error types
Following D50807, and heading towards D50664, this intermediary change does the following:

1. Upgrade all custom Error types in llvm/trunk/lib/DebugInfo/ to use the new StringError behavior (D50807).
2. Implement std::is_error_code_enum and make_error_code() for DebugInfo error enumerations.
3. Rename GenericError -> PDBError (the file will be renamed in a subsequent commit)
4. Update custom error messages to follow the same formatting: (\w\s*)+\.
5. Keep generic "file not found" (ENOENT) errors as they are in PDB code. Previously, there used to be a custom enumeration for that purpose.
6. Remove a few extraneous LF in log() implementations. Printing LF is a responsability at a higher level, not at the error level.

Differential Revision: https://reviews.llvm.org/D51499

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@341228 91177308-0d34-0410-b5e6-96231b3b80d8
2018-08-31 17:41:58 +00:00

20 lines
480 B
Plaintext

; RUN: not llvm-readobj -codeview-merged-types %S/Inputs/codeview-cycle.obj 2>&1 | FileCheck %s
; CHECK: Error{{.*}} Input type graph contains cycles
; To reproduce codeview-cycle.obj:
; $ cat codeview-cycle.asm
; .model flat, C
; .code
; pfoo_list TYPEDEF PTR foo_list
; foo_list STRUCT
; next pfoo_list ?
; data dd ?
; foo_list ENDS
; public foo
; foo proc dst:ptr foo_list
; ret
; foo endp
; end
; $ ml -c -Zi codeview-cycle.asm