diff --git a/vdt-integer-overflow.patch b/vdt-integer-overflow.patch new file mode 100644 index 00000000000..9d5b291e01c --- /dev/null +++ b/vdt-integer-overflow.patch @@ -0,0 +1,14 @@ +diff --git a/include/sincos.h b/include/sincos.h +index 563ae93..2ca2855 100644 +--- a/include/sincos.h ++++ b/include/sincos.h +@@ -204,6 +204,9 @@ inline void fast_sincosf_m45_45( const float x, float & s, float &c ) { + } // end details namespace + + /// Single precision sincos ++#ifdef CMS_UNDEFINED_SANITIZER ++__attribute__((no_sanitize("signed-integer-overflow"))) ++#endif + inline void fast_sincosf( const float xx, float & s, float &c ) { + + diff --git a/vdt.spec b/vdt.spec index b6405575687..9dfe470639e 100644 --- a/vdt.spec +++ b/vdt.spec @@ -1,7 +1,8 @@ ### RPM cms vdt 0.4.3 -Source: https://github.com/dpiparo/%{n}/archive/v%{realversion}.tar.gz - +Source: https://github.com/dpiparo/%{n}/archive/v%{realversion}.tar.gz +# To avoid UBSan runtime errors about signed integer overflow: cms-sw/cmssw#46417 +Patch0: vdt-integer-overflow BuildRequires: cmake python3 @@ -9,6 +10,7 @@ BuildRequires: cmake python3 %prep %setup -q -n %{n}-%{realversion} +%patch0 -p1 %build cmake . \