Fix TestOperatorOverload for 32-bit builds

- use more goodies from Makefile.rules to correctly build a 32-bit
binary.
- avoid hardcoding typeof(nil) in the test.

This should partially fix the linux bot. There is still one assertion
failure remaining, which I'll have to investigate separately, as I am
not experiencing it locally.

llvm-svn: 328083
This commit is contained in:
Pavel Labath 2018-03-21 09:43:50 +00:00
parent 625f757837
commit 95f7572c6f
2 changed files with 5 additions and 15 deletions

View File

@ -1,18 +1,8 @@
LEVEL = ../../../make
CXX_SOURCES = a.cpp b.cpp
CXXFLAGS_NO_DEBUGINFO = -c
CXXFLAGS_DEBUGINFO = -c -g
all: main
main: a.o b.o
$(CXX) $^ -o $@ $(LDFLAGS)
a.o: a.cpp
$(CXX) $< $(CXXFLAGS_NO_DEBUGINFO) -o $@
b.o: b.cpp
$(CXX) $< $(CXXFLAGS_DEBUGINFO) -o $@
include $(LEVEL)/Makefile.rules
a.o: a.cpp
$(CC) $(CFLAGS_NO_DEBUG) -c $< -o $@

View File

@ -10,13 +10,13 @@ class TestOperatorOverload(TestBase):
self.build()
(target, process, thread,
main_breakpoint) = lldbutil.run_to_source_breakpoint(self,
"break here", lldb.SBFileSpec("b.cpp"), exe_name = "main")
"break here", lldb.SBFileSpec("b.cpp"))
frame = thread.GetSelectedFrame()
value = frame.EvaluateExpression("x == nil")
self.assertTrue(str(value.GetError())
.find("comparison between NULL and non-pointer ('Tinky' and NULL)")
!= -1)
self.assertTrue(str(value.GetError())
.find("invalid operands to binary expression ('Tinky' and 'long')")
.find("invalid operands to binary expression ('Tinky' and")
!= -1)
self.assertFalse(value.GetError().Success())