===
header guard
===
%ifndef __SOME_INC__
%define __SOME_INC__
; ...
%endif ;__SOME_INC__
---
(source_file
  (preproc_if
    (word)
    (body
      (preproc_def
        (word)
        (preproc_arg))
      (comment)))
  (comment))
===
x86_64 sys_write
===
%macro sys_read 3.nolist 0
	mov	rdx, %3
	mov	rsi, %2
	mov	rdi, %1
	mov	rax, 0
	syscall
%endmacro
---
(source_file
  (preproc_multiline_macro
    (word)
    (preproc_multiline_macro_arg_spec)
    (number_literal)
    (body
      (source_line
        (instruction
          (actual_instruction
            (word)
            (operands
              (operand
                (register))
              (operand
                (preproc_expression))))))
      (source_line
        (instruction
          (actual_instruction
            (word)
            (operands
              (operand
                (register))
              (operand
                (preproc_expression))))))
      (source_line
        (instruction
          (actual_instruction
            (word)
            (operands
              (operand
                (register))
              (operand
                (preproc_expression))))))
      (source_line
        (instruction
          (actual_instruction
            (word)
            (operands
              (operand
                (register))
              (operand
                (number_literal))))))
      (source_line
        (instruction
          (actual_instruction
            (word)))))))
