Mercurial > vim
annotate src/testdir/test33.in @ 10658:77d66e9ac0ab v8.0.0219
patch 8.0.0219: ubsan reports errors for overflow
commit https://github.com/vim/vim/commit/7a40ea2138102545848ea86a361f1b8dec7552b5
Author: Bram Moolenaar <Bram@vim.org>
Date: Sun Jan 22 18:34:57 2017 +0100
patch 8.0.0219: ubsan reports errors for overflow
Problem: Ubsan reports errors for integer overflow.
Solution: Define macros for minimum and maximum values. Select an
expression based on the value. (Mike Williams)
author | Christian Brabandt <cb@256bit.org> |
---|---|
date | Sun, 22 Jan 2017 18:45:04 +0100 |
parents | 3fc0f57ecb91 |
children |
rev | line source |
---|---|
7 | 1 Test for 'lisp' |
2 If the lisp feature is not enabled, this will fail! | |
3 | |
4 STARTTEST | |
5 :so small.vim | |
6 :set lisp | |
7 /^(defun | |
8 =G:/^(defun/,$w! test.out | |
9 :q! | |
10 ENDTEST | |
11 | |
12 (defun html-file (base) | |
13 (format nil "~(~A~).html" base)) | |
14 | |
15 (defmacro page (name title &rest body) | |
16 (let ((ti (gensym))) | |
17 `(with-open-file (*standard-output* | |
18 (html-file ,name) | |
19 :direction :output | |
20 :if-exists :supersede) | |
21 (let ((,ti ,title)) | |
22 (as title ,ti) | |
23 (with center | |
24 (as h2 (string-upcase ,ti))) | |
25 (brs 3) | |
26 ,@body)))) | |
27 | |
28 ;;; Utilities for generating links | |
29 | |
30 (defmacro with-link (dest &rest body) | |
31 `(progn | |
32 (format t "<a href=\"~A\">" (html-file ,dest)) | |
33 ,@body | |
34 (princ "</a>"))) |