diff --git a/test/test0002/macro_functions.c b/test/test0002/macro_functions.c new file mode 100644 index 0000000..8a42609 --- /dev/null +++ b/test/test0002/macro_functions.c @@ -0,0 +1,8 @@ +#define SUM(X,Y) (X) + (Y) +#define DOUBLE(X) SUM (X, X) + +#define A (1) + +int main() { + return A + DOUBLE (2 * 3); +} diff --git a/test/test0002/proof.answer b/test/test0002/proof.answer new file mode 100644 index 0000000..9ce092e --- /dev/null +++ b/test/test0002/proof.answer @@ -0,0 +1 @@ +9aa535db4d55f66b4ebc5139fbac91127afe24c00c5422e9c15f0391189f8ca5 test/test0002/tmp/macro_functions.c diff --git a/test/test0002/run_test.sh b/test/test0002/run_test.sh new file mode 100755 index 0000000..08d89fd --- /dev/null +++ b/test/test0002/run_test.sh @@ -0,0 +1,33 @@ +#! /bin/sh +## Copyright (C) 2017 Jeremiah Orians +## Copyright (C) 2020-2021 deesix +## This file is part of M2-Planet. +## +## M2-Planet is free software: you can redistribute it and/or modify +## it under the terms of the GNU General Public License as published by +## the Free Software Foundation, either version 3 of the License, or +## (at your option) any later version. +## +## M2-Planet is distributed in the hope that it will be useful, +## but WITHOUT ANY WARRANTY; without even the implied warranty of +## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +## GNU General Public License for more details. +## +## You should have received a copy of the GNU General Public License +## along with M2-Planet. If not, see . + +set -x + +TMPDIR="test/test0002/tmp" + +mkdir -p ${TMPDIR} + +# Build the test +bin/M2-Mesoplanet \ + -E \ + -f test/test0002/macro_functions.c \ + -o ${TMPDIR}/macro_functions.c \ + || exit 1 + +sha256sum -c test/test0002/proof.answer || exit 2 +exit 0