|  | @@ -327,7 +327,7 @@ CXXFLAGS += -std=c++11
 | 
	
		
			
				|  |  |  ifeq ($(SYSTEM),Darwin)
 | 
	
		
			
				|  |  |  CXXFLAGS += -stdlib=libc++
 | 
	
		
			
				|  |  |  endif
 | 
	
		
			
				|  |  | -CPPFLAGS += -g -Wall -Wextra -Werror -Wno-long-long -Wno-unused-parameter -DOSATOMIC_USE_INLINED=1
 | 
	
		
			
				|  |  | +CPPFLAGS += -g -Wall -Wextra -Werror -Wno-long-long -Wno-unused-parameter -DOSATOMIC_USE_INLINED=1 -Ithird_party/abseil-cpp
 | 
	
		
			
				|  |  |  LDFLAGS += -g
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  CPPFLAGS += $(CPPFLAGS_$(CONFIG))
 | 
	
	
		
			
				|  | @@ -1180,6 +1180,7 @@ streaming_throughput_test: $(BINDIR)/$(CONFIG)/streaming_throughput_test
 | 
	
		
			
				|  |  |  stress_test: $(BINDIR)/$(CONFIG)/stress_test
 | 
	
		
			
				|  |  |  thread_manager_test: $(BINDIR)/$(CONFIG)/thread_manager_test
 | 
	
		
			
				|  |  |  thread_stress_test: $(BINDIR)/$(CONFIG)/thread_stress_test
 | 
	
		
			
				|  |  | +vector_test: $(BINDIR)/$(CONFIG)/vector_test
 | 
	
		
			
				|  |  |  writes_per_rpc_test: $(BINDIR)/$(CONFIG)/writes_per_rpc_test
 | 
	
		
			
				|  |  |  public_headers_must_be_c89: $(BINDIR)/$(CONFIG)/public_headers_must_be_c89
 | 
	
		
			
				|  |  |  boringssl_aes_test: $(BINDIR)/$(CONFIG)/boringssl_aes_test
 | 
	
	
		
			
				|  | @@ -1617,6 +1618,7 @@ buildtests_cxx: privatelibs_cxx \
 | 
	
		
			
				|  |  |    $(BINDIR)/$(CONFIG)/stress_test \
 | 
	
		
			
				|  |  |    $(BINDIR)/$(CONFIG)/thread_manager_test \
 | 
	
		
			
				|  |  |    $(BINDIR)/$(CONFIG)/thread_stress_test \
 | 
	
		
			
				|  |  | +  $(BINDIR)/$(CONFIG)/vector_test \
 | 
	
		
			
				|  |  |    $(BINDIR)/$(CONFIG)/writes_per_rpc_test \
 | 
	
		
			
				|  |  |    $(BINDIR)/$(CONFIG)/boringssl_aes_test \
 | 
	
		
			
				|  |  |    $(BINDIR)/$(CONFIG)/boringssl_asn1_test \
 | 
	
	
		
			
				|  | @@ -1739,6 +1741,7 @@ buildtests_cxx: privatelibs_cxx \
 | 
	
		
			
				|  |  |    $(BINDIR)/$(CONFIG)/stress_test \
 | 
	
		
			
				|  |  |    $(BINDIR)/$(CONFIG)/thread_manager_test \
 | 
	
		
			
				|  |  |    $(BINDIR)/$(CONFIG)/thread_stress_test \
 | 
	
		
			
				|  |  | +  $(BINDIR)/$(CONFIG)/vector_test \
 | 
	
		
			
				|  |  |    $(BINDIR)/$(CONFIG)/writes_per_rpc_test \
 | 
	
		
			
				|  |  |    $(BINDIR)/$(CONFIG)/resolver_component_test_unsecure \
 | 
	
		
			
				|  |  |    $(BINDIR)/$(CONFIG)/resolver_component_test \
 | 
	
	
		
			
				|  | @@ -2155,6 +2158,8 @@ test_cxx: buildtests_cxx
 | 
	
		
			
				|  |  |  	$(Q) $(BINDIR)/$(CONFIG)/thread_manager_test || ( echo test thread_manager_test failed ; exit 1 )
 | 
	
		
			
				|  |  |  	$(E) "[RUN]     Testing thread_stress_test"
 | 
	
		
			
				|  |  |  	$(Q) $(BINDIR)/$(CONFIG)/thread_stress_test || ( echo test thread_stress_test failed ; exit 1 )
 | 
	
		
			
				|  |  | +	$(E) "[RUN]     Testing vector_test"
 | 
	
		
			
				|  |  | +	$(Q) $(BINDIR)/$(CONFIG)/vector_test || ( echo test vector_test failed ; exit 1 )
 | 
	
		
			
				|  |  |  	$(E) "[RUN]     Testing writes_per_rpc_test"
 | 
	
		
			
				|  |  |  	$(Q) $(BINDIR)/$(CONFIG)/writes_per_rpc_test || ( echo test writes_per_rpc_test failed ; exit 1 )
 | 
	
		
			
				|  |  |  	$(E) "[RUN]     Testing resolver_component_tests_runner_invoker_unsecure"
 | 
	
	
		
			
				|  | @@ -17201,6 +17206,49 @@ endif
 | 
	
		
			
				|  |  |  endif
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | +VECTOR_TEST_SRC = \
 | 
	
		
			
				|  |  | +    test/core/support/vector_test.cc \
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +VECTOR_TEST_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(VECTOR_TEST_SRC))))
 | 
	
		
			
				|  |  | +ifeq ($(NO_SECURE),true)
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +# You can't build secure targets if you don't have OpenSSL.
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +$(BINDIR)/$(CONFIG)/vector_test: openssl_dep_error
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +else
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +ifeq ($(NO_PROTOBUF),true)
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +# You can't build the protoc plugins or protobuf-enabled targets if you don't have protobuf 3.0.0+.
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +$(BINDIR)/$(CONFIG)/vector_test: protobuf_dep_error
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +else
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +$(BINDIR)/$(CONFIG)/vector_test: $(PROTOBUF_DEP) $(VECTOR_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc++.a $(LIBDIR)/$(CONFIG)/libgrpc.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
 | 
	
		
			
				|  |  | +	$(E) "[LD]      Linking $@"
 | 
	
		
			
				|  |  | +	$(Q) mkdir -p `dirname $@`
 | 
	
		
			
				|  |  | +	$(Q) $(LDXX) $(LDFLAGS) $(VECTOR_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc++.a $(LIBDIR)/$(CONFIG)/libgrpc.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBSXX) $(LDLIBS_PROTOBUF) $(LDLIBS) $(LDLIBS_SECURE) $(GTEST_LIB) -o $(BINDIR)/$(CONFIG)/vector_test
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +endif
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +endif
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +$(OBJDIR)/$(CONFIG)/test/core/support/vector_test.o:  $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc++.a $(LIBDIR)/$(CONFIG)/libgrpc.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +deps_vector_test: $(VECTOR_TEST_OBJS:.o=.dep)
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +ifneq ($(NO_SECURE),true)
 | 
	
		
			
				|  |  | +ifneq ($(NO_DEPS),true)
 | 
	
		
			
				|  |  | +-include $(VECTOR_TEST_OBJS:.o=.dep)
 | 
	
		
			
				|  |  | +endif
 | 
	
		
			
				|  |  | +endif
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  |  WRITES_PER_RPC_TEST_SRC = \
 | 
	
		
			
				|  |  |      test/cpp/performance/writes_per_rpc_test.cc \
 | 
	
		
			
				|  |  |  
 |