Git Product home page Git Product logo

mini-gdbstub's People

Contributors

jserv avatar rinhizakura avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar

mini-gdbstub's Issues

Use of `__VA_OPT__` function macro

C++20 introduces the __VA_OPT__ function macro, which is also available in GNU C and GNU C++. However, for older versions of clang, __VA_OPT__ might be absent. Tested on macOS Catalina:

cc -c -Iinclude -Wall -Wextra -MMD -Werror -O3 ./lib/conn.c -o /Users/apple/rv/rv32emu/build/mini-gdbstub//conn.o
./lib/conn.c:40:9: error: expected ')'
        warn("Set sockopt fail.\n");
        ^
include/utils/log.h:21:28: note: expanded from macro 'warn'
           strerror(errno) __VA_OPT__(, ) __VA_ARGS__)
                           ^
./lib/conn.c:40:9: note: to match this '('
include/utils/log.h:20:11: note: expanded from macro 'warn'
    __info(YELLOW "ERRNO: %s\n" NC format, \
          ^
./lib/conn.c:49:9: error: expected ')'
        warn("Bind fail.\n");
        ^

We shall avoid such new features.

Reference: https://gcc.gnu.org/onlinedocs/cpp/Variadic-Macros.html

The link of the introduction is dead

Hi,

Thanks for your contribution, the tutorial is helpful for me. ๐Ÿ‘

I read the introduction two weeks ago. However, that is dead now.

https://www.chciken.com/tlmboy/2022/04/03/gdb-z80.html

Will you publish the introduction in any other place? Thanks a lot!

Build failure on macOS

While attempting to build latest rv32emu + mini-gdbstub on macOS Monterey, I got the following messages:

In file included from ./lib/gdbstub.c:7:
include/gdb_signal.h:1:9: error: 'GDB_SIGNAL' is used as a header guard here, followed by #define of a different macro [-Werror,-Wheader-guard]
#ifndef GDB_SIGNAL
        ^~~~~~~~~~
include/gdb_signal.h:2:9: note: 'GDG_SIGNAL' is defined here; did you mean 'GDB_SIGNAL'?
#define GDG_SIGNAL
        ^~~~~~~~~~
        GDB_SIGNAL
1 error generated.

Replacing the use of GDB_SIGNAL with #pragma once would pass.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.