compiles with warnings