diff -urN bro-1.2.1-orig/src/binpac/pac_let.cc bro-1.2.1-ssl-binpac/src/binpac/pac_let.cc --- bro-1.2.1-orig/src/binpac/pac_let.cc 2006-07-26 15:02:39.000000000 -0700 +++ bro-1.2.1-ssl-binpac/src/binpac/pac_let.cc 2007-05-04 15:32:09.695568000 -0700 @@ -108,11 +108,6 @@ void LetField::GenEval(Output* out_cc, Env* env) { GenParseCode(out_cc, env); - if ( type_->attr_if_expr() ) - { - out_cc->println("BINPAC_ASSERT(%s);", - env->RValue(type_->has_value_var())); - } } LetDecl::LetDecl(ID *id, Type *type, Expr *expr) diff -urN bro-1.2.1-orig/src/binpac/pac_type.cc bro-1.2.1-ssl-binpac/src/binpac/pac_type.cc --- bro-1.2.1-orig/src/binpac/pac_type.cc 2006-07-26 15:02:40.000000000 -0700 +++ bro-1.2.1-ssl-binpac/src/binpac/pac_type.cc 2007-05-24 10:56:42.140658000 -0700 @@ -316,9 +316,15 @@ { if ( DefineValueVar() ) { - out_h->println("%s %s const { return %s; }", - DataTypeConstRefStr().c_str(), - env->RValue(value_var()), lvalue()); + if ( attr_if_expr_ ) + out_h->println("%s %s const { BINPAC_ASSERT(%s); return %s; }", + DataTypeConstRefStr().c_str(), + env->RValue(value_var()), + env->RValue(has_value_var()), lvalue()); + else + out_h->println("%s %s const { return %s; }", + DataTypeConstRefStr().c_str(), + env->RValue(value_var()), lvalue()); } foreach (i, FieldList, fields_)