Почему он компилируется в исходниках Android?

Я пытаюсь скомпилировать adb (core / adb) в Windows, используя VS2008 вручную.
В функции

static __inline__  char*  adb_dirstart( const char*  path )
{
char*  p  = strchr(path, '/');
...

Я получаю ошибку:

sysdeps.h(247) : error C2440: 'initializing' : cannot
convert from 'const char *' to 'char *'

Тип возврата strchr, отображаемый VS2008 и описано здесь является

const char * strchr ( const char * str, int character );
char * strchr (       char * str, int character );

Поскольку аргумент path является const char *, следует использовать первый вариант, возвращающий константу.

Так почему же он компилируется в Android SDK? Есть ли переключатель компилятора, используемый в сценариях сборки?

1

Решение

Задача ещё не решена.

Другие решения