Cycles renders black object with smooth shading and negative scale. Earlier was similar bug reports in Blender itself, but now this happens in Cycles.
I have managed to trace back and can offer possible fix:
in src/kernel/geom/geom_triangle.h, function triangle_smooth_normal you should invert normal vector if it is negative scale:
normalize((1.0f - u - v)*n2 + u*n0 + v*n1) => -normalize((1.0f - u - v)*n2 + u*n0 + v*n1)