• B
    Use enum instead of "static const" in class scope · fda994e1
    Behdad Esfahbod 提交于
    Technically, static const needs an out-of-class definition.  Eg:
    
      CXXLD    libharfbuzz-subset.la
    Undefined symbols for architecture x86_64:
      "OT::FeatureVariationRecord::min_size", referenced from:
          bool OT::GSUBGPOS::subset<OT::PosLookup>(hb_subset_context_t*) constin libharfbuzz_subset_la-hb-subset.o
          bool OT::GSUBGPOS::subset<OT::SubstLookup>(hb_subset_context_t*) constin libharfbuzz_subset_la-hb-subset.o
      "OT::Record<OT::LangSys>::min_size", referenced from:
          OT::Script::subset(hb_subset_context_t*) constin libharfbuzz_subset_la-hb-subset.o
      "OT::IntType<unsigned short, 2u>::min_size", referenced from:
          OT::Script::subset(hb_subset_context_t*) constin libharfbuzz_subset_la-hb-subset.o
          OT::RecordListOf<OT::Feature>::subset(hb_subset_context_t*) const  in libharfbuzz_subset_la-hb-subset.o
    ld: symbol(s) not found for architecture x86_64
    collect2: ld returned 1 exit status
    make[4]: *** [libharfbuzz-subset.la] Error 1
    make[3]: *** [all-recursive] Error 1
    make[2]: *** [all] Error 2
    make[1]: *** [all-recursive] Error 1
    make: *** [all] Error 2
    Exited with code 2
    fda994e1
hb-open-file.hh 15.8 KB