提交 a27b03c7 编写于 作者: J Jerry Jacobs

UNITY_OUTPUT_CHAR can emit a redundant declaration, we scope the extern declartion to the unity.c

上级 8c37d7b9
......@@ -7,6 +7,11 @@
#include "unity.h"
#include <stddef.h>
#ifndef UNITY_OUTPUT_CHAR_USE_PUTC
//If defined as something else, make sure we declare it here so it's ready for use
extern int UNITY_OUTPUT_CHAR(int);
#endif
#define UNITY_FAIL_AND_BAIL { Unity.CurrentTestFailed = 1; longjmp(Unity.AbortFrame, 1); }
#define UNITY_IGNORE_AND_BAIL { Unity.CurrentTestIgnored = 1; longjmp(Unity.AbortFrame, 1); }
/// return prematurely if we are already in failure or ignore state
......
......@@ -291,9 +291,12 @@ typedef UNITY_DOUBLE_TYPE _UD;
//Default to using putchar, which is defined in stdio.h
#include <stdio.h>
#define UNITY_OUTPUT_CHAR(a) putchar(a)
#else
//If defined as something else, make sure we declare it here so it's ready for use
extern int UNITY_OUTPUT_CHAR(int);
// We need to flag the output char function uses putc in
// unity.c the extern function is not declared then.
// Previously the extern was declared in this header but
// when redundant function declaration compiler flag is enabled
// it wont compile.
#define UNITY_OUTPUT_CHAR_USE_PUTC
#endif
#ifndef UNITY_PRINT_EOL
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册