mirror of
https://gitlab.winehq.org/wine/wine-gecko.git
synced 2024-09-13 09:24:08 -07:00
rm lingering remains of JS_REQUIRES_STACK analysis (no bug, rs=dmandelin)
--HG-- extra : rebase_source : 5e4d245d44f7a0d8f2cd226366e938338d02c7a8
This commit is contained in:
parent
8b4f6c255c
commit
4b19e21219
@ -1,114 +0,0 @@
|
||||
# ***** BEGIN LICENSE BLOCK *****
|
||||
# Version: MPL 1.1/GPL 2.0/LGPL 2.1
|
||||
#
|
||||
# The contents of this file are subject to the Mozilla Public License Version
|
||||
# 1.1 (the "License"); you may not use this file except in compliance with
|
||||
# the License. You may obtain a copy of the License at
|
||||
# http://www.mozilla.org/MPL/
|
||||
#
|
||||
# Software distributed under the License is distributed on an "AS IS" basis,
|
||||
# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
|
||||
# for the specific language governing rights and limitations under the
|
||||
# License.
|
||||
#
|
||||
# The Original Code is Mozilla 2.
|
||||
#
|
||||
# The Initial Developer of the Original Code is
|
||||
# the Mozilla Foundation <http://www.mozilla.org>.
|
||||
#
|
||||
# Portions created by the Initial Developer are Copyright (C) 2008
|
||||
# the Initial Developer. All Rights Reserved.
|
||||
#
|
||||
# Contributor(s):
|
||||
# Benjamin Smedberg <benjamin@smedbergs.us> (Author)
|
||||
#
|
||||
# Alternatively, the contents of this file may be used under the terms of
|
||||
# either the GNU General Public License Version 2 or later (the "GPL"), or
|
||||
# the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
|
||||
# in which case the provisions of the GPL or the LGPL are applicable instead
|
||||
# of those above. If you wish to allow use of your version of this file only
|
||||
# under the terms of either the GPL or the LGPL, and not to allow others to
|
||||
# use your version of this file under the terms of the MPL, indicate your
|
||||
# decision by deleting the provisions above and replace them with the notice
|
||||
# and other provisions required by the GPL or the LGPL. If you do not delete
|
||||
# the provisions above, a recipient may use your version of this file under
|
||||
# the terms of any one of the MPL, the GPL or the LGPL.
|
||||
#
|
||||
# ***** END LICENSE BLOCK *****
|
||||
|
||||
DEPTH = ..
|
||||
topsrcdir = @top_srcdir@
|
||||
srcdir = @srcdir@
|
||||
VPATH = @srcdir@
|
||||
|
||||
# we will do compilations that create dependency files.
|
||||
NEED_MDDEPDIR = 1
|
||||
|
||||
include $(DEPTH)/config/autoconf.mk
|
||||
|
||||
REDGREEN_WARNING_TESTCASES = \
|
||||
green-callred.cpp \
|
||||
green-accessred.cpp \
|
||||
green-tored-badpath.cpp \
|
||||
misdeclared-red-funcptr.cpp \
|
||||
misdeclared-red-funcptr2.cpp \
|
||||
red-togreenptr.cpp \
|
||||
red-togreenptr-return.cpp \
|
||||
red-togreenptr-arg.cpp \
|
||||
red-togreenptr-field.cpp \
|
||||
red-togreenptr-initializer.cpp \
|
||||
red-togreenptr-initializer-struct.cpp \
|
||||
red-togreenptr-initializer-array.cpp \
|
||||
red-togreenptr-initializer-nested.cpp \
|
||||
red-togreenptr-initializer-cast.cpp \
|
||||
green-callredptr.cpp \
|
||||
$(NULL)
|
||||
|
||||
REDGREEN_SUCCESS_TESTCASES = \
|
||||
red-callred.cpp \
|
||||
red-callgreen.cpp \
|
||||
red-accessred.cpp \
|
||||
green-tored.cpp \
|
||||
green-toredptr.cpp \
|
||||
$(NULL)
|
||||
|
||||
STATIC_WARNING_TESTCASES = \
|
||||
$(REDGREEN_WARNING_TESTCASES) \
|
||||
$(NULL)
|
||||
|
||||
STATIC_PASS_TESTCASES = \
|
||||
$(REDGREEN_SUCCESS_TESTCASES) \
|
||||
$(NULL)
|
||||
|
||||
include $(topsrcdir)/config/rules.mk
|
||||
|
||||
LOCAL_INCLUDES += -I$(srcdir)/.. -I..
|
||||
|
||||
check:: \
|
||||
$(STATIC_WARNING_TESTCASES:.cpp=.s-warn) \
|
||||
$(STATIC_PASS_TESTCASES:.cpp=.s-pass) \
|
||||
$(NULL)
|
||||
|
||||
# We want to compile each file and invert the result to ensure that
|
||||
# compilation failed.
|
||||
%.s-warn: %.cpp $(GLOBAL_DEPS) $(DEHYDRA_SCRIPTS)
|
||||
@printf "Compiling $(<F) to check that the static-analysis script is checking properly..."
|
||||
@if $(CCC) -Werror $(OUTOPTION)/dev/null -S $(COMPILE_CXXFLAGS) $(_VPATH_SRCS) >$(*F).errlog 2>&1; then \
|
||||
printf "fail:\nerror: compilation of $(<F) succeeded with -Werror. It shouldn't have!\n"; \
|
||||
exit 1; \
|
||||
fi
|
||||
@if $(CCC) $(OUTOPTION)/dev/null -S $(COMPILE_CXXFLAGS) $(_VPATH_SRCS) >$(*F).werrlog 2>&1; then \
|
||||
printf "ok.\n"; \
|
||||
else \
|
||||
printf "fail:\nerror: compilation of $(<F) without -Werror failed. A warning should have been issued.\n"; \
|
||||
exit 1; \
|
||||
fi
|
||||
|
||||
%.s-pass: %.cpp $(GLOBAL_DEPS) $(DEHYDRA_SCRIPTS)
|
||||
@printf "Compiling $(<F) to check that the static-analysis script is checking properly..."
|
||||
@if $(CCC) -Werror $(OUTOPTION)/dev/null -S $(COMPILE_CXXFLAGS) $(_VPATH_SRCS) >$(*F).errlog 2>&1; then \
|
||||
printf "ok.\n"; \
|
||||
else \
|
||||
printf "fail:\nerror: compilation of $(<F) failed. It shouldn't have!\n"; \
|
||||
exit 1; \
|
||||
fi
|
@ -1,11 +0,0 @@
|
||||
#include "jstypes.h"
|
||||
|
||||
struct Foo
|
||||
{
|
||||
JS_REQUIRES_STACK void *redmember;
|
||||
};
|
||||
|
||||
void* GreenFunc(Foo *f)
|
||||
{
|
||||
return f->redmember;
|
||||
}
|
@ -1,12 +0,0 @@
|
||||
#include "jstypes.h"
|
||||
|
||||
#ifndef NS_STATIC_CHECKING
|
||||
#error Running this without NS_STATIC_CHECKING is silly
|
||||
#endif
|
||||
|
||||
JS_REQUIRES_STACK void RedFunc();
|
||||
|
||||
void GreenFunc()
|
||||
{
|
||||
RedFunc();
|
||||
}
|
@ -1,8 +0,0 @@
|
||||
#include "jstypes.h"
|
||||
|
||||
typedef void (JS_REQUIRES_STACK *RedFuncPtr)();
|
||||
|
||||
void GreenFunc(RedFuncPtr f)
|
||||
{
|
||||
f();
|
||||
}
|
@ -1,14 +0,0 @@
|
||||
#include "jstypes.h"
|
||||
|
||||
JS_REQUIRES_STACK void RedFunc();
|
||||
|
||||
JS_FORCES_STACK void TurnRedFunc();
|
||||
|
||||
void GreenPartlyRedFunc(int i)
|
||||
{
|
||||
if (i) {
|
||||
TurnRedFunc();
|
||||
}
|
||||
|
||||
RedFunc();
|
||||
}
|
@ -1,12 +0,0 @@
|
||||
#include "jstypes.h"
|
||||
|
||||
JS_REQUIRES_STACK void RedFunc();
|
||||
|
||||
JS_FORCES_STACK void TurnRedFunc();
|
||||
|
||||
void GreenToRedFunc()
|
||||
{
|
||||
TurnRedFunc();
|
||||
|
||||
RedFunc();
|
||||
}
|
@ -1,12 +0,0 @@
|
||||
#include "jstypes.h"
|
||||
|
||||
void GreenFunc();
|
||||
|
||||
typedef void (JS_REQUIRES_STACK *RedFuncPtr)();
|
||||
|
||||
RedFuncPtr Test()
|
||||
{
|
||||
// assigning a green function to a red function pointer is ok
|
||||
RedFuncPtr p = GreenFunc;
|
||||
return p;
|
||||
}
|
@ -1,5 +0,0 @@
|
||||
#include "jstypes.h"
|
||||
|
||||
|
||||
// JS_REQUIRES_STACK should come before the *
|
||||
typedef void (* JS_REQUIRES_STACK RedFuncPtr)();
|
@ -1,5 +0,0 @@
|
||||
#include "jstypes.h"
|
||||
|
||||
|
||||
// JS_REQUIRES_STACK should come before the *
|
||||
typedef void (* RedFuncPtr)() JS_REQUIRES_STACK;
|
@ -1,11 +0,0 @@
|
||||
#include "jstypes.h"
|
||||
|
||||
struct Foo
|
||||
{
|
||||
JS_REQUIRES_STACK void *redmember;
|
||||
};
|
||||
|
||||
JS_REQUIRES_STACK void * RedFunc(Foo *f)
|
||||
{
|
||||
return f->redmember;
|
||||
}
|
@ -1,8 +0,0 @@
|
||||
#include "jstypes.h"
|
||||
|
||||
void GreenFunc();
|
||||
|
||||
void JS_REQUIRES_STACK RedFunc()
|
||||
{
|
||||
GreenFunc();
|
||||
}
|
@ -1,8 +0,0 @@
|
||||
#include "jstypes.h"
|
||||
|
||||
JS_REQUIRES_STACK void RedFunc1();
|
||||
|
||||
JS_REQUIRES_STACK void RedFunc2()
|
||||
{
|
||||
RedFunc1();
|
||||
}
|
@ -1,11 +0,0 @@
|
||||
#include "jstypes.h"
|
||||
|
||||
typedef void (*GreenFuncPtr)();
|
||||
typedef void (JS_REQUIRES_STACK *RedFuncPtr)();
|
||||
|
||||
void TakesAsArgument(GreenFuncPtr g);
|
||||
|
||||
void Test(RedFuncPtr p)
|
||||
{
|
||||
TakesAsArgument(p);
|
||||
}
|
@ -1,15 +0,0 @@
|
||||
#include "jstypes.h"
|
||||
|
||||
typedef void (*GreenFuncPtr)();
|
||||
typedef void (JS_REQUIRES_STACK *RedFuncPtr)();
|
||||
|
||||
struct Foo
|
||||
{
|
||||
int i;
|
||||
GreenFuncPtr p;
|
||||
};
|
||||
|
||||
void Test(Foo *foo, RedFuncPtr p)
|
||||
{
|
||||
foo->p = p;
|
||||
}
|
@ -1,8 +0,0 @@
|
||||
#include "jstypes.h"
|
||||
|
||||
void GreenFunc();
|
||||
JS_REQUIRES_STACK void RedFunc();
|
||||
|
||||
typedef void (*GreenFuncPtr)();
|
||||
|
||||
GreenFuncPtr fpa[2] = {GreenFunc, RedFunc};
|
@ -1,7 +0,0 @@
|
||||
#include "jstypes.h"
|
||||
|
||||
JS_REQUIRES_STACK void RedFunc();
|
||||
|
||||
typedef void (*GreenFuncPtr)(int);
|
||||
|
||||
GreenFuncPtr gfpa = (GreenFuncPtr) RedFunc;
|
@ -1,18 +0,0 @@
|
||||
#include "jstypes.h"
|
||||
|
||||
void GreenFunc();
|
||||
JS_REQUIRES_STACK void RedFunc();
|
||||
|
||||
typedef void (*GreenFuncPtr)();
|
||||
|
||||
struct S
|
||||
{
|
||||
int i;
|
||||
GreenFuncPtr p;
|
||||
};
|
||||
|
||||
S sa[] = {
|
||||
{ 2, GreenFunc },
|
||||
{ 1, RedFunc },
|
||||
};
|
||||
|
@ -1,12 +0,0 @@
|
||||
#include "jstypes.h"
|
||||
|
||||
JS_REQUIRES_STACK void RedFunc();
|
||||
|
||||
typedef void (*GreenFuncPtr)();
|
||||
|
||||
struct GreenStruct
|
||||
{
|
||||
GreenFuncPtr func;
|
||||
};
|
||||
|
||||
GreenStruct gs = { RedFunc };
|
@ -1,7 +0,0 @@
|
||||
#include "jstypes.h"
|
||||
|
||||
JS_REQUIRES_STACK void RedFunc();
|
||||
|
||||
typedef void (*GreenFuncPtr)();
|
||||
|
||||
GreenFuncPtr funcp = RedFunc;
|
@ -1,9 +0,0 @@
|
||||
#include "jstypes.h"
|
||||
|
||||
typedef void (*GreenFuncPtr)();
|
||||
typedef void (JS_REQUIRES_STACK *RedFuncPtr)();
|
||||
|
||||
GreenFuncPtr Test(RedFuncPtr p)
|
||||
{
|
||||
return p;
|
||||
}
|
@ -1,10 +0,0 @@
|
||||
#include "jstypes.h"
|
||||
|
||||
JS_REQUIRES_STACK void RedFunc();
|
||||
|
||||
typedef void (*GreenFuncPtr)();
|
||||
|
||||
GreenFuncPtr Test()
|
||||
{
|
||||
return RedFunc;
|
||||
}
|
Loading…
Reference in New Issue
Block a user