日期:2014-05-16  浏览次数:20830 次

如何消除warnings:type defaults to 'int' in declaration of?
代码中使用了一个函数:
  extern kerSysLedCtrl(BOARD_LED_NAME ledName, BOARD_LED_STATE ledState);

  其所使用的两个参数BOARD_LED_NAME 、 BOARD_LED_STATE 都是类似于以下定义的枚举类型。
  typedef enum
{
  kLedStateOff, /* turn led off */
  kLedStateOn, /* turn led on */
  kLedStateUserWpsSessionOverLap /* 100ms on, off for 500ms */  
} BOARD_LED_STATE;

  编译的时候,该行报一个warning,问题是Makefile将其视为一个错误。我知道可以通过修改MAKEFILE将这个错误变成warning从而编译通过,但因为此MAKEFILE很多人在用,我不想修改MAKEFILE.
  因此请大家赐教,如何改才能消除这个warning?

------解决方案--------------------
你的头文件是否包含全了?
另外,那个extern函数没有返回值,加上试试