target_teams_reduction uses a variable length array which is not supported.  This new makefile looks for the clang error message in the compiler stderr and returns 0 if that is found.
-include ../Makefile.defs
+#-----------------------------------------------------------------------
+# Makefile: expected fail "variable length arrays not supported.
+# "make run" returns 0 if string is found in stderr.
+#-----------------------------------------------------------------------
+# MIT License
+# Copyright (c) 2019 Advanced Micro Devices, Inc. All Rights Reserved.
+#
+# Permission is hereby granted, free of charge, to any person
+# obtaining a copy of this software and associated documentation
+# files (the "Software"), to deal in the Software without
+# restriction, including without limitation the rights to use, copy,
+# modify, merge, publish, distribute, sublicense, and/or sell copies
+# of the Software, and to permit persons to whom the Software is
+# furnished to do so, subject to the following conditions:
+#
+# The above copyright notice and this permission notice shall be
+# included in all copies or substantial portions of the Software.
+#
+# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+# EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+# MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+# NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS
+# BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
+# ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
+# CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
+# SOFTWARE.
-TESTNAME = target_teams_reduction
-TESTSRC_MAIN = target_teams_reduction.cpp
-TESTSRC_AUX =
-TESTSRC_ALL = $(TESTSRC_MAIN) $(TESTSRC_AUX)
+AOMP ?= /usr/lib/aomp
-CLANG = clang++
-OMP_BIN = $(AOMP)/bin/$(CLANG)
-CC = $(OMP_BIN) $(VERBOSE)
-#-ccc-print-phases
-#"-\#\#\#"
+compile.stderr: target_teams_reduction.cpp
+ $(AOMP)/bin/aompcc $^ -o $@ 2>compile.stderr >compile.stdout ; true
-include ../Makefile.rules
+run: compile.stderr
+ grep -q "variable length arrays are not supported" $^
+clean:
+ @[ -f ./compile.stderr ] && rm ./compile.stderr ; true
+ @[ -f ./compile.stdout ] && rm ./compile.stdout ; true
