From 4410084223ae6ea7c0d4808599786078d83fac0b Mon Sep 17 00:00:00 2001 From: Akim Demaille Date: Thu, 9 Aug 2018 07:33:23 +0200 Subject: [PATCH] c++: variant: add more assertions * data/variant.hh (variant::as): Check yytypeid_ before checking *yytypeid_. --- data/variant.hh | 2 ++ 1 file changed, 2 insertions(+) diff --git a/data/variant.hh b/data/variant.hh index 7a6fbfb9..41ed84ab 100644 --- a/data/variant.hh +++ b/data/variant.hh @@ -140,6 +140,7 @@ m4_define([b4_variant_define], T& as () {]b4_parse_assert_if([ + YYASSERT (yytypeid_); YYASSERT (*yytypeid_ == typeid (T)); YYASSERT (sizeof (T) <= S);])[ return *yyas_ (); @@ -150,6 +151,7 @@ m4_define([b4_variant_define], const T& as () const {]b4_parse_assert_if([ + YYASSERT (yytypeid_); YYASSERT (*yytypeid_ == typeid (T)); YYASSERT (sizeof (T) <= S);])[ return *yyas_ ();