Как отключить заголовок «curses.h» (часть «stdio.h в Xcode 6.3 OSX Yosemite), чтобы избежать конфликтующих объявлений функций

Я пытаюсь построить проект в XCode, но я получаю ошибкиImplicit declaration of function 'clear' is invalid in C99 а такжеConflicting types for 'clear'.

Вот код:

//main.c
#include <stdio.h>
#include "tree.h"

int main(){
  clear(); // Implicit declaration of function 'clear' is invalid in C99
  return 0;
}

//tree.c
#include <stdio.h>
#include "tree.h"
void clear(){ ///Conflicting types for 'clear'
  printf("Command clear.\n");
}

//tree.h
#include <stdio.h>

void clear(); ///Conflicting types for 'clear'

Почему я получаю эти ошибки и предупреждения? Я пытался найти решение на StackOverflow, но все связанные ответы были о том случае, когда не было#include какой-то

«ясно» не является ключевым словом в C, так что это не тот случай, не так ли?
(источник:http://aboutc.weebly.com/keywords.html)

Связанные темы (не отвечайте на мой вопрос, хотя они на самом деле связаны):

Неявное объявление функции sum в C99 недопустимоНеявное объявление функции недействительно в C99

Спасибо за любую помощь.

ОБНОВИТЬ!

Оказывается, что изменение названияclear намерение кcleark Функция решила проблему. Тем не менее это пока не имеет для меня никакого смысла.

ОБНОВЛЕНИЕ 2!

Я основал свой проект наcommand line tool шаблон из Xcode 6.3 на OS 10.10. Из-за этого Xcode автоматически добавил некоторые библиотеки и флаги в компилятор проекта. Здесь самое важное то, чтоcurses.h заголовок был добавлен, и этот заголовок ужесодержитclear() функция.

ВотConflicting types for 'clear' журнал ошибок:/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.10.sdk/usr/include/curses.h:541:28: Previous declaration is here

Я пытался удалить-lcurses из флагов компилятора вручную, но я не смог найти такие настройки. Есть ли другой способ построить проект? (В целом моя цель - использовать отладчик Xcode при расширении проекта)

ОБНОВЛЕНИЕ 3! Согласно тому, что Пол Гриффитс обнаружил и опубликовал в комментарии ниже, проблема заключается в следующем:

Я действительно могу повторить эту проблему с Xcode 6.3.1 только с представленным кодом.По какой-то причине stdio.h, кажется, включает curses.h (то есть, если вы не включите stdio.h, эта проблема исчезнет), и я не смог быстро найти способ остановить это, делая это. Это кажется проблематичным, поскольку стандартные заголовки не должны импортировать случайные символы в глобальное пространство имен без простого и очевидного способа его отключения.

Ответы на вопрос(1)

Ваш ответ на вопрос