ParaMonte Fortran 2.0.0
Parallel Monte Carlo and Machine Learning Library
See the latest version documentation.
pm_val2real.F90
Go to the documentation of this file.
1!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
2!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
3!!!! !!!!
4!!!! ParaMonte: Parallel Monte Carlo and Machine Learning Library. !!!!
5!!!! !!!!
6!!!! Copyright (C) 2012-present, The Computational Data Science Lab !!!!
7!!!! !!!!
8!!!! This file is part of the ParaMonte library. !!!!
9!!!! !!!!
10!!!! LICENSE !!!!
11!!!! !!!!
12!!!! https://github.com/cdslaborg/paramonte/blob/main/LICENSE.md !!!!
13!!!! !!!!
14!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
15!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
16
40
41!%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
42
44
45 use pm_kind, only: SK, IK
46
47 implicit none
48
49 character(*, SK), parameter :: MODULE_NAME = "@pm_val2real"
50
51!%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
52
105 interface getReal
106
107 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
108
109#if LK5_ENABLED
110 pure elemental module function getRealDef_LK5(val) result(conversion)
111#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
112 !DEC$ ATTRIBUTES DLLEXPORT :: getRealDef_LK5
113#endif
114 use pm_kind, only: RKG => RK, LKG => LK5
115 logical(LKG) , intent(in) :: val
116 real(RKG) :: conversion
117 end function
118#endif
119
120#if LK4_ENABLED
121 pure elemental module function getRealDef_LK4(val) result(conversion)
122#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
123 !DEC$ ATTRIBUTES DLLEXPORT :: getRealDef_LK4
124#endif
125 use pm_kind, only: RKG => RK, LKG => LK4
126 logical(LKG) , intent(in) :: val
127 real(RKG) :: conversion
128 end function
129#endif
130
131#if LK3_ENABLED
132 pure elemental module function getRealDef_LK3(val) result(conversion)
133#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
134 !DEC$ ATTRIBUTES DLLEXPORT :: getRealDef_LK3
135#endif
136 use pm_kind, only: RKG => RK, LKG => LK3
137 logical(LKG) , intent(in) :: val
138 real(RKG) :: conversion
139 end function
140#endif
141
142#if LK2_ENABLED
143 pure elemental module function getRealDef_LK2(val) result(conversion)
144#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
145 !DEC$ ATTRIBUTES DLLEXPORT :: getRealDef_LK2
146#endif
147 use pm_kind, only: RKG => RK, LKG => LK2
148 logical(LKG) , intent(in) :: val
149 real(RKG) :: conversion
150 end function
151#endif
152
153#if LK1_ENABLED
154 pure elemental module function getRealDef_LK1(val) result(conversion)
155#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
156 !DEC$ ATTRIBUTES DLLEXPORT :: getRealDef_LK1
157#endif
158 use pm_kind, only: RKG => RK, LKG => LK1
159 logical(LKG) , intent(in) :: val
160 real(RKG) :: conversion
161 end function
162#endif
163
164 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
165
166#if SK5_ENABLED
167 pure elemental module function getRealDef_SK5(val) result(conversion)
168#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
169 !DEC$ ATTRIBUTES DLLEXPORT :: getRealDef_SK5
170#endif
171 use pm_kind, only: RKG => RK, SKG => SK5
172 character(*,SKG) , intent(in) :: val
173 real(RKG) :: conversion
174 end function
175#endif
176
177#if SK4_ENABLED
178 pure elemental module function getRealDef_SK4(val) result(conversion)
179#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
180 !DEC$ ATTRIBUTES DLLEXPORT :: getRealDef_SK4
181#endif
182 use pm_kind, only: RKG => RK, SKG => SK4
183 character(*,SKG) , intent(in) :: val
184 real(RKG) :: conversion
185 end function
186#endif
187
188#if SK3_ENABLED
189 pure elemental module function getRealDef_SK3(val) result(conversion)
190#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
191 !DEC$ ATTRIBUTES DLLEXPORT :: getRealDef_SK3
192#endif
193 use pm_kind, only: RKG => RK, SKG => SK3
194 character(*,SKG) , intent(in) :: val
195 real(RKG) :: conversion
196 end function
197#endif
198
199#if SK2_ENABLED
200 pure elemental module function getRealDef_SK2(val) result(conversion)
201#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
202 !DEC$ ATTRIBUTES DLLEXPORT :: getRealDef_SK2
203#endif
204 use pm_kind, only: RKG => RK, SKG => SK2
205 character(*,SKG) , intent(in) :: val
206 real(RKG) :: conversion
207 end function
208#endif
209
210#if SK1_ENABLED
211 pure elemental module function getRealDef_SK1(val) result(conversion)
212#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
213 !DEC$ ATTRIBUTES DLLEXPORT :: getRealDef_SK1
214#endif
215 use pm_kind, only: RKG => RK, SKG => SK1
216 character(*,SKG) , intent(in) :: val
217 real(RKG) :: conversion
218 end function
219#endif
220
221 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
222
223 end interface
224
225!%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
226
293 interface setReal
294
295 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
296 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
297 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
298
299 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
300
301#if RK5_ENABLED && LK5_ENABLED
302 pure elemental module subroutine setRealDef_RK5_LK5(conversion, val)
303#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
304 !DEC$ ATTRIBUTES DLLEXPORT :: setRealDef_RK5_LK5
305#endif
306 use pm_kind, only: RKG => RK5, LKG => LK5
307 real(RKG) , intent(out) :: conversion
308 logical(LKG) , intent(in) :: val
309 end subroutine
310#endif
311
312#if RK5_ENABLED && LK4_ENABLED
313 pure elemental module subroutine setRealDef_RK5_LK4(conversion, val)
314#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
315 !DEC$ ATTRIBUTES DLLEXPORT :: setRealDef_RK5_LK4
316#endif
317 use pm_kind, only: RKG => RK5, LKG => LK4
318 real(RKG) , intent(out) :: conversion
319 logical(LKG) , intent(in) :: val
320 end subroutine
321#endif
322
323#if RK5_ENABLED && LK3_ENABLED
324 pure elemental module subroutine setRealDef_RK5_LK3(conversion, val)
325#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
326 !DEC$ ATTRIBUTES DLLEXPORT :: setRealDef_RK5_LK3
327#endif
328 use pm_kind, only: RKG => RK5, LKG => LK3
329 real(RKG) , intent(out) :: conversion
330 logical(LKG) , intent(in) :: val
331 end subroutine
332#endif
333
334#if RK5_ENABLED && LK2_ENABLED
335 pure elemental module subroutine setRealDef_RK5_LK2(conversion, val)
336#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
337 !DEC$ ATTRIBUTES DLLEXPORT :: setRealDef_RK5_LK2
338#endif
339 use pm_kind, only: RKG => RK5, LKG => LK2
340 real(RKG) , intent(out) :: conversion
341 logical(LKG) , intent(in) :: val
342 end subroutine
343#endif
344
345#if RK5_ENABLED && LK1_ENABLED
346 pure elemental module subroutine setRealDef_RK5_LK1(conversion, val)
347#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
348 !DEC$ ATTRIBUTES DLLEXPORT :: setRealDef_RK5_LK1
349#endif
350 use pm_kind, only: RKG => RK5, LKG => LK1
351 real(RKG) , intent(out) :: conversion
352 logical(LKG) , intent(in) :: val
353 end subroutine
354#endif
355
356 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
357
358#if RK5_ENABLED && SK5_ENABLED
359 pure elemental module subroutine setRealDef_RK5_SK5(conversion, val)
360#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
361 !DEC$ ATTRIBUTES DLLEXPORT :: setRealDef_RK5_SK5
362#endif
363 use pm_kind, only: RKG => RK5, SKG => SK5
364 real(RKG) , intent(out) :: conversion
365 character(*,SKG) , intent(in) :: val
366 end subroutine
367#endif
368
369#if RK5_ENABLED && SK4_ENABLED
370 pure elemental module subroutine setRealDef_RK5_SK4(conversion, val)
371#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
372 !DEC$ ATTRIBUTES DLLEXPORT :: setRealDef_RK5_SK4
373#endif
374 use pm_kind, only: RKG => RK5, SKG => SK4
375 real(RKG) , intent(out) :: conversion
376 character(*,SKG) , intent(in) :: val
377 end subroutine
378#endif
379
380#if RK5_ENABLED && SK3_ENABLED
381 pure elemental module subroutine setRealDef_RK5_SK3(conversion, val)
382#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
383 !DEC$ ATTRIBUTES DLLEXPORT :: setRealDef_RK5_SK3
384#endif
385 use pm_kind, only: RKG => RK5, SKG => SK3
386 real(RKG) , intent(out) :: conversion
387 character(*,SKG) , intent(in) :: val
388 end subroutine
389#endif
390
391#if RK5_ENABLED && SK2_ENABLED
392 pure elemental module subroutine setRealDef_RK5_SK2(conversion, val)
393#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
394 !DEC$ ATTRIBUTES DLLEXPORT :: setRealDef_RK5_SK2
395#endif
396 use pm_kind, only: RKG => RK5, SKG => SK2
397 real(RKG) , intent(out) :: conversion
398 character(*,SKG) , intent(in) :: val
399 end subroutine
400#endif
401
402#if RK5_ENABLED && SK1_ENABLED
403 pure elemental module subroutine setRealDef_RK5_SK1(conversion, val)
404#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
405 !DEC$ ATTRIBUTES DLLEXPORT :: setRealDef_RK5_SK1
406#endif
407 use pm_kind, only: RKG => RK5, SKG => SK1
408 real(RKG) , intent(out) :: conversion
409 character(*,SKG) , intent(in) :: val
410 end subroutine
411#endif
412
413 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
414
415 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
416 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
417 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
418
419 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
420
421#if RK4_ENABLED && LK5_ENABLED
422 pure elemental module subroutine setRealDef_RK4_LK5(conversion, val)
423#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
424 !DEC$ ATTRIBUTES DLLEXPORT :: setRealDef_RK4_LK5
425#endif
426 use pm_kind, only: RKG => RK4, LKG => LK5
427 real(RKG) , intent(out) :: conversion
428 logical(LKG) , intent(in) :: val
429 end subroutine
430#endif
431
432#if RK4_ENABLED && LK4_ENABLED
433 pure elemental module subroutine setRealDef_RK4_LK4(conversion, val)
434#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
435 !DEC$ ATTRIBUTES DLLEXPORT :: setRealDef_RK4_LK4
436#endif
437 use pm_kind, only: RKG => RK4, LKG => LK4
438 real(RKG) , intent(out) :: conversion
439 logical(LKG) , intent(in) :: val
440 end subroutine
441#endif
442
443#if RK4_ENABLED && LK3_ENABLED
444 pure elemental module subroutine setRealDef_RK4_LK3(conversion, val)
445#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
446 !DEC$ ATTRIBUTES DLLEXPORT :: setRealDef_RK4_LK3
447#endif
448 use pm_kind, only: RKG => RK4, LKG => LK3
449 real(RKG) , intent(out) :: conversion
450 logical(LKG) , intent(in) :: val
451 end subroutine
452#endif
453
454#if RK4_ENABLED && LK2_ENABLED
455 pure elemental module subroutine setRealDef_RK4_LK2(conversion, val)
456#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
457 !DEC$ ATTRIBUTES DLLEXPORT :: setRealDef_RK4_LK2
458#endif
459 use pm_kind, only: RKG => RK4, LKG => LK2
460 real(RKG) , intent(out) :: conversion
461 logical(LKG) , intent(in) :: val
462 end subroutine
463#endif
464
465#if RK4_ENABLED && LK1_ENABLED
466 pure elemental module subroutine setRealDef_RK4_LK1(conversion, val)
467#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
468 !DEC$ ATTRIBUTES DLLEXPORT :: setRealDef_RK4_LK1
469#endif
470 use pm_kind, only: RKG => RK4, LKG => LK1
471 real(RKG) , intent(out) :: conversion
472 logical(LKG) , intent(in) :: val
473 end subroutine
474#endif
475
476 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
477
478#if RK4_ENABLED && SK5_ENABLED
479 pure elemental module subroutine setRealDef_RK4_SK5(conversion, val)
480#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
481 !DEC$ ATTRIBUTES DLLEXPORT :: setRealDef_RK4_SK5
482#endif
483 use pm_kind, only: RKG => RK4, SKG => SK5
484 real(RKG) , intent(out) :: conversion
485 character(*,SKG) , intent(in) :: val
486 end subroutine
487#endif
488
489#if RK4_ENABLED && SK4_ENABLED
490 pure elemental module subroutine setRealDef_RK4_SK4(conversion, val)
491#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
492 !DEC$ ATTRIBUTES DLLEXPORT :: setRealDef_RK4_SK4
493#endif
494 use pm_kind, only: RKG => RK4, SKG => SK4
495 real(RKG) , intent(out) :: conversion
496 character(*,SKG) , intent(in) :: val
497 end subroutine
498#endif
499
500#if RK4_ENABLED && SK3_ENABLED
501 pure elemental module subroutine setRealDef_RK4_SK3(conversion, val)
502#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
503 !DEC$ ATTRIBUTES DLLEXPORT :: setRealDef_RK4_SK3
504#endif
505 use pm_kind, only: RKG => RK4, SKG => SK3
506 real(RKG) , intent(out) :: conversion
507 character(*,SKG) , intent(in) :: val
508 end subroutine
509#endif
510
511#if RK4_ENABLED && SK2_ENABLED
512 pure elemental module subroutine setRealDef_RK4_SK2(conversion, val)
513#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
514 !DEC$ ATTRIBUTES DLLEXPORT :: setRealDef_RK4_SK2
515#endif
516 use pm_kind, only: RKG => RK4, SKG => SK2
517 real(RKG) , intent(out) :: conversion
518 character(*,SKG) , intent(in) :: val
519 end subroutine
520#endif
521
522#if RK4_ENABLED && SK1_ENABLED
523 pure elemental module subroutine setRealDef_RK4_SK1(conversion, val)
524#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
525 !DEC$ ATTRIBUTES DLLEXPORT :: setRealDef_RK4_SK1
526#endif
527 use pm_kind, only: RKG => RK4, SKG => SK1
528 real(RKG) , intent(out) :: conversion
529 character(*,SKG) , intent(in) :: val
530 end subroutine
531#endif
532
533 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
534
535 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
536 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
537 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
538
539 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
540
541#if RK3_ENABLED && LK5_ENABLED
542 pure elemental module subroutine setRealDef_RK3_LK5(conversion, val)
543#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
544 !DEC$ ATTRIBUTES DLLEXPORT :: setRealDef_RK3_LK5
545#endif
546 use pm_kind, only: RKG => RK3, LKG => LK5
547 real(RKG) , intent(out) :: conversion
548 logical(LKG) , intent(in) :: val
549 end subroutine
550#endif
551
552#if RK3_ENABLED && LK4_ENABLED
553 pure elemental module subroutine setRealDef_RK3_LK4(conversion, val)
554#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
555 !DEC$ ATTRIBUTES DLLEXPORT :: setRealDef_RK3_LK4
556#endif
557 use pm_kind, only: RKG => RK3, LKG => LK4
558 real(RKG) , intent(out) :: conversion
559 logical(LKG) , intent(in) :: val
560 end subroutine
561#endif
562
563#if RK3_ENABLED && LK3_ENABLED
564 pure elemental module subroutine setRealDef_RK3_LK3(conversion, val)
565#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
566 !DEC$ ATTRIBUTES DLLEXPORT :: setRealDef_RK3_LK3
567#endif
568 use pm_kind, only: RKG => RK3, LKG => LK3
569 real(RKG) , intent(out) :: conversion
570 logical(LKG) , intent(in) :: val
571 end subroutine
572#endif
573
574#if RK3_ENABLED && LK2_ENABLED
575 pure elemental module subroutine setRealDef_RK3_LK2(conversion, val)
576#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
577 !DEC$ ATTRIBUTES DLLEXPORT :: setRealDef_RK3_LK2
578#endif
579 use pm_kind, only: RKG => RK3, LKG => LK2
580 real(RKG) , intent(out) :: conversion
581 logical(LKG) , intent(in) :: val
582 end subroutine
583#endif
584
585#if RK3_ENABLED && LK1_ENABLED
586 pure elemental module subroutine setRealDef_RK3_LK1(conversion, val)
587#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
588 !DEC$ ATTRIBUTES DLLEXPORT :: setRealDef_RK3_LK1
589#endif
590 use pm_kind, only: RKG => RK3, LKG => LK1
591 real(RKG) , intent(out) :: conversion
592 logical(LKG) , intent(in) :: val
593 end subroutine
594#endif
595
596 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
597
598#if RK3_ENABLED && SK5_ENABLED
599 pure elemental module subroutine setRealDef_RK3_SK5(conversion, val)
600#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
601 !DEC$ ATTRIBUTES DLLEXPORT :: setRealDef_RK3_SK5
602#endif
603 use pm_kind, only: RKG => RK3, SKG => SK5
604 real(RKG) , intent(out) :: conversion
605 character(*,SKG) , intent(in) :: val
606 end subroutine
607#endif
608
609#if RK3_ENABLED && SK4_ENABLED
610 pure elemental module subroutine setRealDef_RK3_SK4(conversion, val)
611#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
612 !DEC$ ATTRIBUTES DLLEXPORT :: setRealDef_RK3_SK4
613#endif
614 use pm_kind, only: RKG => RK3, SKG => SK4
615 real(RKG) , intent(out) :: conversion
616 character(*,SKG) , intent(in) :: val
617 end subroutine
618#endif
619
620#if RK3_ENABLED && SK3_ENABLED
621 pure elemental module subroutine setRealDef_RK3_SK3(conversion, val)
622#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
623 !DEC$ ATTRIBUTES DLLEXPORT :: setRealDef_RK3_SK3
624#endif
625 use pm_kind, only: RKG => RK3, SKG => SK3
626 real(RKG) , intent(out) :: conversion
627 character(*,SKG) , intent(in) :: val
628 end subroutine
629#endif
630
631#if RK3_ENABLED && SK2_ENABLED
632 pure elemental module subroutine setRealDef_RK3_SK2(conversion, val)
633#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
634 !DEC$ ATTRIBUTES DLLEXPORT :: setRealDef_RK3_SK2
635#endif
636 use pm_kind, only: RKG => RK3, SKG => SK2
637 real(RKG) , intent(out) :: conversion
638 character(*,SKG) , intent(in) :: val
639 end subroutine
640#endif
641
642#if RK3_ENABLED && SK1_ENABLED
643 pure elemental module subroutine setRealDef_RK3_SK1(conversion, val)
644#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
645 !DEC$ ATTRIBUTES DLLEXPORT :: setRealDef_RK3_SK1
646#endif
647 use pm_kind, only: RKG => RK3, SKG => SK1
648 real(RKG) , intent(out) :: conversion
649 character(*,SKG) , intent(in) :: val
650 end subroutine
651#endif
652
653 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
654
655 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
656 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
657 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
658
659 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
660
661#if RK2_ENABLED && LK5_ENABLED
662 pure elemental module subroutine setRealDef_RK2_LK5(conversion, val)
663#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
664 !DEC$ ATTRIBUTES DLLEXPORT :: setRealDef_RK2_LK5
665#endif
666 use pm_kind, only: RKG => RK2, LKG => LK5
667 real(RKG) , intent(out) :: conversion
668 logical(LKG) , intent(in) :: val
669 end subroutine
670#endif
671
672#if RK2_ENABLED && LK4_ENABLED
673 pure elemental module subroutine setRealDef_RK2_LK4(conversion, val)
674#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
675 !DEC$ ATTRIBUTES DLLEXPORT :: setRealDef_RK2_LK4
676#endif
677 use pm_kind, only: RKG => RK2, LKG => LK4
678 real(RKG) , intent(out) :: conversion
679 logical(LKG) , intent(in) :: val
680 end subroutine
681#endif
682
683#if RK2_ENABLED && LK3_ENABLED
684 pure elemental module subroutine setRealDef_RK2_LK3(conversion, val)
685#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
686 !DEC$ ATTRIBUTES DLLEXPORT :: setRealDef_RK2_LK3
687#endif
688 use pm_kind, only: RKG => RK2, LKG => LK3
689 real(RKG) , intent(out) :: conversion
690 logical(LKG) , intent(in) :: val
691 end subroutine
692#endif
693
694#if RK2_ENABLED && LK2_ENABLED
695 pure elemental module subroutine setRealDef_RK2_LK2(conversion, val)
696#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
697 !DEC$ ATTRIBUTES DLLEXPORT :: setRealDef_RK2_LK2
698#endif
699 use pm_kind, only: RKG => RK2, LKG => LK2
700 real(RKG) , intent(out) :: conversion
701 logical(LKG) , intent(in) :: val
702 end subroutine
703#endif
704
705#if RK2_ENABLED && LK1_ENABLED
706 pure elemental module subroutine setRealDef_RK2_LK1(conversion, val)
707#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
708 !DEC$ ATTRIBUTES DLLEXPORT :: setRealDef_RK2_LK1
709#endif
710 use pm_kind, only: RKG => RK2, LKG => LK1
711 real(RKG) , intent(out) :: conversion
712 logical(LKG) , intent(in) :: val
713 end subroutine
714#endif
715
716 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
717
718#if RK2_ENABLED && SK5_ENABLED
719 pure elemental module subroutine setRealDef_RK2_SK5(conversion, val)
720#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
721 !DEC$ ATTRIBUTES DLLEXPORT :: setRealDef_RK2_SK5
722#endif
723 use pm_kind, only: RKG => RK2, SKG => SK5
724 real(RKG) , intent(out) :: conversion
725 character(*,SKG) , intent(in) :: val
726 end subroutine
727#endif
728
729#if RK2_ENABLED && SK4_ENABLED
730 pure elemental module subroutine setRealDef_RK2_SK4(conversion, val)
731#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
732 !DEC$ ATTRIBUTES DLLEXPORT :: setRealDef_RK2_SK4
733#endif
734 use pm_kind, only: RKG => RK2, SKG => SK4
735 real(RKG) , intent(out) :: conversion
736 character(*,SKG) , intent(in) :: val
737 end subroutine
738#endif
739
740#if RK2_ENABLED && SK3_ENABLED
741 pure elemental module subroutine setRealDef_RK2_SK3(conversion, val)
742#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
743 !DEC$ ATTRIBUTES DLLEXPORT :: setRealDef_RK2_SK3
744#endif
745 use pm_kind, only: RKG => RK2, SKG => SK3
746 real(RKG) , intent(out) :: conversion
747 character(*,SKG) , intent(in) :: val
748 end subroutine
749#endif
750
751#if RK2_ENABLED && SK2_ENABLED
752 pure elemental module subroutine setRealDef_RK2_SK2(conversion, val)
753#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
754 !DEC$ ATTRIBUTES DLLEXPORT :: setRealDef_RK2_SK2
755#endif
756 use pm_kind, only: RKG => RK2, SKG => SK2
757 real(RKG) , intent(out) :: conversion
758 character(*,SKG) , intent(in) :: val
759 end subroutine
760#endif
761
762#if RK2_ENABLED && SK1_ENABLED
763 pure elemental module subroutine setRealDef_RK2_SK1(conversion, val)
764#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
765 !DEC$ ATTRIBUTES DLLEXPORT :: setRealDef_RK2_SK1
766#endif
767 use pm_kind, only: RKG => RK2, SKG => SK1
768 real(RKG) , intent(out) :: conversion
769 character(*,SKG) , intent(in) :: val
770 end subroutine
771#endif
772
773 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
774
775 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
776 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
777 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
778
779 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
780
781#if RK1_ENABLED && LK5_ENABLED
782 pure elemental module subroutine setRealDef_RK1_LK5(conversion, val)
783#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
784 !DEC$ ATTRIBUTES DLLEXPORT :: setRealDef_RK1_LK5
785#endif
786 use pm_kind, only: RKG => RK1, LKG => LK5
787 real(RKG) , intent(out) :: conversion
788 logical(LKG) , intent(in) :: val
789 end subroutine
790#endif
791
792#if RK1_ENABLED && LK4_ENABLED
793 pure elemental module subroutine setRealDef_RK1_LK4(conversion, val)
794#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
795 !DEC$ ATTRIBUTES DLLEXPORT :: setRealDef_RK1_LK4
796#endif
797 use pm_kind, only: RKG => RK1, LKG => LK4
798 real(RKG) , intent(out) :: conversion
799 logical(LKG) , intent(in) :: val
800 end subroutine
801#endif
802
803#if RK1_ENABLED && LK3_ENABLED
804 pure elemental module subroutine setRealDef_RK1_LK3(conversion, val)
805#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
806 !DEC$ ATTRIBUTES DLLEXPORT :: setRealDef_RK1_LK3
807#endif
808 use pm_kind, only: RKG => RK1, LKG => LK3
809 real(RKG) , intent(out) :: conversion
810 logical(LKG) , intent(in) :: val
811 end subroutine
812#endif
813
814#if RK1_ENABLED && LK2_ENABLED
815 pure elemental module subroutine setRealDef_RK1_LK2(conversion, val)
816#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
817 !DEC$ ATTRIBUTES DLLEXPORT :: setRealDef_RK1_LK2
818#endif
819 use pm_kind, only: RKG => RK1, LKG => LK2
820 real(RKG) , intent(out) :: conversion
821 logical(LKG) , intent(in) :: val
822 end subroutine
823#endif
824
825#if RK1_ENABLED && LK1_ENABLED
826 pure elemental module subroutine setRealDef_RK1_LK1(conversion, val)
827#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
828 !DEC$ ATTRIBUTES DLLEXPORT :: setRealDef_RK1_LK1
829#endif
830 use pm_kind, only: RKG => RK1, LKG => LK1
831 real(RKG) , intent(out) :: conversion
832 logical(LKG) , intent(in) :: val
833 end subroutine
834#endif
835
836 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
837
838#if RK1_ENABLED && SK5_ENABLED
839 pure elemental module subroutine setRealDef_RK1_SK5(conversion, val)
840#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
841 !DEC$ ATTRIBUTES DLLEXPORT :: setRealDef_RK1_SK5
842#endif
843 use pm_kind, only: RKG => RK1, SKG => SK5
844 real(RKG) , intent(out) :: conversion
845 character(*,SKG) , intent(in) :: val
846 end subroutine
847#endif
848
849#if RK1_ENABLED && SK4_ENABLED
850 pure elemental module subroutine setRealDef_RK1_SK4(conversion, val)
851#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
852 !DEC$ ATTRIBUTES DLLEXPORT :: setRealDef_RK1_SK4
853#endif
854 use pm_kind, only: RKG => RK1, SKG => SK4
855 real(RKG) , intent(out) :: conversion
856 character(*,SKG) , intent(in) :: val
857 end subroutine
858#endif
859
860#if RK1_ENABLED && SK3_ENABLED
861 pure elemental module subroutine setRealDef_RK1_SK3(conversion, val)
862#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
863 !DEC$ ATTRIBUTES DLLEXPORT :: setRealDef_RK1_SK3
864#endif
865 use pm_kind, only: RKG => RK1, SKG => SK3
866 real(RKG) , intent(out) :: conversion
867 character(*,SKG) , intent(in) :: val
868 end subroutine
869#endif
870
871#if RK1_ENABLED && SK2_ENABLED
872 pure elemental module subroutine setRealDef_RK1_SK2(conversion, val)
873#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
874 !DEC$ ATTRIBUTES DLLEXPORT :: setRealDef_RK1_SK2
875#endif
876 use pm_kind, only: RKG => RK1, SKG => SK2
877 real(RKG) , intent(out) :: conversion
878 character(*,SKG) , intent(in) :: val
879 end subroutine
880#endif
881
882#if RK1_ENABLED && SK1_ENABLED
883 pure elemental module subroutine setRealDef_RK1_SK1(conversion, val)
884#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
885 !DEC$ ATTRIBUTES DLLEXPORT :: setRealDef_RK1_SK1
886#endif
887 use pm_kind, only: RKG => RK1, SKG => SK1
888 real(RKG) , intent(out) :: conversion
889 character(*,SKG) , intent(in) :: val
890 end subroutine
891#endif
892
893 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
894
895 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
896 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
897 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
898
899 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
900 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
901 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
902
903 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
904
905#if RK5_ENABLED && SK5_ENABLED
906 pure elemental module subroutine setRealErr_RK5_SK5(conversion, val, iostat)
907#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
908 !DEC$ ATTRIBUTES DLLEXPORT :: setRealErr_RK5_SK5
909#endif
910 use pm_kind, only: RKG => RK5, SKG => SK5
911 real(RKG) , intent(out) :: conversion
912 character(*,SKG) , intent(in) :: val
913 integer(IK) , intent(out) :: iostat
914 end subroutine
915#endif
916
917#if RK5_ENABLED && SK4_ENABLED
918 pure elemental module subroutine setRealErr_RK5_SK4(conversion, val, iostat)
919#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
920 !DEC$ ATTRIBUTES DLLEXPORT :: setRealErr_RK5_SK4
921#endif
922 use pm_kind, only: RKG => RK5, SKG => SK4
923 real(RKG) , intent(out) :: conversion
924 character(*,SKG) , intent(in) :: val
925 integer(IK) , intent(out) :: iostat
926 end subroutine
927#endif
928
929#if RK5_ENABLED && SK3_ENABLED
930 pure elemental module subroutine setRealErr_RK5_SK3(conversion, val, iostat)
931#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
932 !DEC$ ATTRIBUTES DLLEXPORT :: setRealErr_RK5_SK3
933#endif
934 use pm_kind, only: RKG => RK5, SKG => SK3
935 real(RKG) , intent(out) :: conversion
936 character(*,SKG) , intent(in) :: val
937 integer(IK) , intent(out) :: iostat
938 end subroutine
939#endif
940
941#if RK5_ENABLED && SK2_ENABLED
942 pure elemental module subroutine setRealErr_RK5_SK2(conversion, val, iostat)
943#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
944 !DEC$ ATTRIBUTES DLLEXPORT :: setRealErr_RK5_SK2
945#endif
946 use pm_kind, only: RKG => RK5, SKG => SK2
947 real(RKG) , intent(out) :: conversion
948 character(*,SKG) , intent(in) :: val
949 integer(IK) , intent(out) :: iostat
950 end subroutine
951#endif
952
953#if RK5_ENABLED && SK1_ENABLED
954 pure elemental module subroutine setRealErr_RK5_SK1(conversion, val, iostat)
955#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
956 !DEC$ ATTRIBUTES DLLEXPORT :: setRealErr_RK5_SK1
957#endif
958 use pm_kind, only: RKG => RK5, SKG => SK1
959 real(RKG) , intent(out) :: conversion
960 character(*,SKG) , intent(in) :: val
961 integer(IK) , intent(out) :: iostat
962 end subroutine
963#endif
964
965 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
966
967 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
968 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
969 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
970
971 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
972
973#if RK4_ENABLED && SK5_ENABLED
974 pure elemental module subroutine setRealErr_RK4_SK5(conversion, val, iostat)
975#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
976 !DEC$ ATTRIBUTES DLLEXPORT :: setRealErr_RK4_SK5
977#endif
978 use pm_kind, only: RKG => RK4, SKG => SK5
979 real(RKG) , intent(out) :: conversion
980 character(*,SKG) , intent(in) :: val
981 integer(IK) , intent(out) :: iostat
982 end subroutine
983#endif
984
985#if RK4_ENABLED && SK4_ENABLED
986 pure elemental module subroutine setRealErr_RK4_SK4(conversion, val, iostat)
987#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
988 !DEC$ ATTRIBUTES DLLEXPORT :: setRealErr_RK4_SK4
989#endif
990 use pm_kind, only: RKG => RK4, SKG => SK4
991 real(RKG) , intent(out) :: conversion
992 character(*,SKG) , intent(in) :: val
993 integer(IK) , intent(out) :: iostat
994 end subroutine
995#endif
996
997#if RK4_ENABLED && SK3_ENABLED
998 pure elemental module subroutine setRealErr_RK4_SK3(conversion, val, iostat)
999#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1000 !DEC$ ATTRIBUTES DLLEXPORT :: setRealErr_RK4_SK3
1001#endif
1002 use pm_kind, only: RKG => RK4, SKG => SK3
1003 real(RKG) , intent(out) :: conversion
1004 character(*,SKG) , intent(in) :: val
1005 integer(IK) , intent(out) :: iostat
1006 end subroutine
1007#endif
1008
1009#if RK4_ENABLED && SK2_ENABLED
1010 pure elemental module subroutine setRealErr_RK4_SK2(conversion, val, iostat)
1011#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1012 !DEC$ ATTRIBUTES DLLEXPORT :: setRealErr_RK4_SK2
1013#endif
1014 use pm_kind, only: RKG => RK4, SKG => SK2
1015 real(RKG) , intent(out) :: conversion
1016 character(*,SKG) , intent(in) :: val
1017 integer(IK) , intent(out) :: iostat
1018 end subroutine
1019#endif
1020
1021#if RK4_ENABLED && SK1_ENABLED
1022 pure elemental module subroutine setRealErr_RK4_SK1(conversion, val, iostat)
1023#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1024 !DEC$ ATTRIBUTES DLLEXPORT :: setRealErr_RK4_SK1
1025#endif
1026 use pm_kind, only: RKG => RK4, SKG => SK1
1027 real(RKG) , intent(out) :: conversion
1028 character(*,SKG) , intent(in) :: val
1029 integer(IK) , intent(out) :: iostat
1030 end subroutine
1031#endif
1032
1033 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1034
1035 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1036 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1037 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1038
1039 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1040
1041#if RK3_ENABLED && SK5_ENABLED
1042 pure elemental module subroutine setRealErr_RK3_SK5(conversion, val, iostat)
1043#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1044 !DEC$ ATTRIBUTES DLLEXPORT :: setRealErr_RK3_SK5
1045#endif
1046 use pm_kind, only: RKG => RK3, SKG => SK5
1047 real(RKG) , intent(out) :: conversion
1048 character(*,SKG) , intent(in) :: val
1049 integer(IK) , intent(out) :: iostat
1050 end subroutine
1051#endif
1052
1053#if RK3_ENABLED && SK4_ENABLED
1054 pure elemental module subroutine setRealErr_RK3_SK4(conversion, val, iostat)
1055#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1056 !DEC$ ATTRIBUTES DLLEXPORT :: setRealErr_RK3_SK4
1057#endif
1058 use pm_kind, only: RKG => RK3, SKG => SK4
1059 real(RKG) , intent(out) :: conversion
1060 character(*,SKG) , intent(in) :: val
1061 integer(IK) , intent(out) :: iostat
1062 end subroutine
1063#endif
1064
1065#if RK3_ENABLED && SK3_ENABLED
1066 pure elemental module subroutine setRealErr_RK3_SK3(conversion, val, iostat)
1067#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1068 !DEC$ ATTRIBUTES DLLEXPORT :: setRealErr_RK3_SK3
1069#endif
1070 use pm_kind, only: RKG => RK3, SKG => SK3
1071 real(RKG) , intent(out) :: conversion
1072 character(*,SKG) , intent(in) :: val
1073 integer(IK) , intent(out) :: iostat
1074 end subroutine
1075#endif
1076
1077#if RK3_ENABLED && SK2_ENABLED
1078 pure elemental module subroutine setRealErr_RK3_SK2(conversion, val, iostat)
1079#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1080 !DEC$ ATTRIBUTES DLLEXPORT :: setRealErr_RK3_SK2
1081#endif
1082 use pm_kind, only: RKG => RK3, SKG => SK2
1083 real(RKG) , intent(out) :: conversion
1084 character(*,SKG) , intent(in) :: val
1085 integer(IK) , intent(out) :: iostat
1086 end subroutine
1087#endif
1088
1089#if RK3_ENABLED && SK1_ENABLED
1090 pure elemental module subroutine setRealErr_RK3_SK1(conversion, val, iostat)
1091#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1092 !DEC$ ATTRIBUTES DLLEXPORT :: setRealErr_RK3_SK1
1093#endif
1094 use pm_kind, only: RKG => RK3, SKG => SK1
1095 real(RKG) , intent(out) :: conversion
1096 character(*,SKG) , intent(in) :: val
1097 integer(IK) , intent(out) :: iostat
1098 end subroutine
1099#endif
1100
1101 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1102
1103 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1104 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1105 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1106
1107 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1108
1109#if RK2_ENABLED && SK5_ENABLED
1110 pure elemental module subroutine setRealErr_RK2_SK5(conversion, val, iostat)
1111#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1112 !DEC$ ATTRIBUTES DLLEXPORT :: setRealErr_RK2_SK5
1113#endif
1114 use pm_kind, only: RKG => RK2, SKG => SK5
1115 real(RKG) , intent(out) :: conversion
1116 character(*,SKG) , intent(in) :: val
1117 integer(IK) , intent(out) :: iostat
1118 end subroutine
1119#endif
1120
1121#if RK2_ENABLED && SK4_ENABLED
1122 pure elemental module subroutine setRealErr_RK2_SK4(conversion, val, iostat)
1123#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1124 !DEC$ ATTRIBUTES DLLEXPORT :: setRealErr_RK2_SK4
1125#endif
1126 use pm_kind, only: RKG => RK2, SKG => SK4
1127 real(RKG) , intent(out) :: conversion
1128 character(*,SKG) , intent(in) :: val
1129 integer(IK) , intent(out) :: iostat
1130 end subroutine
1131#endif
1132
1133#if RK2_ENABLED && SK3_ENABLED
1134 pure elemental module subroutine setRealErr_RK2_SK3(conversion, val, iostat)
1135#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1136 !DEC$ ATTRIBUTES DLLEXPORT :: setRealErr_RK2_SK3
1137#endif
1138 use pm_kind, only: RKG => RK2, SKG => SK3
1139 real(RKG) , intent(out) :: conversion
1140 character(*,SKG) , intent(in) :: val
1141 integer(IK) , intent(out) :: iostat
1142 end subroutine
1143#endif
1144
1145#if RK2_ENABLED && SK2_ENABLED
1146 pure elemental module subroutine setRealErr_RK2_SK2(conversion, val, iostat)
1147#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1148 !DEC$ ATTRIBUTES DLLEXPORT :: setRealErr_RK2_SK2
1149#endif
1150 use pm_kind, only: RKG => RK2, SKG => SK2
1151 real(RKG) , intent(out) :: conversion
1152 character(*,SKG) , intent(in) :: val
1153 integer(IK) , intent(out) :: iostat
1154 end subroutine
1155#endif
1156
1157#if RK2_ENABLED && SK1_ENABLED
1158 pure elemental module subroutine setRealErr_RK2_SK1(conversion, val, iostat)
1159#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1160 !DEC$ ATTRIBUTES DLLEXPORT :: setRealErr_RK2_SK1
1161#endif
1162 use pm_kind, only: RKG => RK2, SKG => SK1
1163 real(RKG) , intent(out) :: conversion
1164 character(*,SKG) , intent(in) :: val
1165 integer(IK) , intent(out) :: iostat
1166 end subroutine
1167#endif
1168
1169 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1170
1171 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1172 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1173 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1174
1175 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1176
1177#if RK1_ENABLED && SK5_ENABLED
1178 pure elemental module subroutine setRealErr_RK1_SK5(conversion, val, iostat)
1179#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1180 !DEC$ ATTRIBUTES DLLEXPORT :: setRealErr_RK1_SK5
1181#endif
1182 use pm_kind, only: RKG => RK1, SKG => SK5
1183 real(RKG) , intent(out) :: conversion
1184 character(*,SKG) , intent(in) :: val
1185 integer(IK) , intent(out) :: iostat
1186 end subroutine
1187#endif
1188
1189#if RK1_ENABLED && SK4_ENABLED
1190 pure elemental module subroutine setRealErr_RK1_SK4(conversion, val, iostat)
1191#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1192 !DEC$ ATTRIBUTES DLLEXPORT :: setRealErr_RK1_SK4
1193#endif
1194 use pm_kind, only: RKG => RK1, SKG => SK4
1195 real(RKG) , intent(out) :: conversion
1196 character(*,SKG) , intent(in) :: val
1197 integer(IK) , intent(out) :: iostat
1198 end subroutine
1199#endif
1200
1201#if RK1_ENABLED && SK3_ENABLED
1202 pure elemental module subroutine setRealErr_RK1_SK3(conversion, val, iostat)
1203#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1204 !DEC$ ATTRIBUTES DLLEXPORT :: setRealErr_RK1_SK3
1205#endif
1206 use pm_kind, only: RKG => RK1, SKG => SK3
1207 real(RKG) , intent(out) :: conversion
1208 character(*,SKG) , intent(in) :: val
1209 integer(IK) , intent(out) :: iostat
1210 end subroutine
1211#endif
1212
1213#if RK1_ENABLED && SK2_ENABLED
1214 pure elemental module subroutine setRealErr_RK1_SK2(conversion, val, iostat)
1215#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1216 !DEC$ ATTRIBUTES DLLEXPORT :: setRealErr_RK1_SK2
1217#endif
1218 use pm_kind, only: RKG => RK1, SKG => SK2
1219 real(RKG) , intent(out) :: conversion
1220 character(*,SKG) , intent(in) :: val
1221 integer(IK) , intent(out) :: iostat
1222 end subroutine
1223#endif
1224
1225#if RK1_ENABLED && SK1_ENABLED
1226 pure elemental module subroutine setRealErr_RK1_SK1(conversion, val, iostat)
1227#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1228 !DEC$ ATTRIBUTES DLLEXPORT :: setRealErr_RK1_SK1
1229#endif
1230 use pm_kind, only: RKG => RK1, SKG => SK1
1231 real(RKG) , intent(out) :: conversion
1232 character(*,SKG) , intent(in) :: val
1233 integer(IK) , intent(out) :: iostat
1234 end subroutine
1235#endif
1236
1237 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1238
1239 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1240 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1241 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1242
1243 end interface
1244
1245!%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1246
1247end module pm_val2real ! LCOV_EXCL_LINE
Generate and return the conversion of the input value to a real value of default kind RK.
Return the conversion of the input value to a real value of arbitrary kind.
This module defines the relevant Fortran kind type-parameters frequently used in the ParaMonte librar...
Definition: pm_kind.F90:268
integer, parameter SK5
Definition: pm_kind.F90:326
integer, parameter LK1
Definition: pm_kind.F90:412
integer, parameter RK5
Definition: pm_kind.F90:478
integer, parameter RK4
Definition: pm_kind.F90:489
integer, parameter SK1
Definition: pm_kind.F90:346
integer, parameter LK5
Definition: pm_kind.F90:392
integer, parameter RK2
Definition: pm_kind.F90:511
integer, parameter RK
The default real kind in the ParaMonte library: real64 in Fortran, c_double in C-Fortran Interoperati...
Definition: pm_kind.F90:543
integer, parameter RK3
Definition: pm_kind.F90:500
integer, parameter LK2
Definition: pm_kind.F90:407
integer, parameter LK4
Definition: pm_kind.F90:397
integer, parameter SK4
Definition: pm_kind.F90:331
integer, parameter LK3
Definition: pm_kind.F90:402
integer, parameter SK2
Definition: pm_kind.F90:341
integer, parameter IK
The default integer kind in the ParaMonte library: int32 in Fortran, c_int32_t in C-Fortran Interoper...
Definition: pm_kind.F90:540
integer, parameter SK
The default character kind in the ParaMonte library: kind("a") in Fortran, c_char in C-Fortran Intero...
Definition: pm_kind.F90:539
integer, parameter RK1
Definition: pm_kind.F90:522
integer, parameter SK3
Definition: pm_kind.F90:336
This module contains procedures and types for facilitating the conversion of values of different type...
Definition: pm_val2real.F90:43
character(*, SK), parameter MODULE_NAME
Definition: pm_val2real.F90:49