소스 검색

variadic functions starpu_***_task_insert abort when hitting unrecognized argument

Nathalie Furmento 11 년 전
부모
커밋
d3e0d32958
2개의 변경된 파일16개의 추가작업 그리고 0개의 파일을 삭제
  1. 4 0
      mpi/src/starpu_mpi_task_insert.c
  2. 12 0
      src/util/starpu_task_insert_utils.c

+ 4 - 0
mpi/src/starpu_mpi_task_insert.c

@@ -465,6 +465,10 @@ int _starpu_mpi_task_insert_v(MPI_Comm comm, struct starpu_codelet *codelet, va_
 		{
 			STARPU_ASSERT_MSG(0, "STARPU_TAG is not supported in MPI mode\n");
 		}
+		else
+		{
+			STARPU_ABORT_MSG("Unrecognized argument %d\n", arg_type);
+		}
 
 	}
 	va_end(varg_list_copy);

+ 12 - 0
src/util/starpu_task_insert_utils.c

@@ -120,6 +120,10 @@ size_t _starpu_task_insert_get_arg_size(va_list varg_list)
 		{
 			(void)va_arg(varg_list, starpu_tag_t);
 		}
+		else
+		{
+			STARPU_ABORT_MSG("Unrecognized argument %d\n", arg_type);
+		}
 	}
 
 	return arg_buffer_size;
@@ -216,6 +220,10 @@ int _starpu_codelet_pack_args(void **arg_buffer, size_t arg_buffer_size, va_list
 		{
 			(void)va_arg(varg_list, starpu_tag_t);
 		}
+		else
+		{
+			STARPU_ABORT_MSG("Unrecognized argument %d\n", arg_type);
+		}
 	}
 
 	if (nargs)
@@ -361,6 +369,10 @@ void _starpu_task_insert_create(void *arg_buffer, size_t arg_buffer_size, struct
 			(*task)->tag_id = tag;
 			(*task)->use_tag = 1;
 		}
+		else
+		{
+			STARPU_ABORT_MSG("Unrecognized argument %d\n", arg_type);
+		}
 	}
 
 	STARPU_ASSERT(cl == NULL || current_buffer == cl->nbuffers);