Skip to content
Snippets Groups Projects
Forked from Alchemy Viewer / Alchemy Viewer
Source project has a limited visibility.
  • Nat Goodspeed's avatar
    642c334e
    Fix Xcode 6 compile errors relating to tut::ensure_equals() overloads. · 642c334e
    Nat Goodspeed authored
    lltut.h declares a number of ensure_equals() overloads for various data types,
    notably the types supported by LLSD. We expect these to be called by tut code.
    But the tut code in question is in a template in tut.hpp -- which was
    #included BEFORE the overloads were declared. Previous C++ compilers have
    evidently made multiple passes, collecting the relevant overloads before
    attempting to compile the template bodies. clang does not, complaining that
    the overloads must be declared before the tut.hpp template code that
    references them. Reordering parts of lltut.h seems to address that problem.
    For similar reasons, test programs that use StringVec.h and its operator<<()
    must #include StringVec.h before lltut.h.
    Add ensure_equals(const std::string&, const LLSD::Binary&, const LLSD::Binary&)
    overload. The sloppy mix of (const char*, ...) and (const std::string&, ...)
    overloads bothers me, since for many of those ... types we seem to have to
    duplicate them.
    642c334e
    History
    Fix Xcode 6 compile errors relating to tut::ensure_equals() overloads.
    Nat Goodspeed authored
    lltut.h declares a number of ensure_equals() overloads for various data types,
    notably the types supported by LLSD. We expect these to be called by tut code.
    But the tut code in question is in a template in tut.hpp -- which was
    #included BEFORE the overloads were declared. Previous C++ compilers have
    evidently made multiple passes, collecting the relevant overloads before
    attempting to compile the template bodies. clang does not, complaining that
    the overloads must be declared before the tut.hpp template code that
    references them. Reordering parts of lltut.h seems to address that problem.
    For similar reasons, test programs that use StringVec.h and its operator<<()
    must #include StringVec.h before lltut.h.
    Add ensure_equals(const std::string&, const LLSD::Binary&, const LLSD::Binary&)
    overload. The sloppy mix of (const char*, ...) and (const std::string&, ...)
    overloads bothers me, since for many of those ... types we seem to have to
    duplicate them.
Code owners
Assign users and groups as approvers for specific file changes. Learn more.