English
Related papers

Related papers: C++11/14 Mutation Operators Based on Common Fault …

200 papers

In this article, we propose the definition of specific mutation operators for testing Geographic Information Systems. We describe the process for applying the operators and generating mutants, and present a case study where these mutation…

Software Engineering · Computer Science 2020-03-03 Suilen H. Alvarado

Best practices in programming need to be emphasized in a CS1 course as bad student habits persist if not reinforced well. The C++ programming language, although a relatively old language, has been regularly updated with new versions since…

Computers and Society · Computer Science 2023-11-15 Ryan E. Dougherty

Mutation testing is the state-of-the-art technique for assessing the fault detection capacity of a test suite. Unfortunately, a full mutation analysis is often prohibitively expensive. The CppCheck project for instance, demands a build time…

Software Engineering · Computer Science 2022-11-01 Sten Vercammen , Serge Demeyer , Markus Borg , Niklas Pettersson , Görel Hedin

Automated Program Repair (APR) plays a critical role in enhancing the quality and reliability of software systems. While substantial progress has been made in Java-based APR, largely facilitated by benchmarks like Defects4J, there remains a…

Software Engineering · Computer Science 2025-12-03 Jian Wang , Xiaofei Xie , Qiang Hu , Shangqing Liu , Jiongchi Yu , Jiaolong Kong , Yi Li

This paper has a practical aim. For a long time, implementations of pseudorandom number generators in standard libraries of programming languages had poor quality. The situation started to improve only recently. Up to now, a large number of…

Mathematical Software · Computer Science 2020-04-21 Migran N. Gevorkyan , Dmitry S. Kulyabov , Anastasia V. Demidova , Anna V. Korolkova

Owing to the continued use of C (and C++), spatial safety violations (e.g., buffer overflows) still constitute one of today's most dangerous and prevalent security vulnerabilities. To combat these violations, Checked C extends C with…

Programming Languages · Computer Science 2022-03-28 Aravind Machiry , John Kastner , Matt McCutchen , Aaron Eline , Kyle Headley , Michael Hicks

Writing correct concurrent code that uses atomics under the C/C++ memory model is extremely difficult. We present C11Tester, a race detector for the C/C++ memory model that can explore executions in a larger fragment of the C/C++ memory…

Programming Languages · Computer Science 2021-02-26 Weiyu Luo , Brian Demsky

Compilers are complex, and significant effort has been expended on testing them. Techniques such as random program generation and differential testing have proved highly effective and have uncovered thousands of bugs in production…

Software Engineering · Computer Science 2025-01-03 Davide Italiano , Chris Cummins

It is quite common for security testing to be delayed until after the software has been developed, but vulnerabilities may get noticed throughout the implementation phase and the earlier they are discovered, the easier and cheaper it will…

Software Engineering · Computer Science 2018-05-25 Rahma Mahmood , Qusay H. Mahmoud

Modern programming languages (e.g., Java and C#) provide features to separate error-handling code from regular code, seeking to enhance software comprehensibility and maintainability. Nevertheless, the way exception handling (EH) code is…

Software Engineering · Computer Science 2021-05-04 Luan P. Lima , Lincoln S. Rocha , Carla I. M. Bezerra , Matheus Paixao

In the last three decades, memory safety issues in system programming languages such as C or C++ have been one of the significant sources of security vulnerabilities. However, there exist only a few attempts with limited success to cope…

Software Engineering · Computer Science 2021-07-05 Felipe R. Monteiro , Mikhail R. Gadelha , Lucas C. Cordeiro

In verification-aware languages, such as Dafny, despite their critical role, specifications are as prone to error as implementations. Flaws in specifications can result in formally verified programs that deviate from the intended behavior.…

Software Engineering · Computer Science 2026-04-14 Isabel Amaral , Alexandra Mendes , José Campos

Mutation-based fuzzing is effective for uncovering compiler bugs, but designing high-quality mutators for modern languages with complex constructs (e.g., templates, macros) remains challenging. Existing methods rely heavily on manual design…

Software Engineering · Computer Science 2026-02-09 Bo Wang , Pengyang Wang , Chong Chen , Ming Deng , Jieke Shi , Qi Sun , Chengran Yang , Youfang Lin , Zhou Yang , Junjie Chen , Jun Sun , David Lo

In this paper we introduce a universal operator theoretic framework for quantum fault tolerance. This incorporates a top-down approach that implements a system-level criterion based on specification of the full system dynamics, applied at…

Mutation testing is an established fault-based testing technique. It operates by seeding faults into the programs under test and asking developers to write tests that reveal these faults. These tests have the potential to reveal a large…

Software Engineering · Computer Science 2023-01-10 Ahmed Khanfir , Renzo Degiovanni , Mike Papadakis , Yves Le Traon

Recently a framework for assisted quantum error correction was proposed in which a specific type of error is allowed to occur on auxiliary qubits, which is in contrast to standard entanglement assistance that requires noiseless auxiliary…

Quantum Physics · Physics 2014-07-31 Yuichiro Fujiwara

The focus of this paper is on automating the security testing of RESTful APIs. The testing stage of this specific kind of components is often performed manually, and this is yet considered as a long and difficult activity. This paper…

Cryptography and Security · Computer Science 2024-03-07 Sebastien Salva , Jarod Sue

Rust supports type conversions and safe Rust guarantees the security of these conversions through robust static type checking and strict ownership guidelines. However, there are instances where programmers need to use unsafe Rust for…

Cryptography and Security · Computer Science 2025-02-06 Hung-Mao Chen , Xu He , Shu Wang , Xiaokuan Zhang , Kun Sun

Modern programming languages, such as Java and C#, typically provide features that handle exceptions. These features separate error-handling code from regular source code and are proven to enhance the practice of software reliability,…

Software Engineering · Computer Science 2017-04-05 Guilherme B. de Pádua , Weiyi Shang

The correctness of complex software depends on the correctness of both the source code and the compilers that generate corresponding binary code. Compilers must do more than preserve the semantics of a single source file: they must ensure…

Programming Languages · Computer Science 2024-09-04 Luke Geeson , James Brotherston , Wilco Dijkstra , Alastair F. Donaldson , Lee Smith , Tyler Sorensen , John Wickerson