1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2025-02-01 05:01:59 +01:00
llvm-mirror/test/tools/llvm-ml/macro_errors.test
Eric Astor 5e9623a87c [ms] [llvm-ml] Enable support for MASM-style macro procedures
Allows the MACRO directive to define macro procedures with parameters and macro-local symbols.

Supports required and optional parameters (including default values), and matches ml64.exe for its macro-local symbol handling (up to 65536 macro-local symbols in any translation unit).

Reviewed By: thakis

Differential Revision: https://reviews.llvm.org/D89729
2020-11-04 10:29:57 -05:00

25 lines
801 B
Plaintext

; RUN: not llvm-ml -filetype=asm %s 2>&1 | FileCheck %s --implicit-check-not=error:
.code
; CHECK: error: Vararg parameter 'param' should be last in the list of parameters
; CHECK: error: unexpected 'ENDM' in file, no current macro definition
early_vararg_macro MACRO param:vararg, trailing_param
ENDM
; CHECK: error: macro 'colliding_parameters_macro' has multiple parameters named 'paRAM'
; CHECK: error: unexpected 'ENDM' in file, no current macro definition
colliding_parameters_macro MACRO Param, paRAM
ENDM
; CHECK: error: missing parameter qualifier for 'param' in macro 'missing_qualifier_macro'
; CHECK: error: unexpected 'ENDM' in file, no current macro definition
missing_qualifier_macro MACRO param:
ENDM
; CHECK: error: no matching 'endm' in definition
missing_end_macro MACRO
end