333{
334
335 static const WCHAR str_hash_tests[][10] = {
336 {'a','b','c','d',0},
337 {'a','B','C','d','1',0},
338 {'1','2','3',0},
339 {'A',0},
340 {'a',0},
341 { 0 }
342 };
343
344 static const int int_hash_tests[] = {
345 0, -1, 100, 1, 255
346 };
347
348 static const FLOAT float_hash_tests[] = {
349 0.0, -1.0, 100.0, 1.0, 255.0, 1.234
350 };
351
352 IDictionary *dict;
361
363 &IID_IDictionary, (void**)&dict);
365
369 hr = IDictionary_get_HashVal(dict, &
key, &
hash);
373
376
377 hr = IDictionary_put_CompareMode(dict, BinaryCompare);
379
383 hr = IDictionary_get_HashVal(dict, &
key, &
hash);
389
393
397 hr = IDictionary_get_HashVal(dict, &
key, &
hash);
403
405 hr = IDictionary_put_CompareMode(dict, DatabaseCompare);
407
411 hr = IDictionary_get_HashVal(dict, &
key, &
hash);
417 }
418
422 hr = IDictionary_get_HashVal(dict, &
key, &
hash);
426
430 hr = IDictionary_get_HashVal(dict, &
key, &
hash);
434
438 hr = IDictionary_get_HashVal(dict, &
key, &
hash);
442
446 hr = IDictionary_get_HashVal(dict, &
key, &
hash);
450
454 hr = IDictionary_get_HashVal(dict, &
key, &
hash);
458
462 hr = IDictionary_get_HashVal(dict, &
key, &
hash);
466
471
473
477 hr = IDictionary_get_HashVal(dict, &
key, &
hash);
482
483 i2 = int_hash_tests[
i];
487 hr = IDictionary_get_HashVal(dict, &
key, &
hash);
492
496 hr = IDictionary_get_HashVal(dict, &
key, &
hash);
501
502 i4 = int_hash_tests[
i];
506 hr = IDictionary_get_HashVal(dict, &
key, &
hash);
511
516 hr = IDictionary_get_HashVal(dict, &
key, &
hash);
521
522 ui1 = int_hash_tests[
i];
526 hr = IDictionary_get_HashVal(dict, &
key, &
hash);
531 }
532
533
535 fx4.
i.exp_bias = 0xff;
536
540 hr = IDictionary_get_HashVal(dict, &
key, &
hash);
545
546
549 fx4.
i.exp_bias = 0xff;
550
554 hr = IDictionary_get_HashVal(dict, &
key, &
hash);
558
559
561 fx8.
i.exp_bias = 0x7ff;
562
566 hr = IDictionary_get_HashVal(dict, &
key, &
hash);
571
575 hr = IDictionary_get_HashVal(dict, &
key, &
hash);
580
581
585 fx8.
i.exp_bias = 0x7ff;
586
590 hr = IDictionary_get_HashVal(dict, &
key, &
hash);
594
598 hr = IDictionary_get_HashVal(dict, &
key, &
hash);
602
604 double dbl;
607
609
613 hr = IDictionary_get_HashVal(dict, &
key, &
hash);
618
619 flt = float_hash_tests[
i];
623 hr = IDictionary_get_HashVal(dict, &
key, &
hash);
628
632 hr = IDictionary_get_HashVal(dict, &
key, &
hash);
637
638 dbl = float_hash_tests[
i];
642 hr = IDictionary_get_HashVal(dict, &
key, &
hash);
647
651 hr = IDictionary_get_HashVal(dict, &
key, &
hash);
656
658 date = float_hash_tests[
i];
661 hr = IDictionary_get_HashVal(dict, &
key, &
hash);
666 }
667
668
673 hr = IDictionary_get_HashVal(dict, &
key, &
hash);
677
678
683 hr = IDictionary_get_HashVal(dict, &
key, &
hash);
687
692 hr = IDictionary_get_HashVal(dict, &
key, &
hash);
696
697
702 hr = IDictionary_get_HashVal(dict, &
key, &
hash);
706
711 hr = IDictionary_get_HashVal(dict, &
key, &
hash);
715
716
717if (0) {
720 hr = IDictionary_get_HashVal(dict, &
key, &
hash);
721}
727 hr = IDictionary_get_HashVal(dict, &
key, &
hash);
731
737 hr = IDictionary_get_HashVal(dict, &
key, &
hash);
741
742
748 hr = IDictionary_get_HashVal(dict, &
key, &
hash);
752
758 hr = IDictionary_get_HashVal(dict, &
key, &
hash);
762
763 IDictionary_Release(dict);
764}
static DWORD get_str_hash(const WCHAR *str, CompareMethod method)
static DWORD get_num_hash(FLOAT num)
static DWORD get_ptr_hash(void *ptr)
GLsizei GLenum const GLvoid GLsizei GLenum GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLint GLint GLint GLshort GLshort GLshort GLubyte GLubyte GLubyte GLuint GLuint GLuint GLushort GLushort GLushort GLbyte GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLfloat GLint GLint GLint GLint GLshort GLshort GLshort GLshort GLubyte GLubyte GLubyte GLubyte GLuint GLuint GLuint GLuint GLushort GLushort GLushort GLushort GLboolean const GLdouble const GLfloat const GLint const GLshort const GLbyte const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLdouble const GLfloat const GLfloat const GLint const GLint const GLshort const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort GLenum GLenum GLenum GLfloat GLenum GLint GLenum GLenum GLenum GLfloat GLenum GLenum GLint GLenum GLfloat GLenum GLint GLint GLushort GLenum GLenum GLfloat GLenum GLenum GLint GLfloat const GLubyte GLenum GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLint GLint GLsizei GLsizei GLint GLenum GLenum const GLvoid GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLenum const GLdouble GLenum GLenum const GLfloat GLenum GLenum const GLint GLsizei GLuint GLfloat GLuint GLbitfield GLfloat GLint GLuint GLboolean GLenum GLfloat GLenum GLbitfield GLenum GLfloat GLfloat GLint GLint const GLfloat GLenum GLfloat GLfloat GLint GLint GLfloat GLfloat GLint GLint const GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat const GLdouble const GLfloat const GLdouble const GLfloat GLint i
GLsizei GLenum const GLvoid GLsizei GLenum GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLint GLint GLint GLshort GLshort GLshort GLubyte GLubyte GLubyte GLuint GLuint GLuint GLushort GLushort GLushort GLbyte GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLfloat GLint GLint GLint GLint GLshort GLshort GLshort GLshort GLubyte GLubyte GLubyte GLubyte GLuint GLuint GLuint GLuint GLushort GLushort GLushort GLushort GLboolean const GLdouble const GLfloat const GLint const GLshort const GLbyte const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLdouble const GLfloat const GLfloat const GLint const GLint const GLshort const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort GLenum GLenum GLenum GLfloat GLenum GLint GLenum GLenum GLenum GLfloat GLenum GLenum GLint GLenum GLfloat GLenum GLint GLint GLushort GLenum GLenum GLfloat GLenum GLenum GLint GLfloat const GLubyte GLenum GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLint GLint GLsizei GLsizei GLint GLenum GLenum const GLvoid GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLenum const GLdouble GLenum GLenum const GLfloat GLenum GLenum const GLint GLsizei GLuint GLfloat GLuint GLbitfield GLfloat GLint GLuint GLboolean GLenum GLfloat GLenum GLbitfield GLenum GLfloat GLfloat GLint GLint const GLfloat GLenum GLfloat GLfloat GLint GLint GLfloat GLfloat GLint GLint const GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat const GLdouble * u
static IUnknown test_unk2
static IDispatch test_disp
HRESULT WINAPI DECLSPEC_HOTPATCH VariantClear(VARIANTARG *pVarg)