Retro68/gcc/libgo/runtime/go-type-error.c
2017-04-10 13:32:00 +02:00

35 lines
987 B
C

/* go-type-error.c -- invalid hash and equality functions.
Copyright 2009 The Go Authors. All rights reserved.
Use of this source code is governed by a BSD-style
license that can be found in the LICENSE file. */
#include "runtime.h"
#include "go-type.h"
/* A hash function used for a type which does not support hash
functions. */
uintptr_t
__go_type_hash_error (const void *val __attribute__ ((unused)),
uintptr_t key_size __attribute__ ((unused)))
{
runtime_panicstring ("hash of unhashable type");
}
const FuncVal __go_type_hash_error_descriptor =
{ (void *) __go_type_hash_error };
/* An equality function for an interface. */
_Bool
__go_type_equal_error (const void *v1 __attribute__ ((unused)),
const void *v2 __attribute__ ((unused)),
uintptr_t key_size __attribute__ ((unused)))
{
runtime_panicstring ("comparing uncomparable types");
}
const FuncVal __go_type_equal_error_descriptor =
{ (void *) __go_type_equal_error };