CXX=g++ CXXFLAGS=-g -Wall -std=c++11 TARGETS=0-reference 1-callbyreference 4-usepointinline 5-usepointinitializer 6-usepointrefinitializer 7-constCast BADTARGETS=2-brokencallbyrefconst 3-constmadness allgood: 0 1 4 5 6 7 allbad: 2 3 0: 0-reference 1: 1-callbyreference 2: 2-brokencallbyrefconst 3: 3-constmadness 4: 4-usepointinline 5: 5-usepointinitializer 6: 6-usepointrefinitializer 7: 7-constCast 4-usepointinline: 4-usepointinline-O3 4-usepointinline.cc 4-PointInline.h $(CXX) $(CXXFLAGS) 4-usepointinline.cc -o 4-usepointinline 4-usepointinline-O3: 4-usepointinline.cc 4-PointInline.h $(CXX) $(CXXFLAGS) -O3 4-usepointinline.cc -o 4-usepointinline-O3 5-usepointinitializer: 5-usepointinitializer.cc 5-PointInitializer.h $(CXX) $(CXXFLAGS) 5-usepointinitializer.cc -o 5-usepointinitializer 6-usepointrefinitializer: 6-usepointrefinitializer.cc 6-PointRefInitializer.h $(CXX) $(CXXFLAGS) 6-usepointrefinitializer.cc -o 6-usepointrefinitializer clean: rm -f *~ $(TARGETS) $(BADTARGETS) 4-usepointinline-O3