Logo
Explore Help
Register Sign In
TeamHeptaMirrors/gcc
1
0
Fork 1
You've already forked gcc
mirror of https://github.com/gcc-mirror/gcc.git synced 2026-05-06 23:25:24 +02:00
Code Issues Packages Projects Releases Wiki Activity
Files
7959d59810ec21b730305b2331ee131f87cfe889
gcc/libjava/testsuite/libjava.lang/Overflow.java

17 lines
214 B
Java
Raw Normal View History

flags.h (flag_wrapv): New flag controlling overflow semantics. * flags.h (flag_wrapv): New flag controlling overflow semantics. * toplev.c (flag_wrapv): Declare the variable with default false. (lang_independent_options): New option "-fwrapv" to set the above. * fold-const.c (extract_muldiv_1): Disable optimization of (2*x)/2 as x, when signed arithmetic overflow wraps around. (fold): Optimize "-A - B" as "-B - A" if overflow wraps around. * loop.c (basic_induction_var): Ignore BIVs that rely on undefined overflow when flag_wrapv is true. * java/lang.c (java_init_options): Prescribe wrap-around two's complement arithmetic overflow by setting flag_wrapv. * doc/invoke.texi: Document new -fwrapv command line option. * doc/c-tree.texi: Mention that the overflow semantics of NEGATE_EXPR, PLUS_EXPR, MINUS_EXPR and MULT_EXPR is dependent upon both flag_wrapv and flag_trapv. * gcc.dg/fwrapv-1.c: New test case. * gcc.dg/fwrapv-2.c: New test case. * libjava.lang/Overflow.java: New test. * libjava.lang/Overflow.out: New file. From-SVN: r67270
2003-05-31 13:23:32 +00:00
class Overflow
{
static int test(int x)
{
return (2*x)/2;
}
public static void main(String argv[])
{
int x = Integer.MAX_VALUE;
if (test(x) == x)
throw new RuntimeException ();
}
}
Reference in New Issue Copy Permalink
Powered by Gitea Version: 1.25.5 Page: 650ms Template: 49ms
English
Bahasa Indonesia Deutsch English Español Français Gaeilge Italiano Latviešu Magyar nyelv Nederlands Polski Português de Portugal Português do Brasil Suomi Svenska Türkçe Čeština Ελληνικά Български Русский Українська فارسی മലയാളം 日本語 简体中文 繁體中文(台灣) 繁體中文(香港) 한국어
Licenses API imprint