mirror of
https://github.com/nim-lang/Nim.git
synced 2025-12-28 17:04:41 +00:00
@@ -1837,9 +1837,9 @@ proc writeHeader(m: BModule) =
|
||||
|
||||
proc getCFile(m: BModule): AbsoluteFile =
|
||||
let ext =
|
||||
if m.compileToCpp: ".cpp"
|
||||
elif m.config.cmd == cmdCompileToOC or sfCompileToObjC in m.module.flags: ".m"
|
||||
else: ".c"
|
||||
if m.compileToCpp: ".nim.cpp"
|
||||
elif m.config.cmd == cmdCompileToOC or sfCompileToObjC in m.module.flags: ".nim.m"
|
||||
else: ".nim.c"
|
||||
result = changeFileExt(completeCFilePath(m.config, withPackageName(m.config, m.cfilename)), ext)
|
||||
|
||||
when false:
|
||||
|
||||
@@ -78,7 +78,7 @@ proc getCmd*(s: TSpec): string =
|
||||
result = s.cmd
|
||||
|
||||
const
|
||||
targetToExt*: array[TTarget, string] = ["c", "cpp", "m", "js"]
|
||||
targetToExt*: array[TTarget, string] = ["nim.c", "nim.cpp", "nim.m", "js"]
|
||||
targetToCmd*: array[TTarget, string] = ["c", "cpp", "objc", "js"]
|
||||
|
||||
when not declared(parseCfgBool):
|
||||
|
||||
3
tests/compilepragma/test.c
Normal file
3
tests/compilepragma/test.c
Normal file
@@ -0,0 +1,3 @@
|
||||
int foo(int a, int b) {
|
||||
return a+b;
|
||||
}
|
||||
10
tests/compilepragma/test.nim
Normal file
10
tests/compilepragma/test.nim
Normal file
@@ -0,0 +1,10 @@
|
||||
discard """
|
||||
output: '''44'''
|
||||
joinable: "false"
|
||||
"""
|
||||
|
||||
{.compile: "test.c".}
|
||||
|
||||
proc foo(a, b: cint): cint {.importc: "foo", cdecl.}
|
||||
|
||||
echo foo(40, 4)
|
||||
Reference in New Issue
Block a user