@achow101 noted we don't reject them therefore they must be silently accepted. This is not part of the specs, we should remove them. Also cc @sipa.

I can take care of this.
BOOST_CHECK(!parse_pub->ToPrivateString(keys_pub, prv1));
    }
    
    std::string norm1;
    BOOST_CHECK(parse_priv->ToNormalizedString(keys_priv, norm1));
    BOOST_CHECK_MESSAGE(EqualDescriptor(norm1, norm_pub), "priv->ToNormalizedString(): " + norm1 + " Norm. desc: " + norm_pub);
    BOOST_CHECK(parse_pub->ToNormalizedString(keys_priv, norm1));
    BOOST_CHECK_MESSAGE(EqualDescriptor(norm1, norm_pub), "pub->ToNormalizedString(): " + norm1 + " Norm. desc: " + norm_pub);
    
    BOOST_CHECK_EQUAL(parse_pub->IsRange(), (flags & RANGE) != 0);
    BOOST_CHECK_EQUAL(parse_priv->IsRange(), (flags & RANGE) != 0);
    
    
    
    
    
    
    
    if (!(flags & RANGE)) assert(scripts.size() == 1);
    size_t max = (flags & RANGE) ? scripts.size() : 3;
    
    for (size_t i = 0; i < max; ++i) {
        
        const auto& ref = scripts[(flags & RANGE) ? i : 0];
        
        for (int t = 0; t < 2; ++t) {
            
            const FlatSigningProvider& key_provider = (flags & HARDENED) ? keys_priv : keys_pub;
            
            FlatSigningProvider script_provider, script_provider_cached;